View a markdown version of this page

AZ ID - AWS 区域和可用区

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

AZ ID

最初,我们决定独立地将可用区映射到每个可用区中的代码 AWS 账户。这样可以确保资源分布在这些区域的可用区域中,即使大多数客户选择了该地区的第一个可用区也是如此。us-east-1a例如,您的位置 AWS 账户 可能与另一个us-east-1a的物理位置不同 AWS 账户。随着对客户使用模式的更多 AWS 了解以及 AWS 不断发展,我们确定没有必要继续独立地将可用区映射到代码。2012 年 11 月之后推出的所有区域都使用统一的可用区域映射到代码。

要协调所有区域中账户间的可用区,即使是那些独立映射可用区的账户,也要使用 AZ ID,它们是可用区的唯一且一致的标识符。例如,use1-az1 是 us-east-1 区域的 AZ ID,它在每个 AWS 账户中的实际位置均相同。您可以查看您账户的可用区 ID,以确定您的资源相对于另一个账户中的资源所在的实际位置。例如,如果您在 AZ ID 为 use1-az2 的可用区中与另一个账户共享一个子网,则在 AZ ID 也为 use1-az2 的可用区中该账户便可使用这一子网。

要查看您的账户的 AZ ID,请查看 EC2 控制面板上的服务运行状况面板或使用 describe-ailability-z ones 命令。 AWS CLI

下图展示了可用区代码到可用区 ID 有着不同映射的两个账户。

可用区代码到可用区 ID 有着不同映射的两个账户。

具有独立映射可用区的区域

在以下区域中,对于 2025 年 11 月之前创建的账户,我们会单独将可用区域映射到每个 AWS 账户的代码。从 2025 年 11 月开始创建的账户将获得映射到代码的相同可用区域。所有其他区域都使用统一映射。

  • 美国东部(弗吉尼亚北部)

  • 美国西部(北加利福尼亚)

  • 美国西部(俄勒冈)

  • 亚太地区(新加坡)

  • 亚太地区(悉尼)

  • 亚太地区(东京)

  • 欧洲(爱尔兰)

  • 南美洲(圣保罗)

  • AWS GovCloud (US-West)

示例命令

以下 AWS CLI 命令演示如何获取有关您账户的 AZ ID 的信息。

使用 CLI 列出可用区名称和 ID

使用以下 describe-availability- zones 命令描述当前区域的可用区域。要描述不同区域的可用区域,请添加--region选项。

aws ec2 describe-availability-zones --query "AvailabilityZones[].{Name:ZoneName,ID:ZoneId}" --output table

以下是美国东部(俄亥俄州)的输出示例。

---------------------------- | DescribeAvailabilityZones| +-----------+--------------+ | ID | Name | +-----------+--------------+ | use2-az1 | us-east-2a | | use2-az2 | us-east-2b | | use2-az3 | us-east-2c | +-----------+--------------+
使用实例元数据获取 AZ ID

您可以使用实例元数据来获取启动实例的可用区的 AZ ID。

IMDSv2
[ec2-user ~]$ TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \ && curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/placement/availability-zone-id
IMDSv1
[ec2-user ~]$ curl http://169.254.169.254/latest/meta-data/placement/availability-zone-id