Microsoft Certified: DevOps Engineer ExpertDesign and implement pipelinesHard

A company is migrating its existing data warehouse solution to Azure. They need to provision and manage the entire Azure infrastructure, including Azure Synapse Analytics workspaces, Azure Data Lake Storage Gen2, and various networking components, using Infrastructure as Code (IaC). The team plans to use a single, consistent tool that can manage resources across different cloud providers in the future, if needed. Which IaC tool is the most appropriate choice for this scenario?

  1. AAzure CLI scripts
  2. BAzure Bicep
  3. CAzure Resource Manager (ARM) templates
  4. DTerraform
Show answer & explanation

Correct answer: D. Terraform

Terraform is an open-source IaC tool that supports multiple cloud providers (multi-cloud). While ARM templates and Bicep are excellent for Azure-specific IaC, Terraform's multi-cloud capability makes it the best choice for a team that wants to manage resources across different cloud providers in the future.

Why the other options are wrong

  • A. Azure CLI scripts are imperative and less suitable for declarative infrastructure provisioning and state management across complex environments or for multi-cloud scenarios.
  • B. Azure Bicep is a declarative language that simplifies ARM template authoring, but it is also Azure-specific and does not support multi-cloud management.
  • C. ARM templates are declarative and native to Azure, but they are Azure-specific and do not support multi-cloud management.

Terraform for Multi-Cloud IaC

An open-source Infrastructure as Code (IaC) tool by HashiCorp that enables users to define and provision datacenter infrastructure using a declarative configuration language, supporting multiple cloud providers (multi-cloud) and on-premises resources.

  • Supports multiple cloud providers (Azure, AWS, GCP, etc.).
  • Declarative language for infrastructure definition.
  • Manages infrastructure state to track changes.
  • Enables consistent and repeatable infrastructure deployments.

Memory trick: Terraform builds bridges to all clouds, not just one.

More Design and implement pipelines questions