Tools to Visualize your Terraform plan
It all started with this code sample with Terraform scripts For starters, Terraform is open-source software, developed by HashiCorp, that enables predictable...
Join the DZone community and get the full member experience.
Join For FreeIt all started with this code sample with Terraform scripts
For starters, Terraform is open-source software, developed by HashiCorp, that enables predictable and consistent provisioning of IBM Cloud platform, classic infrastructure, and VPC infrastructure resources by using a high-level scripting language. You can use Terraform to automate your IBM Cloud resource provisioning, rapidly build complex, multi-tier cloud environments, and enable Infrastructure as Code (IaC).
Think of a scenario in which you are revisiting your own Terraform scripts and scratching your head to understand what resources it provisions.
To simplify this, there is an in-built Terraform command
terraform graph
The terraform graph command is used to generate a visual representation of either a configuration or execution plan. The output is in the DOT format, which can be used by GraphViz to generate charts.
You can use the command to generate a .png
file from the dot output
If there are too many resources, then the graph will look something like this.
As you can see, readability is a challenge and also there are extra nodes in the graph that are not required. So, you need better tools to visualize your Terraform plan.
Blast radius
Blast Radius is a tool for reasoning about Terraform dependency graphs through interactive visualizations. Awesome tool but couldn't make it work with the newer versions of Terraform. As per the Dockerfile in the respective repository and the comments on the issues, the last Terraform version that worked fine was 0.12.x
.
Terraform Visual
Terraform Visual is a simple but powerful tool to help you understand your Terraform plan easily.
Click here to see the large image
Needs additional steps like generating
plan.dot
file and thenplan.json
file. but, a pretty good tool for any version of Terraform.
Inframap
Inframap reads your tfstate
or HCL to generate a graph specific for each provider, showing only the resources that are most important/relevant.
If you know any other visualization tools, please drop in a comment below and would love to give it a try.
Published at DZone with permission of Vidyasagar (Sarath Chandra) Machupalli FBCS, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.
Comments