Deploying Azure Virtual Machines is the first step but what about business critical services and applications. For these, we'll probably want to design highly available solutions that will have the best possible service level agreement (SLA) and uptime.
The first step for this must be performed during VM creation with the setting up of an Availability zone and Availability set. Then we add another VM to our solution with a different Availability zone and the same Availability set. This will ensure that the VMs are placed in different zones in the Azure Datacenter and don't depend on the same power source, networking, and cooling. If there is an issue within the Azure Datacenter, there is less chance that both VMs will be impacted.
Setting up the same Availability set will insure that VMs are placed on different physical servers, compute racks...