Availability Zones are one of the core concepts of Microsoft Azure and Fault Domains in combination with Update Domains make AZs possible. An Availability Zone in an Azure Region is made up of a Fault Domain and Update Domain. A Fault Domain means that there is a logical collection of hardware that can avoid a single point of failure in an Availability Zone. It can also be viewed as a group of VMs that share a common network switch and a power source.
Azure Fault Domain
Now that we know what a Fault Domain is, what is it for? This is done so that if part of the data center fails, then other servers will not be taken down with it. There could be a power failure or fire in a part of the data center, but services will continue to run.
- Fault domains are a collection of VMs that share a common power source and network switch.
- Every fault domain contains physical racks and each rack contains virtual machines.
- Each of the Fault domains share a network switch and power supply.
- A failure in the fault domain means all resources in the fault domain become unavailable.
- Virtual Machines should be configured in such a way that each fault domain gets one web server, one database server, and so on.
Azure Update Domain
Much of the operation of cloud services in Azure might seem like magic at times, but there is underlying software and hardware that make it all run. That hardware and software like any technology must be maintained and updated. Of course, this may entail downtime for these types of support activities. An Update Domain makes sure that systems can be updated without interruption and without the main services going offline. Update Domains are only ever updated one at a time, two would never be updated at the same time and this is how service outages are avoided.
- VMs are automatically assigned to an update domain once they are put inside an availability set.
- All VMs in an update domain will reboot together when needed.
- Update Domains are used for software patch maintenance of the virtual machines.
- Only one update domain is ever updated at a given time.
Availability Sets are how Azure puts Update Domains and Fault Domains to use. The way this works is that a Virtual Machine in an Availability Set is automatically provisioned into a Fault Domain and an Update Domain. This meets the ever-present need for service availability and redundancy. Often times two or more Virtual Machines are deployed in an Availability Set for highly available services. Availability Sets are free, the business only pays for the Virtual Machines that are running within them.
- Availability Sets make sure that the Azure VMs are provisioned across several isolated hardware nodes in a cluster.
- Deploying Virtual Machines across multiple hardware nodes means Azure can ensure that if a software or hardware failure occurs within Azure, only a portion of the VMs are impacted and the cloud solution is still in working condition.
- Availability Sets offer redundancy for virtual machines.
- Availability Sets distribute virtual machines across multiple fault domains and update domains.
- The highest tier service level agreements with Microsoft Azure require that Availability Sets are employed.
Learn More About Azure Fault And Update Domains
- Fault Domains And Update Domains In Azure Virtual Machie (c-sharpcorner.com)
- What Are Availability Set Fault Domain (azure.codefari.com)
- Azure Availability Sets (softnas.com)
- Architecting Microsoft Azure (oreilly.com)
- Azure Fault Update Domains (thatlazyadmin.com)
- Virtual Machine Scale Sets Manage Fault Domains (docs.microsoft.com)
- Do Different Fault Update Domains In An Availability Set Reside In Same Data Center (stackoverflow.com)
- Cloud Difference Between Upgrade Domains And Fault Domains (prof-its.be)
- Availability Options In Azure (howtomanagedevices.com)