Deploying your Production IaaS VMs within Azure you will be wanting to consider redundancy and ensuring your environment is highly available in both the Application itself along with the infrastructure it will be using within Azure.
Looking at this from a high-level, you will be deploying each part of the application that you want to be highly-available in at least a pair of VMs, thinking from a redundancy perspective to allow such activities as OS patching.
Now lets look at the two main availability options Azure offer to assist with keeping the actual VMs hardware highly-available.
- Availability Set
- Availability Zone
As mentioned above, for local redundancy of your application you would consider at least a pair of VMs for planned downtime work, Availability Sets have a similar requirement – VMs are required to be deployed in at least a pair within the same Availability Set to guarantee it meets the SLA.
An exception of this is when a single instance would be deployed using Premium SSDs, the SLA will still apply for any unplanned maintenance events
What does an Availability Set consist of?
Consisting of logical groups that protect the VMs against hardware failures and also allow back-end updates to be applied safely without affecting the performance of your deployed IaaS VMs, these are grouped as Update Domains and Fault Domains
Update Domains:- Local grouping of underlying Azure hardware that can be maintained or rebooted at the same time.
Fault Domains:- Local grouping of underlying Azure hardware that share the same hardware such as networking and power supplies.
With reference to the above, back-end Azure related Infrastructure should not affect your VMs connectivity.
As below, showing 3 VMs in an availability set – the UD in blue showing these VMs.
Availability Zones are a similar context to Sets but with this high-availability offering it also protects your application from data center failure. These zones are locally dispersed within an Azure region. Each zone will have separate hardware, network connections and power.In each region where availability zones are available there is at least three separate zones.
Within each zone, it is a combination of both update and fault domains. Azure will recognise the distribution across update domains to make sure VMs in different zones are not updated at the same time.
|Availability Set||Availability Zone|
|Cost||Free||$0.0.1 per GB Going into/out (Bandwidth)|
|Managed Disks only|
|Protection||Hardware failures within a data center||Data Center outages|