From DevOps Dictionary
Tool Class: Infrastructure Provisioning & Management Tool
Vendor: HashiCorp
Type: File based configuration
Licensing Model: Open-source - Mozilla Public License, version 2.0

Terraform is a infrastructure provisioning and management tool provided by HashiCorp.

Terraform is a tool for building, changing, and versioning infrastructure safely and efficiently. Terraform can manage existing and popular service providers as well as custom in-house solutions.

Configuration files describe to Terraform the components needed to run a single application or your entire datacenter. Terraform generates an execution plan describing what it will do to reach the desired state, and then executes it to build the described infrastructure. As the configuration changes, Terraform is able to determine what changed and create incremental execution plans which can be applied.

Terraform Introduction

Key Features

  • Infrastructure as Code
  • Execution Plans
  • Resource Graph
  • Change Automation


  • Cloud Agnostic
  • Resource driven model
  • Implicit and Explicit dependency management for resources
  • Planning mode - Dry Run or Snapshot of current infrastructure