Longhorn 云原生容器分布式存储 - Python Client
内容来源于官方 Longhorn 1.1.2
英文技术手册。
系列
- Longhorn 是什么?
- Longhorn 云原生容器分布式存储 - 设计架构和概念
- Longhorn 云原生容器分布式存储 - 部署篇
- Longhorn 云原生容器分布式存储 - 券和节点
- Longhorn 云原生容器分布式存储 - K8S 资源配置示例
- Longhorn 云原生容器分布式存储 - 监控(Prometheus)
- Longhorn 云原生容器分布式存储 - 备份与恢复
- Longhorn 云原生容器分布式存储 - 高可用
- Longhorn 云原生容器分布式存储 - 支持 ReadWriteMany (RWX) 工作负载
- Longhorn 云原生容器分布式存储 - 定制部署默认设置
- Longhorn云原生容器分布式存储 - Air Gap 安装
目前,您可以使用 Longhorn UI
操作 Longhorn
。同时,您可以使用 Python
访问 Longhorn API
,如下所示。
获取
Longhorn API
端点与
Longhorn
通信的一种方式是通过longhorn-frontend
service。如果您在安装
Longhorn
的同一集群中运行自动化/脚本(automation/scripting
)工具,请连接到端点http://longhorn-frontend.longhorn-system/v1
如果您在本地机器上运行自动化/脚本(
automation/scripting
)工具,请使用kubectl port-forward
将longhorn-frontend
service
转发到localhost
:kubectl port-forward services/longhorn-frontend 8080:http -n longhorn-system
并连接到端点
http://localhost:8080/v1
使用
Python Client
将 longhorn.py 文件(包含
Python client
)导入到以下Python
脚本中,并从API
端点创建一个client
:https://github.com/longhorn/longhorn-tests/blob/master/manager/integration/tests/longhorn.py
import longhorn # If automation/scripting tool is inside the same cluster in which Longhorn is installed
longhorn_url = 'http://longhorn-frontend.longhorn-system/v1'
# If forwarding `longhorn-frontend` service to localhost
longhorn_url = 'http://localhost:8080/v1' client = longhorn.Client(url=longhorn_url) # Volume operations
# List all volumes
volumes = client.list_volume()
# Get volume by NAME/ID
testvol1 = client.by_id_volume(id="testvol1")
# Attach TESTVOL1
testvol1 = testvol1.attach(hostId="worker-1")
# Detach TESTVOL1
testvol1.detach()
# Create a snapshot of TESTVOL1 with NAME
snapshot1 = testvol1.snapshotCreate(name="snapshot1")
# Create a backup from a snapshot NAME
testvol1.snapshotBackup(name=snapshot1.name)
# Update the number of replicas of TESTVOL1
testvol1.updateReplicaCount(replicaCount=2)
# Find more examples in Longhorn integration tests https://github.com/longhorn/longhorn-tests/tree/master/manager/integration/tests # Node operations
# List all nodes
nodes = client.list_node()
# Get node by NAME/ID
node1 = client.by_id_node(id="worker-1")
# Disable scheduling for NODE1
client.update(node1, allowScheduling=False)
# Enable scheduling for NODE1
client.update(node1, allowScheduling=True)
# Find more examples in Longhorn integration tests https://github.com/longhorn/longhorn-tests/tree/master/manager/integration/tests # Setting operations
# List all settings
settings = client.list_setting()
# Get setting by NAME/ID
backupTargetsetting = client.by_id_setting(id="backup-target")
# Update a setting
backupTargetsetting = client.update(backupTargetsetting, value="s3://backupbucket@us-east-1/")
# Find more examples in Longhorn integration tests https://github.com/longhorn/longhorn-tests/tree/master/manager/integration/tests
公众号:黑客下午茶
Longhorn 云原生容器分布式存储 - Python Client的更多相关文章
- Longhorn 云原生容器分布式存储 - 故障排除指南
内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 云原生容器分布式存储 - 设计架构和概念 Longhorn 云原生容器分布式存储 - ...
- Longhorn 云原生容器分布式存储 - Air Gap 安装
内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 云原生容器分布式存储 - 设计架构和概念 Longhorn 云原生容器分布式存储 - ...
- Longhorn,企业级云原生容器分布式存储 - 定制默认设置
内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 云原生容器分布式存储 - 设计架构和概念 Longhorn 云原生容器分布式存储 - ...
- Longhorn,企业级云原生容器分布式存储 - 备份与恢复
内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 企业级云原生容器分布式存储解决方案设计架构和概念 Longhorn 企业级云原生容器分 ...
- Longhorn,企业级云原生容器分布式存储 - K8S 资源配置示例
内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 企业级云原生容器分布式存储解决方案设计架构和概念 Longhorn 企业级云原生容器分 ...
- Longhorn,企业级云原生容器分布式存储 - 监控(Prometheus+AlertManager+Grafana)
内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 企业级云原生容器分布式存储解决方案设计架构和概念 Longhorn 企业级云原生容器分 ...
- Longhorn,企业级云原生容器分布式存储 - 高可用
内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 企业级云原生容器分布式存储解决方案设计架构和概念 Longhorn 企业级云原生容器分 ...
- Longhorn,企业级云原生容器分布式存储 - 支持 ReadWriteMany (RWX) 工作负载(实验性功能)
内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 企业级云原生容器分布式存储解决方案设计架构和概念 Longhorn 企业级云原生容器分 ...
- Longhorn 企业级云原生容器存储解决方案-部署篇
内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 云原生分布式块存储解决方案设计架构和概念 安装 Longhorn 可以通过多种方式安装 ...
随机推荐
- 如何移除本地文件夹与Git的连接
1.在需要移除的文件夹下打开Git Bash 2.在命令行中输入如下语句 find . -name ".git" | xargs rm -Rf
- vsCode开发flutter项目
Visual Studio Code 安装: 下载链接:https://code.visualstudio.com/ 下载完成后根据步骤自行安装. 使用vsCode开发flutter项目需要部 ...
- 无法解析插件 org.apache.maven.plugins:maven-clean-plugin:2.5
在Idea创建项目中,出现7出错误,告诉我 无法解析插件 org.apache.maven.plugins:maven-clean-plugin:2.5 但是在maven设置中都一致 后来加了几个镜像 ...
- Git8.3k星,十万字Android主流开源框架源码解析,必须盘
为什么读源码 很多人一定和我一样的感受:源码在工作中有用吗?用处大吗?很长一段时间内我也有这样的疑问,认为哪些有事没事扯源码的人就是在装,只是为了提高他们的逼格而已. 那为什么我还要读源码呢?一刚开始 ...
- 长亭xray被动扫描
为了实现点到哪里扫到哪里,用长亭xray配合burp suite插件 插件名为Passive Scan Client https://github.com/lilifengcode/Burpsuite ...
- hdmi 随笔
从图片来看,每张图片开始传输的是45像素的垂直同步, 1.控制数据贯穿所有时间,没个不是控制数据的传输都被控制数据包围.控制数据还要通过控制位指示,下一个数据是数据岛还是视频信号. 2.terc4 全 ...
- efcore分表下"完美"实现
ShardingCore 如何呈现"完美"分表 这篇文章是我针对efcore的分表的简单介绍,如果您有以下需求那么可以自己选择是否使用本框架,本框架将一直持续更新下去,并且免费开源 ...
- uniapp scroll-view 组件横向滑动失效(ios问题出的最多)
注意事项(做好以下几点就很难出问题): 一.scroll-view组件必须有固定高度,不可出现高度坍塌或让高度消失等现象;(重中之重) 二.一般问题出的多的就是在nvue环境下去使用的scroll-v ...
- SQL 练习37
检索至少选修两门课程的学生学号 SELECT Student.SId,Student.Sname,选课数 from Student, (SELECT sid,COUNT(cid) 选课数 from s ...
- 题解 e
传送门 第一眼看貌似可以树剖,然而那个绝对值不知怎么维护 求最小连通块我只会\(k^2\) 主席树貌似可以用来查询区间内与某个数差的绝对值的最小值? 确实,每次查大于等于该数的最小数和小于等于该数的最 ...