9.2 Compute High Availability: Load Balancing & VM Scale Set Design

Key Takeaways

  • Azure Load Balancer is a regional, Layer 4 (TCP/UDP) service; the Standard SKU is the only one that integrates with Availability Zones and is the one AZ-305 expects in new designs.
  • Virtual Machine Scale Sets (VMSS) come in two orchestration modes — Flexible (Microsoft's current recommendation) and Uniform (legacy, still required for AKS and Service Fabric).
  • Flexible orchestration manages standard Azure IaaS VMs directly, supports up to 1,000 instances, mixes VM sizes/OS/Spot+on-demand in one scale set, and spreads instances across zones or fault domains automatically.
  • Uniform orchestration manages scale-set-specific VM objects, supports Automatic OS Upgrade and Service Fabric/AKS integration that Flexible does not, but is less flexible for mixed workloads.
  • The same SLA pairing applies to scale sets as to plain VMs: 99.95% when spread across fault domains only, 99.99% when spread across 2+ Availability Zones — in either orchestration mode.
Last updated: July 2026

Why This Topic Matters

Availability Sets and Zones (9.1) protect individual VM instances from physical failure, but they don't route traffic or add capacity on their own. AZ-305's compute-HA subgroup also tests whether you can design the layer that sits on top: Load Balancer to distribute traffic across healthy instances, and Virtual Machine Scale Sets (VMSS) to manage the fleet of instances as a single elastic unit. Microsoft has been steering all new designs toward Flexible orchestration for scale sets, and AZ-305 questions increasingly assume that as the default unless a scenario detail (Service Fabric, AKS, Automatic OS Upgrade) forces Uniform instead.

Core Terms and Rules

Azure Load Balancer operates at Layer 4 and distributes inbound TCP/UDP traffic across a backend pool of VM instances based on health probes. It comes in two SKUs:

  • Standard SKU — zone-redundant or zonal, integrates with Availability Zones, secure by default (closed unless an NSG allows traffic), and is what Microsoft recommends for all new deployments.
  • Basic SKU — regional only, no Availability Zone integration, being retired; do not select it in a design question unless the scenario explicitly forbids Standard-tier cost.

A Virtual Machine Scale Set is a group of load-balanced, identically (or flexibly) configured VMs that Azure can scale in or out automatically based on metrics, a schedule, or manual triggers. There is no extra charge for the scale set construct itself — you pay only for the underlying VM instances.

Flexible vs. Uniform Orchestration

AttributeFlexible orchestration (recommended)Uniform orchestration (legacy)
VM type managedStandard Azure IaaS VMs (full VM API)Scale-set-specific VM objects (limited API)
Max instances (with fault-domain guarantee)1,000100 (up to 3,000 without the guarantee)
Mix OS, VM size, Spot + on-demandYesNo (must be uniform)
Availability SLA99.95% (fault domains) / 99.99% (2+ zones)99.95% (fault domains) / 99.99% (2+ zones)
Update domainsDeprecated — maintenance proceeds fault domain by fault domainUp to 5 update domains
Azure Backup / Site RecoveryYesNo
Automatic OS Image UpgradeNoYes
Service Fabric / AKS backingNoYes
Standard Azure VM APIs, RBAC, taggingFull supportLimited (scale-set VM API only)

The practical exam rule: default to Flexible for any new, generic "highly available, auto-scaling web/app tier" scenario. Switch to Uniform only when the scenario names a dependency that requires it — Service Fabric, Azure Kubernetes Service (AKS) node pools, or a hard requirement for Automatic OS Image Upgrade that Flexible doesn't offer.

Combining the Pieces

A typical AZ-305-tested compute-HA design layers three things:

  1. A VMSS in Flexible mode, configured to spread instances across 2 or 3 Availability Zones (or, in a non-AZ region, across fault domains), with autoscale rules on CPU or queue depth.
  2. A Standard Load Balancer in front, health-probing each instance and routing only to healthy backends.
  3. An Application Health Extension installed on the instances (required for Flexible orchestration to detect unhealthy VMs and trigger automatic instance repair — Uniform can alternatively use the Load Balancer's own health probe for this).

Autoscale rules for either orchestration mode can trigger on a metric (CPU percentage, queue length, custom Application Insights metric), a schedule (scale up before a known traffic peak), or manual capacity changes. Because scale sets bill only for the underlying VM instances, a well-designed autoscale profile is also a cost lever — scaling in aggressively overnight lowers spend without touching the HA guarantees, since the remaining instances still satisfy the fault-domain or zone-spread requirement as long as the minimum instance count stays at 2 or more.

Exam Scenarios

Scenario 1: An e-commerce front end needs to auto-scale between 3 and 50 identical web servers, mixing Spot instances for cost savings with on-demand instances for baseline capacity, and must tolerate the loss of an entire datacenter. Design decision: VMSS in Flexible orchestration (only Flexible mixes Spot and on-demand in the same set) spread across 3 Availability Zones, fronted by a Standard Load Balancer — reaching the 99.99% SLA.

Scenario 2: A team is migrating an on-premises Service Fabric cluster to Azure VMs and needs the scale set to back the cluster directly. Design decision: Uniform orchestration — Flexible does not support Service Fabric.

Scenario 3: A design calls for the lowest-cost load-balancing tier and does not need Availability Zone awareness. Trap: candidates sometimes pick Basic Load Balancer for cost, but Microsoft is retiring Basic and AZ-305 (current blueprint) expects Standard to be the default recommendation regardless, since Basic cannot be zone-redundant and lacks the security-by-default posture Microsoft now requires in reference architectures.

Takeaways

  • Load Balancer is Layer 4/regional; reserve Layer 7/global routing decisions (Front Door, Application Gateway, Traffic Manager) for the networking chapter — but know that Load Balancer is what actually sits in front of a VMSS backend pool.
  • Flexible orchestration is the default answer on the current exam; Uniform is the answer only when Service Fabric, AKS, or Automatic OS Image Upgrade is explicitly in play.
  • The SLA math for a scale set mirrors plain VMs: instance count and zone spread — not the orchestration mode — determine whether you hit 99.95% or 99.99%.
  • Application Health Extension (Flexible) vs. Load Balancer health probe (Uniform, optional) is a subtle distinction the exam can test directly.
Test Your Knowledge

A team must deploy a virtual machine scale set that backs an Azure Kubernetes Service (AKS) node pool. Which orchestration mode must the scale set use?

A
B
C
D
Test Your Knowledge

Which Azure Load Balancer SKU integrates with Availability Zones and is recommended for new AZ-305 designs?

A
B
C
D