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.



Published by


A voyager on the journey to technology and art of software development. Pursuing arts, music, photography, and ways to live life on the edge

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.