AWS Insights

Two billion downloads of Terraform AWS Provider shows value of IaC for infrastructure management

Event highlight: If you’re in the area, visit AWS at HashiConf, HashiCorp’s flagship user conference, in San Francisco, California, on October 10 – 12, 2023.

HashiCorp Terraform is an infrastructure as code (IaC) tool that lets you define both cloud and on-premises resources in human-readable configuration files that you can version, reuse, and share. You can then use a consistent workflow to provision and manage all of your infrastructure throughout its lifecycle. Terraform can manage your low-level components like compute, storage, and networking resources, as well as high-level components like DNS entries and SaaS features. Terraform creates and manages resources on cloud platforms and other services through their application programming interfaces (APIs), also known as providers.

Today, we’re sharing the remarkable milestone of 2 billion downloads of the HashiCorp Terraform AWS Provider. Developers use the Terraform AWS Provider to interact with the many resources supported by AWS.

While two billion downloads represents a major milestone, it also celebrates the collective success of AWS builders and the essential role Terraform plays in shaping the future of infrastructure management. It underscores the growing recognition of the need for standardized IaC solutions as organizations scale. HashiCorp Terraform, which has editions for community, enterprise and cloud (TFC), plays a pivotal role in empowering application teams to compose, reuse, and collaborate effectively on infrastructure provisioning, ultimately accelerating the build and deployment process.

As the Terraform community embraced IaC, numerous large enterprises recognized its potential for achieving robust infrastructure automation. Today, Terraform stands as one of the world’s most widely adopted IaC tools, with thousands of commercial customers, over 3,000 Terraform providers, and an extensive library of 12,000 modules.

Before the availability of Terraform Enterprise, a large number of cloud ops processes were manual. Teams would test plans, fix issues, pull up the command-line interface (CLI), authenticate with AWS for remote state access, and apply changes—all by hand. Terraform Enterprise automated all these often repetitive and tedious processes.

“With Terraform Enterprise, I just click the button, and it does all the legwork for me,” says Joe Brinkman, Engineering Manager, Cloud Operations at Earnin. Now, the Earnin cloud ops team can write Terraform configurations for Terraform Enterprise with just a few lines of code and provision workspaces in minutes, and it has visibility into all source code. As a result, provisioning and other operations processes are now 5 times faster, representing a 400 percent rate of acceleration.

Since its initial release in 2014 with Terraform version 0.1, HashiCorp has continuously provided out-of-the-box support for AWS resources. AWS and HashiCorp’s collaboration extends across several key initiatives, including:

AWS Cloud Control Provider: AWS Cloud Control Provider is built around the AWS Cloud Control API and is designed to bring new services to Terraform faster. This provider supports hundreds of AWS resources, with more support being added as AWS service teams adopt the Cloud Control API standard. AWS Cloud Control Provider is currently in technical preview.

AWS Service Catalog: HashiCorp and AWS have announced AWS Service Catalog support for Terraform Cloud. You can now take advantage of the advanced governance and visibility of your Terraform workloads by linking your Service Catalog product provisioning to HashiCorp’s Terraform Cloud.

CDK for Terraform: Over the past two years, HashiCorp and the AWS Cloud Development Kit (AWS CDK) team partnered to develop and launch Cloud Development Kit for Terraform (CDKTF). CDKTF is an open-source tool that lets you write Terraform configurations in your choice of scripting languages like C#, Python, TypeScript, Java, or Go. With CDKTF, you can set up your IaC without context switching from your familiar programming language, using the same tooling and syntax to provision infrastructure resources that you use to define the application business logic.

AWS SAM Support for HashiCorp Terraform: AWS SAM and Terraform provide frameworks for building applications using IaC. With SAM CLI Terraform integration, you can use AWS SAM CLI to test and debug applications defined using Terraform configuration.

Learn more

— Irshad