探索 AWS 区域与资源标识

Beginner
立即练习

介绍

一个报告应用在不同区域需要各自的标签。你将查看已准备好的东部设置,创建西部对应设置,并对照它们的资源身份。

请先完成 在 LabEx 上开始学习 AWS。本实验将用到其中的 Terminal、AWS CLI、身份、参数和 AWS View 基础知识。本实验独立开始:工具与连接已准备好,不复用之前的文件、资源或凭据。

Parameter Store 用于保存具名设置。你的 /labex/onboarding/service-label 是普通 String 字符串,不是秘密。每个区域都已存在一条与本任务无关的 /labex/reference/team 参数,请保留它。AWS View 显示的资源与你通过 CLI 查询的资源相同。

认证考点

认证 考点 本实验练习
Cloud Practitioner (CLF-C02) 任务 3.2 区域、区域资源范围与资源身份。
Solutions Architect – Associate (SAA-C03) 任务 1.1 区域、区域资源范围与资源身份。

实验概览

概念图: 两个 Region 中的同名参数是独立资源,分别具有自己的值和 ARN。

观察一个区域资源

在本步骤中,你将找到已准备好的设置,并观察它不会自动出现在另一个区域。

在上一个实验中,每次请求都使用同一个地点。团队可能在世界各地靠近用户的地点运行应用,因此你需要选择命令影响哪个地点。AWS 区域(Region)是运行服务的地理区域。us-east-1 是美国东部(弗吉尼亚北部)的代码;us-west-2 是美国西部(俄勒冈)的代码。--region 选项指定本次请求在哪个区域执行。已准备好的东部设置位于 us-east-1。

同一个账户在两个区域拥有名称相同、彼此独立的设置 — 概念图:这些设置属于不同区域。创建其中一个设置不会将它复制到另一个区域。

读取已准备好的东部设置:

aws ssm get-parameter --name /labex/onboarding/service-label --region us-east-1

它的值为 finance-east,版本为 1。在 AWS View 中,它位于 us-east-1。再查看西部清单:

aws ssm describe-parameters --region us-west-2

西部只有 /labex/reference/team。东部设置没有被复制过去。接下来,用已经学过的创建命令准备西部配置。

在另一个区域创建同名资源

在本步骤中,你将在第二个区域创建同名参数,并观察两个资源如何保持独立。

在官方 Console 中,Region 菜单用于选择查看哪个地点。菜单中的名称和代码与 CLI 的 --region 选项对应:

官方 Console 的 Region 菜单显示弗吉尼亚北部 us-east-1 和俄勒冈 us-west-2 — 来源:AWS Console 指南 — https://docs.aws.amazon.com/pdfs/hands-on/latest/getting-started-with-aws-management-console/getting-started-with-aws-management-console.pdf。

现在创建西部应用的标签。它使用与之前相同的名称,但 --region 和值不同:

aws ssm put-parameter \
  --name /labex/onboarding/service-label \
  --type String \
  --value finance-west \
  --region us-west-2

响应再次包含 "Version": 1。这是西部区域中的新资源,并不是东部资源的第 2 个版本。

读取各自保存的值。get-parameter 向服务请求指定名称的资源:

aws ssm get-parameter --name /labex/onboarding/service-label --region us-east-1
aws ssm get-parameter --name /labex/onboarding/service-label --region us-west-2

两个响应都包含一个 Parameter 对象,其中有 Name、Type、Value、Version 和 ARN。比较值:东部返回 finance-east,西部返回 finance-west。名称相同。ARN 是完整的资源标识;现在先注意其中一个包含 us-east-1,另一个包含 us-west-2。下一步会解释其余部分。AWS View 显示两个独立的区域卡片。资源出现在一个区域,并不代表它也存在于另一个区域。

同名参数在不同区域具有不同的值和 ARN

这个示例同时展示东部和西部资源。账户标识和值均为示例,请使用你自己的查询返回的实际字段。

对照两个资源的身份

在本步骤中,你将通过 ARN 区分两个同名设置。

Amazon Resource Name(ARN,亚马逊资源名称)用于标识一个资源。在 AWS View 中,找到东部设置下方的 ARN。对于这个参数,它的形式如下:

arn:aws:ssm:us-east-1:ACCOUNT_ID:parameter/labex/onboarding/service-label

ARN 标识服务、区域、账户和资源名称 — 只需阅读识别这个参数所需的部分,无需记住整个格式。

现在先找到服务(ssm)、区域(us-east-1)、账户 ID 和参数名称。对比西部 ARN:虽然名称相同,但区域不同。你在准备实验中看到的调用者 ARN 标识一个用户;这里的 ARN 标识一个配置资源。你不需要记住 ARN 格式。

aws ssm get-parameter --name /labex/onboarding/service-label --region us-east-1
aws ssm get-parameter --name /labex/onboarding/service-label --region us-west-2

再读取两个设置,对照区域、账号和资源名称。名称与账号相同,但区域和 ARN 不同,各自的值属于各自的区域资源。这里无需更新或删除配置。接下来,我们将学习从更大的清单中找到需要的设置。

总结

你找到了区域设置,在另一个区域创建同名配置,并比较了值与 ARN。仅凭熟悉的名称还不足以确定资源。接下来,从混合清单中找到正确的设置。

进一步阅读 AWS 官方资料:ARN 字段与资源身份.