Introduction to Terraform


  1. Terraform declares and defines infrastructure pieces of a system.
  2. It is a workflow manager.
  3. The pieces range from IAAS (Azure EC2 instances) to PAAS (Heroku, Kubernetes services) to SAAS (LB, DNS).
  4. It uses providers for each type of component. A provider defines a set of APIs that Terraform calls to create infrastructure.
  5. Since infrastructure is defined in a text file (JSON or HCL format), it is easy to version control.
  6. A TF file is essentially a DAG, that creates components in order.
  7. TF tries to maintain a desired state of the system.
  8. Terraform uses a version control solution such as CVS, SVN, or Git.
  9. Hence it is easy to track changes and manage simultaneous multiple changes.
  10. Terraform is mostly used for creating infrastructure, not configuring it.
  11. There are four basic commands in TF:
    • Refresh
    • Plan
    • Apply
    • Delete
  12. Terraform is coded primarily in Golang.


Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: