Understanding AWS Regions vs. Availability Zones
Even when using the cloud, a physical data center still houses your data. The location of a data center can influence the latency, resiliency, and cost of a cloud workload. So choosing a location should not be taken lightly.
In AWS, you can specify where workloads run with AWS Regions and Availability Zones (AZ). Both allow cloud administrators to increase the reliability of workloads across geography. Learn the basics of AWS Regions and AZs, their differences, and how they affect your workloads.
What is an AWS Region?
An AWS Region is a cluster of data centers in a specific geographic area, such as the Northeastern United States or Western Europe. It is recommended to choose a region geographically close to the users; this reduces latency because data reaches users faster.
Each AWS Region includes multiple AZs. However, each AZ is limited to a specific AWS Region. You can use multiple AZs in a single region, but you cannot use the same AZ in multiple regions.
What is an AWS Availability Zone?
An AZ is a stand-alone data center or collection of data centers within a region. Each AZ operates independently, so a failure in one will not affect the others. In disaster recovery plans, companies use multiple Availability Zones to increase redundancy and reliability.
AZs should not be confused with AWS Local Zones, which are extensions of a Region. Local areas allow you to choose more specific geographic locations, such as Boston or Los Angeles. They are not designed to increase workload redundancy. They are useful if your users are concentrated in a relatively small area, as they help reduce latency and meet stringent compliance requirements.
List of AWS Regions and AZs
As of April 2022, AWS offers 26 launched Regions and 84 AZs (see table below). Configurations are subject to change.
|Region name||Area code||Number of AZs|
|US East (N. Virginia)||us-is-1||6|
|US East (Ohio)||us-is-2||3|
|US West (Oregon)||us-west-2||4|
|US West (Northern California)||us-west-1||3|
|AWS GovCloud (US East)||us-gov-east-1||3|
|AWS GovCloud (US-West)||us-gov-west-1||3|
|South America (Sao Paulo)||its-is-1||3|
|Middle East (Bahrain)||me-south-1||3|
|Africa (Cape Town)||af-south-1||3|
|Asia-Pacific (Hong Kong)||ap-est-1||3|
|Mainland China (Beijing)||cn-north-1||3|
|Mainland China (Ningxia)||cn-northwest-1||3|
Availability Zones in a region are named by a letter — for example, Availability Zone A or Availability Zone B. The code for an Availability Zone is its region code followed by its specific letter. For example, the code for Availability Zone A in US East (N. Virginia) would be us-east-1a.
To check which Availability Zones are available in each region, use the command aws ec2 describe-availability-zones –region $REGION.
Compare AWS Regions and Availability Zones
Regions and AZs both isolate cloud workloads based on geographic location. They also use mirroring to increase the redundancy and availability of a workload. This ensures that workloads will remain available in the event of an AZ failure. The same is true for workloads running in multiple cloud regions.
Beyond this similarity, regions and AZs have different implications for how your cloud environment works and how much it costs.
Whether you use multiple regions or AZ, you may end up with a higher overall cloud computing bill. In addition to the cost of hosting redundant workloads, you also incur data egress charges when you move data between regions.
It’s easier to predict and optimize costs if you keep all workloads in the same region. AWS prices most services by region. The cost of a given service is the same as long as it is hosted in a given region, regardless of which AZ you use in that region.
When you use multiple regions, it becomes more difficult to predict costs. The price of an EC2 instance in one region may be higher or lower than running the same type of instance in another region. For example, compare the costs of the c6a.large On-Demand Instance, in April 2022:
- $0.0765 in the US East (N. Virginia) region
- $0.0848 in Western US (Northern California)
Configuring workloads for multiple AZs is easier than configuring them for multiple regions. For most AWS services, you can add or remove AZs in the AWS console; you just need to change the AZ settings. With regions, you will typically need to deploy and configure your workloads separately for each region you want to use.
When to Use Regions vs. AZs
In general, if you are only looking for increased workload redundancy, AZs are the way to go. They are easier to manage both from a cost and administrative point of view. They also provide the same level of redundancy as multiple regions.
The primary use cases for multiple AWS Regions are for disaster recovery and serving users in discrete locations. It also provides high availability and greater fault tolerance.