diagrams:让您可以用 Python 代码绘制云系统架构

liftword7个月前 (12-12)技术文章71


diagrams即代码

diagrams让您可以用 Python 代码绘制云系统架构。它的诞生是为了在没有任何设计工具的情况下对新的系统架构设计进行原型设计。您还可以描述或可视化现有的系统架构。目前, Diagrams支持的主要提供商包括:AWS、Azure、GCP、Kubernetes、等...它还支持节点、以及主要框架和语言。Alibaba CloudOracle CloudOn-PremiseSaaSProgramming

图即代码还允许您跟踪任何版本控制系统中的架构图更改。

注意:它不控制任何实际的云资源,也不生成云形成或地形代码。仅用于绘制云系统架构图。

入门

它需要Python 3.6或更高版本,请先检查您的 Python 版本。

它使用Graphviz来渲染图表,因此需要安装 Graphviz才能使用diagrams。安装 graphviz (或已经安装)后,安装diagrams。

brew install graphviz如果您使用的是Homebrew,macOS 用户可以通过下载 Graphviz 。

# using pip (pip3)
$ pip install diagrams

# using pipenv
$ pipenv install diagrams

# using poetry
$ poetry add diagrams

您可以从快速启动开始。查看指南了解更多详细信息,您可以在此处找到所有可用节点列表。

例子

事件处理

有状态架构

高级网络服务

您可以在示例页面上找到所有示例。

贡献

要为图表做出贡献,请查看贡献指南。

如果您使用图表,请告诉我!我会将您添加到展示页面。(我在做这个工作!) :)

谁使用它?

GitPitch是适合技术会议、培训、开发者倡导者和教育工作者的完美幻灯片解决方案。图表现在作为专用的云图 Markdown 小部件提供,因此您可以直接在任何幻灯片上使用图表进行会议、聚会和培训。

Cloudiscovery可帮助您分析云(AWS/GCP/Azure/阿里巴巴/IBM)帐户中的资源。它允许您基于此图库创建分析的云资源图的图表,以便您可以使用 Cloudiscovery 绘制现有的云基础设施。

Airflow Charts是一个 Airflow 插件,旨在通过图表轻松可视化来自 AWS、GCP、Azure 等提供商的服务级别的 Airflow DAG。

其他语言

  • 如果您熟悉 Go,也可以使用go-diagrams。

项目地址:

https://github.com/mingrammer/diagrams

相关文章

Python中用于Excel处理的库都有哪些?简单介绍一下?

在进行数据分析和数据挖掘的时候,不可避免的会用到Excel表格来存储处理数据,那么在Python中也提供了很多的Excel表格处理库,下面我们我们就来详细介绍一下这些处理库。pandaspandas库...

python异步编程之asyncio(百万并发)

前言:python由于GIL(全局锁)的存在,不能发挥多核的优势,其性能一直饱受诟病。然而在IO密集型的网络编程里,异步处理比同步处理能提升成百上千倍的效率,弥补了python性能方面的短板,如最新的...