Availability Options for Virtual Machines in Azure
-
High Availability in Azure is majorly provided by following basic constructs
- Availability Zones:
- Some Regions of Azure support Availability zones
- If you are deploying vm’s on these regions then it is recommended to use Zone resilient deployment
- Availability Set:
- Each availability Set will have Fault domains & update domains
- Fault domain is logical group of underlying hardware which share a common power source & network switch within a data center (rack)
- Update domain is a logical group of underlying hardware that can undergo maintenance or be rebooted at the same time without impacting application.
- Availability Zones:
-
Best Practices for Virtual Machines
- Avoid running a production workload on a single vm: Instead put VM in availability set or virtual machine scale set, with a load balancer in front
- Put each application into a separate Availability Set
- Replicate VMs using Site Recovery
- Use Azure Backup to backup vms
- Enable logging & monitoring
Virtual Machine Scale Sets:
- Consider your organization is hosting an application which is used for ticketing
- Now users have increased drastically
- Now how can we ensure our application still works without performance problems?
- Increasing servers will be an option
- Our application is ticketing application so it will have peak and non peak hours
- So we need to increase or decrease the servers based on demand. Now will it be better to do this manually or if azure handles it and you provide inputs to azure?
- The Azure’s way of handling these kind of scenarios is Azure Virtual machine scale sets(VMSS)