An AWS region is a geographically separate area containing multiple connected data centers and regional service endpoints. Regions operate independently: data does not transfer between them automatically, and most AWS services require an explicit region selection. section 3.5 section 13.2.5
Choose a region by weighing:
- Latency: place infrastructure near users to reduce distance and improve response times. section 3.5
- Compliance: verify that storing and processing data in the chosen country is permitted. section 3.5
- Service availability: confirm that every planned AWS service exists in the region. section 3.5
- Cost: compare service prices because charges vary between regions. section 3.5
Each region contains multiple availability zones. An availability zone consists of at least one isolated data center, allowing resources to be distributed across separate locations within the region for higher availability. Zone names combine the region identifier with a letter, such as us-east-1a. section 13.2.5
Moving an application closer to Australian users
Suppose an application runs only in N. Virginia (us-east-1), while Australian customers report slow loading times. Launching an additional virtual machine in Asia Pacific (Sydney), ap-southeast-2, places infrastructure closer to those users. In the Management Console, select the current region name and choose Asia Pacific (Sydney). section 3.5
$ aws ec2 describe-regions #1
{
"Regions": [
{
"Endpoint": "ec2.eu-north-1.amazonaws.com", #2
"RegionName": "eu-north-1", #3
"OptInStatus": "opt-in-not-required" #4
},
{
"Endpoint": "ec2.ap-south-1.amazonaws.com",
"RegionName": "ap-south-1",
"OptInStatus": "opt-in-not-required"
},
[...]
{
"Endpoint": "ec2.us-west-2.amazonaws.com",
"RegionName": "us-west-2",
"OptInStatus": "opt-in-not-required"
}
]
}
Use the AWS CLI to list regions available to the account and inspect each region's endpoint and opt-in status. section 13.2.5
$ aws ec2 describe-availability-zones --region $Region #1
{
"AvailabilityZones": [
{
"State": "available",
"OptInStatus": "opt-in-not-required",
"Messages": [],
"RegionName": "us-east-1", #2
"ZoneName": "us-east-1a", #3
"ZoneId": "use1-az1", #4
"GroupName": "us-east-1",
"NetworkBorderGroup": "us-east-1",
"ZoneType": "availability-zone"
},
{
"State": "available",
"OptInStatus": "opt-in-not-required",
"Messages": [],
"RegionName": "us-east-1",
"ZoneName": "us-east-1b",
"ZoneId": "use1-az2",
"GroupName": "us-east-1",
"NetworkBorderGroup": "us-east-1",
"ZoneType": "availability-zone"
},
[...]
{
"State": "available",
"OptInStatus": "opt-in-not-required",
"Messages": [],
"RegionName": "us-east-1",
"ZoneName": "us-east-1f",
"ZoneId": "use1-az5",
"GroupName": "us-east-1",
"NetworkBorderGroup": "us-east-1",
"ZoneType": "availability-zone"
}
]
}
After choosing a region, use the AWS CLI to list its availability zones and identify where resources can be distributed. section 13.2.5

