千家信息网

Kubernetes中如何通过python api访问IPFS服务

发表于:2025-01-26 作者:千家信息网编辑
千家信息网最后更新 2025年01月26日,本篇文章给大家分享的是有关Kubernetes中如何通过python api访问IPFS服务,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧
千家信息网最后更新 2025年01月26日Kubernetes中如何通过python api访问IPFS服务

本篇文章给大家分享的是有关Kubernetes中如何通过python api访问IPFS服务,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

IPFS是一个分布式的全球一致性(参见 HT与分布式一致性 )文件系统,结合了BT、P2P、DHT等的优势。之前的帖子中,介绍了将IPFS部署到Kubernetes集群,以及通过portforward开放IPFS服务的方法。目前IPFS已经提供了python api,可以访问集群中的IPFS服务。

基础服务准备

  • 通过Helm在Kubernetes集群上安装IPFS。

  • IPFS在Kubernetes部署的服务开放。

  • IPFS服务的Python访问。

  • IPFS的Python API参考手册。

安装ipfsapi库

pip install ipfsapi

访问IPFS服务

# 引用ipfsapiimport 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])

输出如下:

{'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支持的各种信息,包括添加文件、下载文件等等。

调试完成后,可以写入脚本,进一步放到定期任务中调度执行。

以上就是Kubernetes中如何通过python api访问IPFS服务,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。

0