Getting started with Terraform

Getting started with Terraform

  1. What is Infrastructure as Code(IAC)?

  • Infrastructure as Code (IaC) is the process of managing your IT infrastructure using automatic scripts instead of manually.

  • One of the crucial elements of the DevOps software development approach, it allows you to fully automate deployment and configuration, thus making continuous delivery possible.

  • Infrastructure as Code (IaC) tools allow you to manage infrastructure with configuration files rather than through a graphical user interface. IaC allows you to build, change, and manage your infrastructure in a safe, consistent, and repeatable way by defining resource configurations that you can version, reuse, and share.


  1. What is Terraform?

  • HashiCorp Terraform is an infrastructure as code tool that lets you define both cloud and on- prem resources in human-readable configuration files that you can version, reuse, and share.

  • You can then use a consistent workflow to provision and manage all of your infrastructure throughout its lifecycle.

  • Terraform can manage low-level components like compute, storage, and networking resources, as well as high-level components like DNS entries and SaaS features.


  1. How does Terraform work?

  • Terraform creates and manages resources on cloud platforms and other services through their application programming interfaces (APIs). Providers enable Terraform to work with virtually any platform or service with an accessible API.

  • HashiCorp and the Terraform community have already written thousands of providers to manage many different types of resources and services.

  1. The core Terraform workflow

  • Write: You define resources, which may be across multiple cloud providers and services. For example, you might create a configuration to deploy an application on virtual machines in a Virtual Private Cloud (VPC) network with security groups and a load balancer.

  • Plan: Terraform creates an execution plan describing the infrastructure it will create, update, or destroy based on the existing infrastructure and your configuration.

  • Apply: On approval, Terraform performs the proposed operations in the correct order, respecting any resource dependencies. For example, if you update the properties of a VPC and change the number of virtual machines in that VPC, Terraform will recreate the VPC before scaling the virtual machines.


Connect With Me

Thank you for reading. I hope you were able to understand and learn something new from my blog.

Happy Learning!

LinkedIn | GitHub