Redundancy is the first line of defence in Azure resilience, making sure that if one resource fails, another is available to maintain functionality.
Here’s how you can set up redundancy in Azure using availability sets and availability zones.
Availability sets
Availability sets are the most basic level of redundancy in Azure for virtual machines (VMs). With availability sets, you run two or more identical VMs, grouped to prevent them from relying on the same physical resources, such as power, cooling, or network.
The key here is that the servers are never running in the same rack. This protects against rack-level failures, like power outages or hardware maintenance.
When you configure your VMs in an availability set, Azure spreads them across different update and fault domains. This approach minimises downtime during maintenance and protects against failures in individual racks, which would only affect one of your VMs. Availability sets offer a 99.95% SLA for VMs, compared to a standard VM’s SLA of 99.9%.
Availability zones
For a higher level of redundancy, you can use Azure availability zones. Each Azure region is divided into multiple data centres, known as availability zones, which are connected by a high-speed network but operate independently with separate power, cooling, and network connections. Setting up your VMs across multiple availability zones means that if one data centre goes offline, the others remain operational.
So, for example, if you were running a VM and lost one data centre, a backup virtual machine could start running within another availability zone. Availability zones provide a more robust failover solution than availability sets, but there is an additional cost since you’re running multiple instances in different data centres. However, the added resilience can be critical, especially for workloads requiring high availability.