IPFS是一個分佈式的全球一致性(參見 HT與分佈式一致性 )文件系統,結合了BT、P2P、DHT等的優點。以前的帖子中,介紹了將IPFS部署到Kubernetes集羣,以及經過portforward開放IPFS服務的方法。目前IPFS已經提供了python api,能夠訪問集羣中的IPFS服務。python
pip install ipfsapi
# 引用ipfsapi import ipfsapi # 鏈接到IPFS管理服務 # 若是是集羣外運行,但與集羣在同一臺主機。 # api爲返回的客戶端對象,能夠使用help(api)查看其接口。 # api = ipfsapi.connect('127.0.0.1', 5001) # 若是是在集羣的pod運行,使用內部域名訪問服務。 # 我在Kubernetes中的Jupyter上運行,鏈接成功。 api = ipfsapi.connect('ipfs2-ipfs.ipfs2', 5001) # 獲取peers的列表。 # api.swarm_peers()返回Dict對象,Key爲Peers,value爲列表。 PeerList = api.swarm_peers()["Peers"] # 顯示Peers的總數,會根據網絡隨時變化。 len(PeerList) # 顯示所有Peer的列表。 print(PeerList)
顯示部分Peers的信息:網絡
for i in range(3): print(PeerList[i])
輸出以下:tcp
{'Addr': '/ip4/1.24.210.4/tcp/4001', 'Peer': 'QmZgbW9VNA4EJoxuReUmXZNszHqurheeqNQvZ671kdbYLg', 'Latency': '', 'Muxer': '', 'Streams': None} {'Addr': '/ip4/100.34.210.63/tcp/39733', 'Peer': 'QmPRa5sovWPGhSDuEGU2cgfws5ra91bD89xTWmArJxickp', 'Latency': '', 'Muxer': '', 'Streams': None} {'Addr': '/ip4/100.38.242.117/tcp/10238', 'Peer': 'QmXdgmKZYNmybYY33J7UFTuqFdvndEbWY2PdDcHuteqvyj', 'Latency': '', 'Muxer': '', 'Streams': None}
能夠經過上面的方式查看IPFS支持的各類信息,包括添加文件、下載文件等等。分佈式
調試完成後,能夠寫入腳本,進一步放到按期任務中調度執行(參見 ubernetes Jobs - 運行處理任務指南 )。spa