When deploying virtual machines (VMs) and other resources in Azure, you’ll encounter availability options like Availability Sets and Availability Zones. These features play a critical role in ensuring your applications are resilient and highly available, especially during maintenance events or unexpected failures. In this post and video, we will break down the concepts behind Availability Sets and Zones, compare the two, and provide guidance on when and how to use them.
Azure Regions
Before we review Availability Zones and Availability Sets, we should review Azure regions. An Azure region is a set of closely located, well-connected data centers within a specific geographic area. These data centers are positioned close enough to offer low-latency network performance but spaced far enough apart to provide fault isolation, such as using separate power and cooling sources. This architecture enables high availability and resilience.
Understanding Fault and Update Domains
Before diving into Availability Sets, it’s important to understand fault domains and update domains:
- Fault Domains: Represent a group of hardware that shares a common power source and network switch. If any component in a fault domain fails, all virtual machines (VMs) within the Fault Domain will be affected.
- Update Domains: Used to stagger Azure updates across the infrastructure. Microsoft updates these domains one at a time, reducing the risk of simultaneous downtime.
Availability Sets distribute your VMs across multiple fault and update domains to mitigate these risks.

How Availability Sets Work
Imagine deploying three VMs for a high-availability cluster. Without Availability Sets, it’s possible that two or more VMs end up in the same domain. If that domain fails or is updated, multiple VMs could go offline simultaneously.


Availability Sets prevent this by spreading VMs across:
- Up to 3 Fault Domains
- Up to 20 Update Domains
If you deploy more VMs than domains, Azure will begin to stack VMs into the same domains. For example, 11 VMs in a set with 10 Update Domains will result in one Update Domain hosting two VMs.
Note: Availability Sets must be specified at VM creation. Existing VMs cannot be added without recreating them on a new VM and attaching the original disks.
Managed Disks Consideration
If you’re using Managed Disks (which most are), Azure aligns the disk fault domains with the VM fault domains, ensuring the VM compute and disk share the same resiliency level.
While Availability Sets work within a single data center, Availability Zones span multiple data centers within an Azure region.

Not all Azure regions support Availability Zones. The Azure regions that support Availability Zones contain three physically separate zones. These zones are typically within 100 kilometers of each other to support low-latency connectivity.
Benefits of Availability Zones
- Each zone is an isolated failure domain.
- Microsoft updates one zone at a time, similar to Update Domains in Availability Sets.
- No additional data transfer costs between zones within the same region.
Deployment Models
The two types of Availability Zone deployments include:
- Zonal Deployments: You choose the zone for each VM or resource (e.g., VM1 in Zone 1, VM2 in Zone 2, etc.).
- Zone-Redundant Deployments: Azure automatically spreads the resource across zones. For example, a Zone-Redundant Storage (ZRS) account replicates your data across all three zones automatically.
Planning for Zones
Plan to use Availability Zones from the beginning. While migrating a resource into a zone is possible, it can be complex and varies by resource type. Azure provides a migration overview to help guide the process.
VMs can be moved into a zone using:
- Redeployment
- VM recreation with original disks
- Azure Resource Mover
However, proactive planning is preferred to avoid disruptions.
Feature | Availability Set | Availability Zone |
---|---|---|
Scope | Within one data center | Across multiple data centers |
Fault Tolerance | Limited to Fault and Update Domain | Data center-level isolation |
SLA for 2+ VMs | 99.95% | 99.99% |
Disk Alignment | Managed disks supported | Managed disks supported |
Resource Migration | Recreate VM | Redeploy, recreate with OS disks, or use Resource Mover |
When possible, use Availability Zones from the start, pair them with load balancing, and size your infrastructure for failover capacity.
Neither Availability Sets nor Zones alone guarantee high availability. Additional components include:
- Load Balancers: Distribute traffic across multiple VMs.
- Proper Sizing: Ensure that remaining servers can handle the load if one fails.
- Service Redundancy: For example, deploying three web servers that can each handle 50% of the traffic ensures you can sustain a single-zone failure.
Simply placing VMs in different zones or sets won’t help if they can’t manage increased traffic during a failure.
Availability Sets and Availability Zones are key components in building resilient Azure solutions. They help protect against planned maintenance and unexpected outages—but they’re just one part of a well-architected cloud strategy.
Links:
A Beginner’s Guide to the AZ-900
https://www.udemy.com/course/beginners-guide-az-900/?referralCode=C74C266B74E837F86969
Zero to Hero with Azure Virtual Desktop
https://www.udemy.com/course/zero-to-hero-with-windows-virtual-desktop/?referralCode=B2FE49E6FCEE7A7EA8D4
Hybrid Identity with Windows AD and Azure AD
https://www.udemy.com/course/hybrid-identity-and-azure-active-directory/?referralCode=7F62C4C6FD05C73ACCC3
Windows 365 Enterprise and Intune Management
https://www.udemy.com/course/windows-365-enterprise-and-intune-management/?referralCode=4A1ED105341D0AA20D2E
Availability Zone Migration Overview
https://learn.microsoft.com/en-us/azure/reliability/availability-zones-migration-overview?WT.mc_id=AZ-MVP-5004159