Choosing the Right Infrastructure as Code (IaC) Tool – A Flow Chart
Which Infrastructure as Code (IaC) Tool Should Your Organization Use?
So your organization has decided to get started with Infrastructure as Code (IaC), but you have not yet decided on which tool to use. There are several leading options to consider:
- Terraform (Multi-cloud, Open-Source)
- Pulumi (Multi-cloud, Open-Source)
- AWS CloudFormation (AWS Only, Proprietary)
- Azure Resource Manager (ARM) Templates (Azure Only, Proprietary)
We built a flow chart to make the choice as easy as possible. Of course, you should do your own research that is unique to your organizations specific needs but the broader takeaways from the flowchart are likely as follows:
- Unless you are a ride-or-die AWS or Azure Organization, and have no desire to ever use another cloud provider or cloud service, and don’t see any benefit to a having a large open-source community around the tool you select, your organization should not consider CloudFormation or Azure ARM Templates.
- With the General Availability of the Terraform CDK, there is much less of an advantage to using Pulumi since it also comes with a significantly smaller community and far fewer supported providers.
- Even given the Pros and Cons of different IaC tools, the only choice you absolutely should not make is not using an IaC tool to control your cloud infrastructure.
dragondrop.cloud’s mission is to automate developer best practices while working with Infrastructure as Code. Our flagship OSS product, cloud-concierge, allows developers to codify their cloud, detect drift, estimate cloud costs and security risks, and more — while delivering the results via a Pull Request. For enterprises running cloud-concierge at scale, we provide a management platform. To learn more, schedule a demo or get started today!
Learn More About Terraform
“Everything as Code” Definition Everything as Code is a philosophy for managing IT infrastructure where all components of infrastructure are created, managed, and deleted using code. This applies to container definitions, cloud infrastructure, on-premise server...
What is driftctl? driftctl is an OSS CLI tool that enables users to identify Terraform drift as well as unmanaged resources within a cloud environment. It is a quite popular tool and has collected over two thousand stars on GitHub. Why Would We Want a Replacement?...
Background On August 10, HashiCorp changed the license to their previously “Open Source” projects to a Business Source License (BSL), making them now “source available” for all future releases. We discusssed in detail reasons and motivations for this change here. On...