Azure Infrastructure as Code with ARM, Bicep, Terraform, and Pulumi

Azure Infrastructure as Code with ARM, Bicep, Terraform, and Pulumi

2h 21mIntermediate2024-09-23

Authors

Mike Benkovich

Mike Benkovich

Former Microsoft Evangelist, Current Software Architect

Course details

Looking to learn more about the power of infrastructure as code (IaC)? Join instructor Mike Benkovich as he provides an in-depth exploration of managing Microsoft Azure infrastructure using IaC tools. This course covers the core concepts and skills required to leverage tools such as Azure CLI, ARM, and Bicep, as well as third-party options like Terraform and Pulumi. Test out your newly acquired skills along the way with hands-on demonstrations and practical exercises in GitHub. This course is designed for anyone who already has a basic understanding of cloud concepts in Azure but is still new or relatively inexperienced with IaC in an Azure environment. By the end of this course, you’ll also have a better understanding of the impact of AI on IaC tooling with real-world examples drawn from ChatGPT and Copilot.

Skills covered

DevOps FoundationsCloud AdministrationAzureDevOpsCloud PlatformsCloud ComputingMicrosoftDeep Dive (X:Y)

Concepts

Introduction

  • Efficient management of cloud resources
  • What you should know
  • Installing the tools

Infrastructure as Code

  • Cloud applications
  • Demo - Creating a cloud app
  • Infrastructure as code
  • Demo - Deploying to Azure
  • Importance of resource consistency
  • Demo - Portal features
  • Environments and IaC
  • Demo - Deployment environments
  • Challenge - Deploying to IaC in DevOps
  • Solution - Deploying IaC in DevOps

Azure CLI

  • Getting started with Azure CLI
  • Demo - Exploring Azure CLI
  • Bash vs. PowerShell with Azure CLI
  • Demo - Powershell scripting basics
  • Demo - Bash scripting basics
  • IaC coding patterns
  • Challenge - Deploy web app from script
  • Solution - Deploy web app from script

ARM Templates

  • Azure Resource Manager templates
  • Demo - ARM basic template
  • Parameters and environments with ARM
  • Demo - Deployment options
  • Template specs
  • Demo - Template specs
  • Challenge - Using outputs
  • Solution - Outputs

Bicep

  • Introduction to Bicep
  • Demo - Decompile ARM template
  • Bicep language structure
  • Demo - Working with modules in Bicep
  • Deployment stacks
  • Demo - Deployment stacks
  • Challenge - Adding storage with Bicep
  • Solution - Adding storage with Bicep

Other IaC Options

  • Terraform and Azure
  • Demo - Basic Terraform template
  • Terraform deployment options
  • Demo - Terraform deployment options
  • Pulumi and Azure
  • Demo - Basic Pulumi stack

AI and IaC

  • Impact of AI on IaC tooling
  • Demo - ChatGPT and IaC
  • Demo - Copilot and IaC

Conclusion

  • Comparing IaC options
  • Next steps
  • Tear down
80,000 Toman