Summary
Terraform is an open-source Infrastructure as Code (IaC) tool by HashiCorp that lets teams define, provision, and manage cloud infrastructure using declarative configuration files written in HCL.
What is Terraform?
Terraform allows teams to describe their entire infrastructure in HCL (HashiCorp Configuration Language) files. Instead of manually creating servers, networks, and services through cloud consoles, you define the desired state in code. Terraform compares this desired state with the current state and applies only the necessary changes.
The tool supports all major cloud providers (AWS, Azure, Google Cloud) and hundreds of additional providers through provider plugins. This makes it a popular choice for multi-cloud and hybrid cloud strategies.
A key concept is the Terraform state file, which tracks the current state of managed resources. Remote state storage (e.g., S3 or Terraform Cloud) enables team collaboration and prevents conflicts.
Why is Terraform relevant?
- Reproducibility: Identical environments can be set up in minutes from code
- Version control: Infrastructure changes are tracked like code in Git
- Compliance: Policies can be enforced as code using Sentinel or Open Policy Agent
- Multi-cloud: Avoid vendor lock-in through provider-agnostic abstractions