Terraform - 2 Days

(c) test3

Course Description:

Hashicorp's Terraform is one of the most popular infrastructure provisioning tools in the market, supporting multiple cloud providers (AWS, Azure, GCP, Oracle, etc.). This course enables students to use Terraform for defining infrastructure as code and automating infrastructure deployment - improving operational efficiency, lowering administrative overhead, and reducing the chance of human error.

What will you learn:

At the end of the course, students will have a firm understanding of Terraform basics and will be able to:

  • Write Terraform configuration files
  • Understand how Terraform integrates infrastructure sources
  • Manage infrastructure environments

Target audience:

This course is for system administrators wishing to use Terraform to automate cloud-based infrastructure deployment.

Note: Every student has assigned to him his own virtual lab environment setup.


  • familiarity with the Linux command line (commands, arguments, variables, working with files and directories, using text editors)
  • basic TCP/IP networking (IP addressing, subnets, etc.)
  • basic knowledge about cloud-based IaaS architecture and terminology (VM instances, VPCs/VCNs, load balancers, security rules, etc.)


Module 1: Introduction. What Is Terraform?

  • How we got to the DevOps era
  • A quick glance at Terraform

Module 2: Positioning Terraform

  • Defining Infrastructure as Code
  • Scripts
  • Configuration management tools
  • Server templating tools
  • Server provisioning tools
  • Comparing Terraform to other tools

Module 3: Terraform Architecture

  • Terraform language paradigm
  • Workflow overview
  • Environment parity
  • Cloud Providers
  • How Terraform works

              Hands-on Lab: Environment set-up

Module 4: Installation and Getting Started

  • Preparing the environment with examples for Linux, Windows and MacOS
  • Major code elements in Terraform configuration files

              Hands-on Lab: Installing Terraform

Module 5: Terraform Configurations Overview

  • Configuring providers
  • Preparing authentication credentials
  • Regions and Availability Zones/Domains
  • Deploying a server in AWS
  • Updating an existing server
  • Deploying a virtual network in OCI
  • Inputs and outputs

              Hands-on Lab: Working with variables

Module 6: Providers, Resources and More

  • Managing providers and versions
  • Working with multiple identical providers in multiple regions
  • More resource creation examples
  • Decommissioning virtual infrastructure

              Hands-on Lab: Providers and data sources

Module 7: Post Configuration, Syntax

  • Post-configuration tools: provisioners
  • Provisioners types, usage, behaviors
  • Functions in HCL
  • The Terraform Console
  • Recreating common construct behaviors: loops, conditionals

              Hands-on Lab: Virtual instance resources

Module 8: Terraform States

  • Terraform states overview
  • Analyzing the contents of state files
  • Sharing state files
  • Securing and locking shared state files
  • Read-only state

              Hands-on Lab: Additional virtual resources

Module 9: Using modules

  • Module basics
  • Module inputs
  • Module outputs
  • Modules and paths
  • Module usage best practices
  • Adding and initializing modules from various sources

              Hands-on Lab: Provisioners

Module 10: Using Variables

  • Variables, variables, variables
  • Variables stored in files
  • Environment variables
  • Securing variables

Module 11: Tips and Tricks

  • Miscellaneous helpful tips
  • Command-line options that lend a hand in writing IaC
  • Code options for better control of the infrastructure

Additional details:

To attend this course, you need to have:

  • PC/Laptop with internet access
  • Updated web browser

Learn about Kubernautic

Kubrnautic is a Platform ready to build Cloud Agnostic Kubernetes Platforms!

Learn more +

Kubernauts Worldwide Meetup

Join our online sessions at Kubernauts Worldwide Meetup and enjoy free trainings and great presentations from the kommunity!

meet us