1.7.10.1. graph

terraform graph 命令可以用来生成代码描述的基础设施或是执行计划的可视化图形。它的输出是 DOT 格式),可以使用 GraphViz 来生成图片,也有许多网络服务可以读取这种格式。

1.7.10.1.1. 用法

terraform graph [options]

默认情况下,该命令输出一个简化图,仅描述配置中资源(resourcedata 块)的依赖顺序。

-type=... 参数可以在一组具有更多细节的其他图类型中进行选择,但作为代价,它也暴露了 Terraform 语言运行时的一些实现细节。

参数:

  • -plan=tfplan:针对指定计划文件生成图。使用该参数暗示着 -type=apply
  • -draw-cycles:用彩色的边高亮图中的环,这可以帮助我们分析代码中的环错误(Terraform 禁止环状依赖)。该参数只有在通过 -type=... 参数指定了操作类型时有效。
  • -type=...:生成图表的类型,默认生成只包含 resource 的简化图。可以是:planplan-destroy 或是 apply

1.7.10.1.2. 创建图片文件

terraform graph 命令输出的是 DOT 格式)的数据,可以轻松地使用 GraphViz 转换为图形文件:

$ terraform graph -type=plan | dot -Tpng >graph.png

输出的图片大概是这样的:

生成的依赖图
图 1.7.10/1 - 生成的依赖图

1.7.10.1.3. 如何安装GraphViz

安装GraphViz也很简单,对于Ubuntu:

$ sudo apt install graphviz

对于CentOS:

$ sudo dnf install graphviz

对于Windows,也可以使用choco:

> choco install graphviz

对于Mac用户:

$ brew install graphviz

results matching ""

    No results matching ""