651-905-3729 Microsoft Silver Learning Partner EC Counsel Reseller compTIA Authorized Partner

Infrastructure as Code (IaC) with Terraform for Azure Fundamentals Training

3 Days

Description

This live, hands-on Terraform for Azure training course teaches learners how to use Terraform for deploying and managing resources on Azure. Attendees learn Terraform basics, then advance to IaC Terraform workflows, Azure Terraform providers, provisioning and managing Azure resources, HCL (Hashicorp Configuration Language) programming, best practices, troubleshooting, and integrating Terraform with automation and GitOps. Looking to become Terraform certified? This custom-built IaC with Terraform course teaches all the topics covered in the Terraform Associate certification exam.

  • Proven Success: Our students usually pass the exam on their first attempt without extra preparation after completing this course.
  • Optional Certification Review: If desired, a certification review session can be added to this training to reinforce key concepts.
  • Real-World Applications: While this course prepares learners for the exam, the course also teaches practical Terraform skills that are directly applicable to enterprise environments.
  • Please note: This course is not an official HashiCorp course.

Skills Gained

  • Terraform Basics is the cornerstone that introduces students to the concept of IaC and the fundamentals of Terraform. It demystifies the Terraform workflow, guides learners on using the Terraform CLI, and teaches practical skills for Azure infrastructure provisioning.
  • Building Infrastructure takes students deeper into Terraform architecture, taking a closer look at the details of the Hashicorp Azure provider. It highlights the steps for provisioning and maintaining diverse Azure resources via Terraform.
  • Skills Deep Dive is designed to refine students' HCL (Hashicorp Configuration Language) programming skills, spotlighting Terraform state management and incorporating HCL programming best practices.
  • Best Practices and Troubleshooting arms students with crucial knowledge for debugging and troubleshooting Terraform projects and using industry-standard best practices.
  • Advanced Concepts introduces Terraform in an organizational context and discusses the integration with CI/CD pipelines, GitOps, and integration with other Azure and Hashicorp tools.

Audience:

Anyone who works with cloud infrastructure.

Upcoming Classes

Virtual Classroom Live
October 28, 2026

$2,200.00
3 Days    10 AM ET - 6 PM ET
view class details and enroll
Private Training Available
No date scheduled, don’t see a date that works for you or looking for a private training event, please call 651-905-3729 or submit a request for further information here.
request a private session or new date

Course Overview

Infrastructure as Code Overview
IaC: Holistic Overview
Infrastructure as Code (IaC)
Emergence of IaC
Why IaC
IaC Tools Landscape
Tools by Language Type
Tools by Configuration Delivery
Tools by Configuration Style
Platform-Specific vs. Multi-Platform
Mutable vs. Immutable Infrastructure
Scripting vs Declarative IaC
Scripting
Declarative IaC
Idempotency
Impact of Idempotency
Non-Idempotent: Scripting
Idempotent: Terraform
State Management
Destroying Resources: AZ CLI vs Terraform
Destroying Resources: AZ CLI
Destroying Resources: Terraform

Terraform Basics - Getting Started
Terraform Offerings
Terraform CLI
Terraform Paid Offerings
CLI: Basic Usage
Terraform CLI Version
CLI Versioning Best Practice
Installing Terraform CLI
Primary Workflow Commands
Terraform Project Structure
Terraform Working Directory
Terraform Configuration Files
Terraform Workflow
Write Code
Initialize Project
Validate
Plan
Apply
Modify
Destroy
Terraform HCL Configuration Files
HCL Components - Introduction
Providers - Introduction
Resources - Introduction
Provisioning Infrastructure
Terraform vs Providers
Using Terraform Provider Documentation

Terraform and Azure - Getting Started
Creating Azure Resources
Terraform Workflow for Azure Resources
Azure Resource Categories
A Simple Example
A Simple Example Continued
State Files - Reality Check

Terraform Architecture
Cloud Agnostic Architecture
Terraform is Cloud Agnostic
Visual Overview
Terraform State
Local vs. Remote State
HCP Terraform and Terraform Enterprise
CLI vs Cloud/Enterprise
Terraform Registry
Providers
Hashicorp Utility Providers
Modules
Modules - Getting Started
Version Constraints
Semantic Versioning Basics
Version Constraint Operators
CLI Versioning
Provider Versioning

Azure Provider Fundamentals
Azure Provider Landscape
AZ Provider Authentication
Authentication Methods
Terraform for Development
Terraform in Automation
Creating Azure Resources
Compute: Linux VM
Compute: VM Scale Set
PaaS Applications
Compute: Azure Functions
Storage Accounts
Web Apps
Azure Databases
Networks and Subnets
AzureAD / Entra ID Users
Impact of Terraform
Terraform vs ARM vs Bicep for Azure

HCL Programming Basics
Terraform Console
HCL Language Structure
Variables and Outputs
Input Variables
Assigning Values to Input Variables
Variable Source Priority List
Sensitive Values
Local Variables
Output Variables
HCL Expressions Basics
Value Data Types
Value References Using Dot Notation
Strings
Conditionals
For
Splat
Operators
Using Functions in Terraform
Numeric Functions
String Functions
Collection Functions
Date and Time Functions
Type Conversion Functions
Encoding
Filesystem
Cryptographic and Hashing
IP Network

Resources Deep Dive
Resource Blocks
Resource Syntax
Resource Types
Resource Arguments
Custom Condition Checks
Operation Timeouts
Resource Behavior During Terraform Workflow
Reapplying a Configuration
Accessing Resource Attributes
Resource Dependencies
Implicit Resource Dependencies
Explicit Resource Dependencies
Local-only Resources
Meta Arguments
depends_on
count
for_each
provider
lifecycle

Data Sources
Data Source - Introduction
Data Sources
Data Source Lifecycle
Azure Data Sources
Data Source Use Cases
More Data Source Use Cases

Modules Deep Dive
Why Modules?
Modules Architectural Overview
Consuming Modules
Module Sources
Writing Custom Modules
Module Structure
Modules and Providers
Modules vs IaC Projects
Modules Best Practices

Terraform State Deep Dive
Terraform State Architecture
State Locking
Terraform Backends
Using AzureRM Backend
Importing Existing Resources
Using CLI Import
Using Import Blocks
Storing State Files
Isolating and Organizing State Files
Manipulating State File
State Drift
Convention over Control
State File Security

Best Practices and Troubleshooting
Troubleshooting
Terraform Log Levels
Troubleshooting Terraform Scripts
Audit Trails for Troubleshooting
Terraform State Best Practices
State Drift Issues
State Conflict Issues
State Security
Storing State Files
Isolating and Organizing State Files
Manipulating State File
State Drift
Convention over Control
State File Security
Infrastructure as Code Principles
Mutable vs Immutable
Declarative Code
Version Control
Automation
Sample Jenkins Pipeline
Resource Management Strategies
Naming Conventions
Modularization
Resource Dependencies
Lifecycle Management
Parallel Resource Creation
Effective Use of Data Sources
Security Best Practices
Secrets Management
Principle of Least Privileges
Use of Service Roles
More Best Practices
IaC Code Management
Compatibility and Security
Testing and Documentation
Resource Management
Environment and Automation

Advanced Concepts
Terraform in Organizational Context
Lift and Shift Scenario
Centralized vs. Distributed Infrastructure Management
Centralized Infrastructure Management
Centralized Workflow
Distributed Infrastructure Management
Distributed Workflow
Hybrid Infrastructure Management
DevOps Approach with Terraform
Using Managed Terraform Services
Team Roles and Responsibilities
Governance and Best Practices
Terraform, CI/CD Pipelines, GitOps
Overview of CI/CD
Terraform in CI/CD Context
GitOps with Terraform
Automated Testing of Terraform Code
Infrastructure Deployment Automation
Best Practices and Tools
Integration with Other Tools
Last Mile Configuration
Azure Key Vault for Secrets Management
Azure Monitor for Resource Monitoring
Secrets Management with Vault
Service Discovery with Consul
Image Creation with Packer
Development Environments with Vagrant
Application Deployment with Nomad

Upcoming Classes

Virtual Classroom Live
October 28, 2026

$2,200.00
3 Days    10 AM ET - 6 PM ET
view class details and enroll
Private Training Available
No date scheduled, don’t see a date that works for you or looking for a private training event, please call 651-905-3729 or submit a request for further information here.
request a private session or new date

Prerequisites

  • Working experience with Azure Portal and common resource types, including Resource Groups, Virtual Networks, Storage Accounts, Virtual Machines
  • Familiarity and some working experience with Azure CLI
  • Working experience with command line (PowerShell or Bash)
  • Understanding of file system operations and navigation
  • Familiarity with VS Code or similar code editor
  • Optional: Experience with Git version control

Upcoming Classes

Virtual Classroom Live
October 28, 2026

$2,200.00
3 Days    10 AM ET - 6 PM ET
view class details and enroll
Private Training Available
No date scheduled, don’t see a date that works for you or looking for a private training event, please call 651-905-3729 or submit a request for further information here.
request a private session or new date