Managing Azure with Terraform

Skip to Scheduled Dates

Course Overview

As enterprises seek to deploy and maintain increasingly complex Azure cloud infrastructure, there is a necessity to use “Infrastructure as Code” (IaC) tools, like Terraform. An open-source, state management tool developed by HashiCorp, Terraform allows developers to use a common coding interface to work through their various clouds safely and efficiently. Attendees will leave being able to write and understand Terraform code (HCL), have a clear understanding of Terraform’s various components and supporting tools, as well as when to reach for Terraform over another IaC tool, such as Ansible.

Who Should Attend

  • DevOps Engineers
  • Software Developers
  • Technical Managers and Leads
  • System and Cloud Administrators
  • Network Engineers and Developers

Course Objectives

    • Writing Terraform HCL code for managing Azure
    • Deploying into Azure
    • Where Terraform fits in the Enterprise CI/CD model
    • Differences between Terraform and Ansible
    • Best practices
    • Prepare for HashiCorp’s Terraform Associate Certification
    • AI LLM prompt engineering for Terraform snippets and jumpstarting solutions

Course Outline

AI LLM Toolkit

  • Lecture + Lab: Large Language Model toolkit for AI
  • Solution Assistance

Introduction to Terraform

  • Lecture: Terraform Course Map
  • Lecture: Introduction to Terraform and Azure

Software Control Management

  • Lecture + Lab: SCM Option #1 - GitHub
  • Lecture + Lab: SCM Option #2 - GitLab

Overview of Terraform

  • Lecture + Lab: Terraform Install

Terraform Modules

  • Lecture: Terraform HCL Syntax
  • Lecture + Lab: Up and Running with Terraform
  • Lecture + Lab: Terraform Variables
  • Lecture + Lab: Output Values
  • Lecture: Avoid the :latest Tag

Azure

  • Lecture: Managing Azure with Terraform
  • Lecture + Lab: Terraform and Azure
  • Lecture: Exploring Terraform Azure modules
  • Lecture + Lab: Starting with VNet
  • Lecture + Lab: Creating Virtual Machines
  • Lecture + Lab: Tracking State with Storage and Databases
  • Lecture + Lab: Creating an Azure Module

Beyond Basics

  • Lecture + Lab: Terraform CLI Workspaces
  • Lecture + Lab: Terraform Expressions and Errors
  • Lecture + Lab: Resources - replace vs taint
  • Lecture + Lab: Dynamic Operations with Functions
  • Lecture + Lab: Creating a Terraform Module
  • Lecture + Lab: Moving State - terraform state mv
  • Lecture + Lab: Dynamic Provisioning with tfvars Files
  • Lecture + Lab: Data Sources and HTTP Provider

Loops

  • Lecture: for_each
  • Lecture + Lab: Looping Constructs - for_each

Provisioning

  • Lecture + Lab: local-exec Provisioner
  • Lecture + Lab: Creating Delays
  • Lecture + Lab: Terraform - templatefile Function

Terraform Cloud

  • Lecture + Lab: Terraform Cloud and Terraform Enterprise
  • Lecture + Lab: Triggering Cloud Builds via Git Commits

Dynamic Blocks

  • Lecture + Lab: Dynamic Blocks

Terraform and Enterprise

  • Lecture + Lab: Deploy a Go RESTful API microservice with Terraform
  • Lecture: Terraform vs. Ansible
  • Lecture + Lab: Terraform and Ansible

Helpful DevOps Tools (OPTIONAL)

  • Lecture + Lab: GitHub Actions - GitLeaks
  • Lecture + Lab: GitHub Actions - Terraform

Terraform Review

  • Lecture: HashiCorp Terraform Study Guide

 Back to Course Search

Class Dates & Times

Class times are listed Central time

This is a 3-day class

Register When Time
 Register 01/22/2025 9:00AM - 5:00PM
 Register 02/19/2025 9:00AM - 5:00PM
 Register 03/17/2025 9:00AM - 5:00PM
 Register 05/19/2025 9:00AM - 5:00PM