0
votes

I am new to the world of the cloud and trying to get my head around some confusion I have while watching foundational lectures on A cloud guru.

I am going through Azure lectures where they explain the basic difference between regions and availability zones.

Now according to MSDN documentation,

Availability Zones is a high-availability offering that protects your applications and data from datacenter failures. Availability Zones are unique physical locations within an Azure region. Each zone is made up of one or more datacenters equipped with independent power, cooling, and networking.

Also, given that each availability zones have multiple data centers it should be all the more reason and intuitive to think that in contrast to regions, availability zones provide both Fault Tolerance and High Availability, but the lecture on Acloud Guru states otherwise,

Also, if availability zones have multiple datacenters, does that imply that regions have 1 datacenter?

Differences

1

1 Answers

1
votes

So availability zones do offer a level of high availability, but there are a couple of things to be aware of. Firstly a region is a level up from an availability zone in the same sense that a geography is a level up from a region. However, not all regions have availability zones, eg the UK west region does not have availability zones but the UK south region does.

From link 2 below:

Availability Zones are unique physical locations within an Azure region. Each zone is made up of one or more datacenters [...] Availability Zones and their associated datacenters are designed such that if one zone is compromised, the services, capacity, and availability are supported by the other Availability Zones in the region.

This means firstly, you need to choose a region that has availability zones to make use of them.

Secondly, not all services or SKUs can make use of availability zones, eg standard app service cannot so if you want a highly available standard app service you’ll need to spread them across regions and use something like traffic manager or front door to load balance in front of them. On the other hand app service environments can be used with availability zones as can other services “out of the box”.

Thirdly, in terms of high availability you might consider availability groups to not be sufficient on their own for your use case. Eg if you had a major outage or natural disaster in a region it could take out several availability zones so you may want to spread things over multiple regions (or even clouds).

Also from the second link:

To achieve comprehensive business continuity on Azure, build your application architecture using the combination of Availability Zones with Azure region pairs. You can synchronously replicate your applications and data using Availability Zones within an Azure region for high-availability and asynchronously replicate across Azure regions for disaster recovery protection.

I would add to this that you can also achieve high availability (as oppose to just DR) by deploying across regions but it depends on the specific requirements of your system.

Terminology and Info on geography, regions, availability zones, etc.

Azure regions that have availability zones and Azure services that support availability zones.