Standard
Automation
DevOps
Infrastructure as Code (IaC)

Terraform Basics Training Course

Learn Terraform with hands-on labs

Terraform Basics Training Course
User profile

Vijin Palazhi

Head of Technology at KodeKloud | HashiCorp and CNCF Trainer

Where To Start With Terraform Basics

In this course, we will get started with the Terraform  basics,  but first, we will take a look at Infrastructure as a code Or IaC and the different types of tools available in IaC and their purpose in managing modern IT Infrastructure. We’ll then see the role of Terraform in today’s IT Infrastructure. We’ll then learn how to install Terraform. This is followed by the basics of Hashicorp Configuration Language (HCL). Next, we have our first lab, where you’ll get your hands dirty with HCL syntax. We will then learn the basics of Terraform, such as Providers, Input and Output variables, Resource Attributes, and Dependencies.

What Is Terraform?

After this, we take a look at the state in Terraform – what it is, why it is used, and considerations to follow when working with the state. We then dig deeper into the fundamentals– starting with the different commands provided by Terraform. This is followed by a lecture where we understand the difference between Mutable and Immutable infrastructure. Lifecycle rules follow this in Terraform, where we will learn how to manage the ways in which resources are created. This is followed by other basic topics such as data sources, meta arguments such as count and for each, and finally, understanding of the version constraints in Terraform.

Terraform and AWS

After this, we have a dedicated section on AWS. This section begins with optional lectures and demos where we learn the basics of AWS. – such as setting up an AWS Account and learning about some of the basic AWS services such as IAM, S3, and DynamoDB. We will then see how to provision and manage these services using Terraform. Each of these topics, including the ones for AWS, is followed by hands-on  labs where we get to practice the concepts on real infrastructure.

Steps In Learning Terraform

  1. We will then learn Terraform concepts such as remote state and state locking with Terraform and then see how to store state in a remote s3 backend. 
  2. Next, we will see how to use terraform state commands to manipulate the state file. We then have a few lectures and demos where we get introduced to EC2 service and learn how to provision it using Terraform.
  3. Finally, we will learn about provisioners in terraform – what they are, the different types, behaviors, and considerations to follow when working with provisioners.
  4. We then look at resource taints, learn how to enable debugging, and then import other resources in the management of Terraform, Terraform modules – what they are, how to create them, and also how to make use of modules available in the public terraform registry.
  5. We will then learn about functions and continual expressions in Terraform and how to test them using the Terraform console.
  6. Next, we will learn about workspaces in terraform – what they are, how to create them, and when to use them.
  7. We will wrap up the course with an introduction and high-level overview of the features Terraform cloud offers.

What are the prerequisites to attend this course?

  • There are no prerequisites to attend this course.
  • The DevOps prerequisites course is an added advantage.
  • We will cover the basics of AWS with demos as part of this course.

Start Your Terraform Training Journey Now!

Our students work at..

Vmware logo
Microsoft logo
Google logo
Dell logo
Apple logo
Pivotal logo
Amazon logo

About the instructor

  • Vijin Palazhi

    Vijin Palazhi

    Head of Technology at KodeKloud | HashiCorp and CNCF Trainer

    Vijin is a training architect at KodeKloud. He is an Infrastructure Specialist with over 13 years of experience in IT Infrastructure with expertise in DevOps, Cloud, Systems Engineering, Architecture and Automation. Vijin loves to share his knowledge creatively, which keeps students motivated and focused on learning!

Course Content