Get in Touch
 Duration 28 hours

Course Outline

Module 1: Introduction to Infrastructure as Code and Terraform

  • Exploring IaC principles and their advantages for on-premises and hybrid landscapes
  • Terraform fundamentals: understanding providers, resources, state management, and resource lifecycles
  • Setting up Terraform, Azure CLI, and other essential utilities
  • Practical exercise: creating and executing a basic Terraform configuration locally

Module 2: HashiCorp Configuration Language (HCL) and Core Configuration Concepts

  • Mastering HCL syntax, resource definitions, attributes, and logical expressions
  • Working with variables, outputs, local values, and data type constraints
  • Navigating the Terraform CLI: commands for init, plan, apply, destroy, and fmt
  • Hands-on lab: constructing a parameterized configuration for both on-premises and Azure resources

Module 3: Providers, Resources, and Azure Provider Essentials

  • Comprehending provider roles and configuring the AzureRM provider
  • Translating infrastructure components (networking, compute, storage) into Terraform resources
  • Handling Azure authentication and service principals for automated tasks
  • Practical task: provisioning an Azure virtual network and a basic VM via Terraform

Module 4: State Management, Backends, and Team Collaboration

  • The role of Terraform state: its purpose, structure, and lifecycle implications
  • Implementing remote backends using Azure Storage Accounts and managing state locks
  • Utilizing workspaces and environments to establish effective collaboration patterns
  • Lab: setting up remote state in Azure Storage and executing a multi-user workflow

Module 5: Modularization, Reusability, and Best Practices

  • Crafting and utilizing Terraform modules for efficiency
  • Defining module inputs/outputs, managing versions, and leveraging registry standards
  • Establishing consistent folder structures, naming conventions, and maintainable repository layouts
  • Hands-on: building a reusable module for Azure VMs (including disks and networking) and testing it across different environments

Module 6: Managing Azure Virtual Devices and On-Premises Integration

  • Overseeing Azure Virtual Machines, Virtual Desktop elements, and device lifecycles with Terraform
  • Strategies for hybrid device management: linking on-premises assets with Azure-managed devices
  • Connecting device management systems via data sources and external providers
  • Lab: deploying a fleet of Azure VMs to represent operator units, then applying inventory tags and basic monitoring

Module 7: CI/CD, Automation, and Deployment Pipelines

  • Embedding Terraform into CI/CD systems such as GitHub Actions and Azure DevOps
  • Automating plan and apply steps while securing secrets and managing service principals
  • Introducing Policy as Code (using Sentinel or Open Policy Agent) and pre-deployment validation
  • Hands-on: building a basic GitHub Actions workflow to execute Terraform plans and applies against a sandbox subscription

Module 8: Security, Secrets, and Operational Excellence

  • Secure secret management through Azure Key Vault and preventing sensitive data leakage in state files
  • Enforcing access control, RBAC, and least-privilege principles for automation accounts
  • Detecting configuration drift, reconciling state, and applying basic remediation tactics
  • Operational checklist: ensuring backup, auditing, and governance for Terraform-managed systems

Module 9: Testing, Debugging, and Troubleshooting

  • Debugging Terraform code and interpreting plan differences with precision
  • Adopting unit and integration testing methods using tools like terraform validate, tflint, and kitchen-terraform
  • Identifying common error patterns and applying effective resolution strategies
  • Lab: executing validation and linting tools to identify and correct configuration issues

Module 10: Capstone Project — Hybrid Deployment Scenario

  • Design challenge: planning an on-prem + Azure device deployment using acquired patterns
  • Implementing core components via modules, remote state, and CI/CD pipeline fragments
  • Presenting the solution, analyzing trade-offs, and reviewing the operational runbook

Summary and Next Steps

Requirements

  • A solid grasp of fundamental networking and virtualization principles
  • Proficiency with command-line interfaces on Windows or Linux
  • Foundational knowledge of cloud or on-premises infrastructure concepts

Target Audience

  • System administrators and platform engineering professionals
  • DevOps engineers starting their journey into Infrastructure as Code
  • IT teams responsible for managing hybrid infrastructures that span on-premises and Azure environments

Number of participants


Price per participant

Testimonials (4)

Upcoming Courses

Related Categories