Loading

Quipoin Menu

Learn • Practice • Grow

terraform / What is Terraform?
tutorial

What is Terraform?

Imagine you need to create servers, databases, and networks in the cloud. Doing this manually through web consoles is slow and error‑prone. Terraform lets you define all your infrastructure as code, then create and manage it with a single command.

Terraform is an open‑source Infrastructure as Code (IaC) tool by HashiCorp. It allows you to describe your cloud resources using a declarative configuration language (HCL), and then provisions them consistently across any provider – AWS, Azure, GCP, and many more.

Terraform lets you version, reuse, and share infrastructure configurations just like application code.

Why Terraform?

  • Declarative: You describe the desired end state, Terraform figures out how to get there.
  • Multi‑cloud: Use the same workflow for AWS, Azure, GCP, and even on‑premise.
  • Immutable infrastructure: Changes are made by replacing resources, reducing configuration drift.
  • State management: Terraform keeps track of what it created, enabling updates and deletions.
  • Collaboration: Config files can be stored in Git, reviewed, and versioned.

Terraform vs. Other IaC Tools

  • CloudFormation: AWS‑only, uses JSON/YAML. Terraform is cloud‑agnostic.
  • Ansible: Ansible is for configuration management; Terraform is for provisioning infrastructure. They complement each other.
  • Pulumi: Uses general‑purpose languages (Python, Go). Terraform uses HCL, which is easier for operators.

Basic Workflow

1. Write configuration (e.g., main.tf)
2. Run terraform init – downloads required providers
3. Run terraform plan – previews what will be created
4. Run terraform apply – creates resources
5. Run terraform destroy – removes everything


Two Minute Drill
  • Terraform is an Infrastructure as Code tool that provisions cloud resources.
  • It uses declarative HCL configuration files.
  • Supports multiple cloud providers and keeps track of state.
  • Workflow: init → plan → apply → destroy.

Need more clarification?

Drop us an email at career@quipoinfotech.com