Diadem扩展了Idem的功能,专注于跨多云环境组织、参数化和可视化SLS文件。
项目描述
Diadem扩展idem以通过组织、参数化和可视化SLS数据来简化云资源管理。
关于
基于POP构建的diadem与Idem集成,提供用户友好的cli界面来处理复杂的云基础设施。它通过“编译”和“查看”子命令扩展了idem,使idem能够根据资源之间复杂关系进行分析来执行任务。例如
绘制资源之间的关系图
识别孤儿
将资源之间的相似性抽象为参数
在资源之间创建arg-bind关系
这些功能中的每一个都使您能够轻松地从零开始使用idem高效地管理云资源。
什么是POP?
此项目使用pop构建,pop是基于Python的插件面向编程(POP)的实现。POP旨在以新的方式结合计算机历史的观念和智慧来解决现代计算问题。
更多信息
入门
先决条件
Python 3.10+
git (如果从源代码安装,或为项目做出贡献)
安装
如果您想使用diadem,您可以通过从PyPI或源代码安装它。
从 PyPI 安装
仅使用“编译”功能安装 diadem
pip install diadem
安装 diadem 并使用 matplotlib 进行数据可视化,结合 matplotlib 和 networkx
pip install diadem[visualize]
从源码安装
# clone repo
git clone git@gitlab.com:Akm0d/diadem.git
cd diadem
# Setup venv
python3 -m virtualenv .venv
source .venv/bin/activate
pip install -e .
用法
Diadem 简化了云资源的管理。使用它来列举资源、组织 SLS 文件和可视化云基础设施,确保高效安全的云操作。
示例
使用 idem describe 列举云资源
idem describe "aws.*" > aws.sls
idem describe "gitlab.*" > gitlab.sls
仅在资源之间创建 argbind 关系
idem compile aws.sls gitlab.sls --match-strategy=pass
通过创建 arg-bind 关系以及将资源之间的抽象相似性转换为参数来参数化 sls 文件
idem compile aws.sls gitlab.sls
通过创建 arg-bind 关系,将资源之间的抽象相似性转换为参数,并将输出组织到文件树中的逻辑组中,来参数化 sls 文件
idem compile aws.sls gitlab.sls --tree=/srv/idem
使用 matplotlib 可视化资源之间的关系
idem view /srv/idem/state --params /srv/idem/param
在新建的 sls/param 树上运行 idem state
idem state /srv/idem/state --params /srv/idem/param
识别孤立资源并为它们构建缺失状态
idem view /srv/idem/state --params /srv/idem/param > orphans.sls
显示资源之间关系图(需要安装带有“可视化”附加组件的 diadem)(需要安装带有“可视化”附加组件的 diadem)
idem view /srv/idem/state --params /srv/idem/param --show
路线图
参考开源问题获取提议的功能列表(以及已知问题)。
鸣谢
Img Shields 使存储库徽章的制作变得容易。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。