Amazon Web Services (AWS) has data centers in the United States, Asia, Europe, South America and more. These locations are called regions and each region contains a number of Availability Zones (or AZs, for short). Regions and AZs allow you to replicate resources such as data and instances across multiple geographic areas or data centers.
Understanding the difference between regions and AZs, and what each offers to AWS customers, is important for running production applications on AWS. That’s why you will see these two concepts explored in every AWS Certification exam – because they are critical for anyone working in the platform.
An AWS Region is a geographical area that includes a number of Availability Zones. Each Availability Zone links to a physical data center. There are currently 22 regions, but that number is growing. These are listed here.
A region is geographically isolated from other regions, and so is its infrastructure. These levels of isolation are important because, in combination, they offer the highest level of stability and fault tolerance.
When communicating between regions, the data transfer happens data over the public internet – AWS recommends using encryption and it is also worth noting that there is a charge for data transfer between regions for certain services.
Each region will contain at least two AZs. The US East (N. Virginia) region has six Availability Zones, the most of any regions. These zones are usually notated as:
us-east-1f. They are hosted in separate data centers – which is optimal for fault tolerance and high availability. We’ll go over this in more detail in the next section on Availability Zones.
These are the main regions that are available to most accounts:
- US East (N. Virginia)
- US East (Ohio)
- US West (N. California)
- US West (Oregon)
- Canada (Central)
- EU (Ireland)
- Asia Pacific
- (Hong Kong)
- South America (São Paulo)
- Middle East (Bahrain)
- and growing
There are also some regions limited to specific accounts:
- AWS GovCloud (US)
- AWS (China)
The GovCloud region is limited to US government agencies and organization accounts. The China account allows you access to the Beijing region only.
AWS Availability Zones are physical data centers located within regions. Amazon maintains an unofficial list of Availability Zones, which breaks down each region.
Each Availability Zone is isolated from another within the same region. This includes isolation from power, network, and other infrastructure or resources. For example, if you launch an EC2 instance, you can choose the Availability Zone or allow AWS to select one automatically. A zone has a unique identifier, e.g.,
us-east-1a. This is made up of the region code (
us-east-1) followed by the zone identifier (
And multiple data centers can back one Availability Zone. For example, two EC2 users could launch an instance in the zone
us-east-1a, but both instances might be running in different datacenters. Some data centers within a zone can be connected using a private network link that uses these connections for data replication by AWS for data services such as Amazon RDS or DynamoDB.
When using EC2, you can find your regions and Availability Zones through the AWS dashboard. This will allow you to see which regions and Availability Zones that are available to your account.
What you need to know
As we mentioned before, using Availability Zones can provide much higher fault tolerance and availability. It is crucial that you understand this as a Solutions Architect, and this is a concept you will see over and over in AWS Certifications.
For example, let’s say that we are deploying an application on AWS. This application needs to have high uptime because each minute that it goes down costs us thousands of dollars. If we deploy this application in a single AZ, and that AZ goes down for whatever reason (which does happen sometimes), then our application goes down and we have no control over how long it stays down for.
That scenario is avoidable by distributing our application and its infrastructure across multiple AZs. Then, even if one AZ goes down, our application can continue serving traffic.
Now if a region goes down, your application will still go down. That’s why some organizations take it a step further and use multiple regions to host the application and infrastructure. Thankfully, the odds of an entire region going down are quite low, so for many small scale businesses, this level of availability is acceptable.
Because keep in mind that all of this comes at a cost. You end up having to use more resources, and you have to design your applications with this in mind.
Regions and availability zones are one of the most basic, yet most important, concepts on the AWS platform. Building knowledge of availability zones is a great place to start learning about AWS and is also key to understanding more complex topics like high availability and fault tolerance. If you’d like to learn more about AWS, check out our AWS Essentials course and start a 7-day free trial for full access to the course.