HashiCorp Certified: Terraform Associate (003)
Validate foundational infrastructure as code (IaC) skills with HashiCorp Terraform 003, including HCL syntax, provider configurations, state management, module creation, CLI workflows, and cloud workspace basics.
Official Exam Specification & Quick Facts
Question Difficulty Breakdown
Exam Guidelines & Simulation Rules
Frequently Asked Questions (FAQ)
The Terraform Associate (003) exam validates foundational knowledge of Infrastructure as Code (IaC) concepts and broad platform fluency using open-source HashiCorp Terraform CLI and Terraform Cloud.
The exam consists of 57 multiple-choice, multiple-answer, and true/false questions to be completed within 60 minutes. The registration fee is $70.50 USD.
The passing threshold is approximately 70%. Exam results are computed immediately upon completion with a domain score breakdown.
Domains include: (1) Understand IaC concepts (10%), (2) Understand Terraform's purpose (10%), (3) Terraform basics (20%), (4) Outside core workflow (15%), (5) Modules (10%), (6) Core workflow (15%), (7) State management (15%), (8) HCL configuration (15%), and (9) Terraform Cloud/Enterprise (10%).
The 003 exam reflects Terraform 1.x features, including moved blocks for refactoring without state surgery, preconditions/postconditions, native validation improvements, and updated Terraform Cloud workspace features.
Terraform records real-world resource mappings in state files. Remote backends (like AWS S3 with DynamoDB or Terraform Cloud) provide state locking to prevent concurrent modifications that could corrupt infrastructure metadata.
count creates multiple resource instances indexed by integer numbers (0, 1, 2). for_each accepts a map or set of strings and creates instances keyed by meaningful identifiers, preventing cascade recreations if an item is removed.
moved blocks allow module authors and teams to rename or relocate resources within configuration files without requiring manual terraform state mv CLI commands, ensuring smooth, non-destructive refactoring across CI/CD.
terraform refresh queries cloud provider APIs to reconcile local state with actual remote infrastructure without modifying real-world resources. In modern Terraform, this is safely executed via terraform apply -refresh-only.
Setting sensitive = true redacts the value from console output and plan logs. However, the plaintext value remains visible inside the unencrypted terraform.tfstate file, requiring secure remote backend encryption.
Provisioners (local-exec, remote-exec) execute scripts directly on instances. HashiCorp considers them a measure of last resort because they break declarative idempotency and vendor portability.
Recommended preparation includes the official HashiCorp Terraform tutorials on Developer Developer portal, hands-on labs with AWS/Azure/GCP providers, and practicing timed mock dump questions.