EIEIOTECHNOVATION
← Training programmes

EIEIO / CLOUD NATIVE & DEVOPS

Modern Infrastructure with Terraform

Course outline

4 days

Duration

4 days

Cloud Platform: Microsoft Azure

Hands-On Format: This hands-on class is approximately 80/20 lab to lecture ratio, combining engaging lecture, demos, group activities and discussions with comprehensive machine-based practical programming labs and project work.

Module 1 - Getting Started & Setting Up Labs

  • Choosing a right Infrastructure as Code tool Terraform Overview
  • Installing Terraform - Windows Users
  • Difference between Terraform and Ansible
  • Setting up Azure Account
  • Introduction to Azure CLI
  • Authenticate Azure with Terraform
  • Terraform init, plan and apply

Module 2 – Building Cloud Infrastructure with Terraform

  • Introduction to Terraform with Azure
  • Create Resource Group
  • Terraform Destroy
  • Azure Virtual Networks
  • Azure Subnet
  • Azure Public IP
  • Azure Network Interface
  • Create Windows and Linux VM
  • Azure Storage Security Groups Load Balancers
  • Understanding Terraform State files Understanding Desired & Current States Terraform Provider Versioning
  • Types of Terraform Providers
  • Methods to define Terraform provider Version

Module 3 - Read, Generate, Modify Configurations

  • Understanding Attributes and Output Values in Terraform Referencing Cross-Account Resource Attributes Terraform Variables
  • Methods to Define Variables
  • Data Types for Variables
  • Fetching Data from Maps and List in Variable Count and Count Index
  • For_each
  • Create multiple VMs with Terraform
  • Conditional Expressions Local Values
  • Splat Expressions
  • Terraform Functions
  • Lookup Function
  • Element Function
  • Zipmap Function
  • Data Sources Debugging in Terraform Terraform Format
  • Validating Terraform Configuration Files Load Order & Semantics
  • Dynamic Blocks Tainting Resources Terraform Graph
  • Saving Terraform Plan to File

Module 4 - Terraform Provisioners

  • Understanding Provisioners in Terraform Types of Provisioners
  • Implementing remote-exec provisioners Implementing local-exec provisioners

Module 5 - Terraform Modules & Workspaces

  • Understanding DRY principle Variables and Terraform Modules Terraform Registry
  • Terraform Workspace
  • Implementing Terraform Workspace

Module 6 - Remote State Management

  • Integrating with GIT for team management
  • Git Initialize
  • Git Commit
  • Git Push
  • Git Tagging
  • Git Branching
  • Security Challenges in Committing TFState to GIT Remote State Management with Terraform Terraform State Management
  • Importing Existing Resources with Terraform Import

Module 7 – Terraform Cloud and Enterprise Overview

  • Introduction to Terraform Cloud
  • Creating Infrastructure with Terraform Cloud
  • Overview of Sentinel Security
  • Introduction to Local and Remote Backends
  • Implementing Remote Backend in Terraform Cloud

Programme scope, delivery arrangements and suitability are confirmed during enquiry.