Terraform
HashiCorps Infrastructure as Code tool for provisioning cloud resources across multiple providers with declarative HCL syntax.
Terraform by HashiCorp is the industry-standard Infrastructure as Code tool that enables teams to provision and manage cloud infrastructure across 2000+ providers using declarative HCL (HashiCorp Configuration Language). It maintains state files to track resource changes, supports modules for reusable infrastructure patterns, and offers workspaces for environment management. Terraform Cloud adds remote state management, policy enforcement, and team collaboration features.
Features
Drift Detection
Detect and report manual changes outside of IaC
Terraform plan detects drift, Terraform Cloud notifications
Kubernetes-Native
Built on Kubernetes CRDs for native K8s experience
Not K8s-native, separate Kubernetes provider
Module/Package Registry
Reusable infrastructure components managed via registry
Terraform Registry (public and private)
Multi-Cloud Support
Provision infrastructure across AWS, Azure, GCP and others
2000+ providers across all major clouds
Policy as Code
Define and enforce infrastructure policies programmatically
Sentinel (enterprise) and OPA integration
Preview/Plan
Preview infrastructure changes before applying them
Terraform plan output before apply
Programming Languages
Use general-purpose languages instead of DSL
HCL DSL only
Secret Management
Handle sensitive values like passwords and API keys
Variables with sensitive flag, Vault integration
State Management
Track and manage infrastructure state over time
Local and remote state (Terraform Cloud, S3, etc.)
Team Collaboration
Multi-user support with RBAC and audit logs
Terraform Cloud with RBAC, runs, workspaces