Terraform (software)
Terraform (software)
Terraform is an infrastructure as code (IaC) software tool developed by HashiCorp. It allows users to define and provision data center infrastructure using a declarative configuration language known as HashiCorp Configuration Language (HCL) or optionally JSON. Terraform manages external resources such as public cloud infrastructure, private cloud, and on‑premises services by codifying the desired state of resources and automatically applying changes to reach that state.
Terraform was first released in 2014 and quickly became a central tool in the DevOps ecosystem. It supports a wide range of service providers through a plugin‑based provider architecture, enabling users to manage resources across multiple clouds and services with a single workflow.
Features
Terraform uses a state file to track the current state of managed infrastructure and compute the changes needed to align resources with the desired configuration. Key features include:
- Execution Plans: Before making any changes, Terraform generates a plan showing what actions will be taken, allowing users to review and approve modifications.
- Resource Graph: Dependencies between resources are modeled as a directed acyclic graph, enabling parallel creation and modification of independent resources.
- Provider Ecosystem: Hundreds of providers exist for cloud platforms (Amazon Web Services, Microsoft Azure, Google Cloud Platform), network tools (Cisco, F5 Networks), DNS services (Cloudflare, DNSimple), and many other systems.
- Modules: Reusable configurations can be packaged as modules, promoting best practices and code sharing.
- Remote State Management: State files can be stored remotely (e.g., in Terraform Cloud, Amazon S3, Azure Blob Storage) to enable team collaboration.
- Workspaces: Support for managing multiple distinct sets of infrastructure (e.g., staging, production) within the same configuration.
History
Terraform 0.1 was released in July 2014 by HashiCorp, founded by Mitchell Hashimoto and Armon Dadgar. The tool gained rapid adoption for its ability to handle multi‑cloud deployments https://www.hashicorp.com/products/terraform HashiCorp Terraform product page.
In 2019, HashiCorp introduced Terraform Cloud and Terraform Enterprise as commercial offerings providing collaboration, policy enforcement, and cost estimation. Major version 1.0 was released in June 2021, marking the tool's stability and production‑ready status. Terraform continues to receive regular updates, adding new providers and features such as the ‘‘import’’ block for managing existing resources.
In 2023, HashiCorp changed the license of Terraform from Mozilla Public License to the Business Source License (BSL), prompting the creation of forks such as OpenTofu.