solusvm客户端api的轻量级包装器。
beam的Python项目详细描述
solusvm客户端api的轻量级包装器。
功能
- 查询主机的内存、带宽、IP地址和存储使用情况。
- 启动、重新启动和关闭计算机。
- 可配置以与任何solusvm提供程序一起使用。
- 命令行客户机和直观的python模块,用于您自己的脚本。
设置
- 运行pip install beam下载模块。
- 按如下所示创建.beam.ini库存文件。
库存
库存文件保存有关托管提供商和主机的信息, 因此beam知道如何联系相关的api端点以及 使用。下面是一个示例文件:
[special:vendors] ramnode = https://vpscp.ramnode.com vendor2 = https://vendor2-panel.com default = ramnode [nyc-1] key = nyc-1_host_key hash = nyc-1_host_hash [ams-1] key = ams-1_host_key hash = ams-1_host_hash vendor = vendor2
这个文件定义了两个主机,nyc-1,由ramnode托管,和ams-1, 由Fliphost托管。最上面是一个特殊供应商的供应商名称 节(假定所有其他节表示主机)。格式映射 solusvm api的基本终结点的供应商名称。那default 指令指示每个主机的隐式供应商,并且必须指定 定义了多个供应商。
每个主机都有自己的部分。正确的key和hash值可以是 从供应商使用的solusvm控制面板获取。如果主机不是 由默认供应商提供,vendor指令指定正确的 一个。
用法
beam提供了一个python库来对主机进行编程访问,并且 一个简单的cli,它用几行代码包装它。
cli
cli客户端可用于查找有关单个主机的信息。
$ beam --help usage: beam [-h] [-V] (-A {boot,reboot,shutdown} | -a ATTRIBUTES [ATTRIBUTES ...]) [host] A lightweight wrapper for the SolusVM client API. positional arguments: host the identifier of the host whose information to retrieve optional arguments: -h, --help show this help message and exit -V, --version show program's version number and exit -A {boot,reboot,shutdown}, --action {boot,reboot,shutdown} an action to execute against the host -a ATTRIBUTES [ATTRIBUTES ...], --attributes ATTRIBUTES [ATTRIBUTES ...] one or more attributes of the host to retrieve $ beam -a bandwidth.free_percentage 0.4983459835 $ beam nyc-1 -a primary_ip 2604:180:2:32b::498b $ beam ams-1 -a is_online memory.used_bytes True 34578234983 $ beam nyc-1 -A shutdown OK
库
importbeam# shutdown a specific hosthost=beam.host('nyc-1')# name, key or hashifhost.is_online:host.shutdown()# boot all offline hosts[host.boot()forhostinbeam.hosts()ifnothost.is_online]# get a list of hosts using above 90% of their memoryhosts=[hostforhostinbeam.hosts()ifhost.memory.used_percentage>.9]# get a list of hosts with less than 10 GiB of storage lefthosts=[hostforhostinbeam.hosts()ifhost.storage.free_bytes<1024**3*10]
路线图
- 生成文档。
- 将单元测试覆盖率提高到100%,并实现一些集成测试。
词源学
虽然“索罗斯”的意思是孤独,但这有点令人沮丧。索罗斯也会变戏法 太阳的图像给我。太阳beams向下-其名称在 皮皮-原来是这样。