AWS Resource Groups & Tag Editor - Runbook 与参考¶
English · GitHub source 事实核对时间(对照 AWS 官方文档):2026-08-19
概述¶
AWS Resource Groups 让你将 AWS 资源(EC2 实例、CloudFormation 栈、S3 桶等)组织成组,从而一次性查看和管理大量资源。Tag Editor 让你按标签搜索资源,并批量添加、删除或替换标签。两者共同支撑标签最佳实践、成本分配和自动化。
核心概念¶
- 资源(Resource):你可以在 AWS 中操作的实体(例如 EC2 实例、CloudFormation 栈或 S3 桶)。
- 标签(Tags):用于组织资源的键值对元数据;用于计费和管理。不要在标签中存放 PII 或机密数据。
- 资源组(Resource group):同一区域中匹配某个查询的资源集合。
- 基于标签:成员资格来自资源类型和标签查询(AND 语义)。
- 基于 CloudFormation 栈:成员资格来自单个栈(可选限制为栈内资源类型)。
- 服务关联(Service-linked):部分服务自己定义和管理资源组。
- 嵌套:资源组可包含同一区域中的其他资源组。
- Tag Editor:按标签/资源类型搜索受支持资源并批量编辑标签。
- 权限:Resource Groups 权限是账户级的;具备相应 IAM 权限的主体即可使用资源组。
常用操作(AWS CLI)¶
# 创建基于标签的资源组
aws resource-groups create-group --name prod-ec2 \
--resource-query '{"Type":"TAG_FILTERS_1_0","Query":"{\"ResourceTypeFilters\":[\"AWS::EC2::Instance\"],\"TagFilters\":[{\"Key\":\"Env\",\"Values\":[\"prod\"]}]}"}'
# 列出和获取资源组
aws resource-groups list-groups
aws resource-groups get-group --group-name prod-ec2
# 用 Tag Editor(resourcegroupstaggingapi)批量打标签
aws resourcegroupstaggingapi get-resources --tag-filters Key=Env,Values=prod
aws resourcegroupstaggingapi tag-resources \
--resource-arn-list arn:aws:ec2:us-east-1:123456789012:instance/i-0123456789abcdef0 \
--tags Owner=platform
aws resourcegroupstaggingapi get-tag-values --key Env
最佳实践¶
- 定义全公司标签规范(环境、所有者、成本中心、应用),并用 Organizations 标签策略强制。
- 用标签做成本分配:在 Billing 激活成本分配标签,使 Cost Explorer 按标签分组。
- 用基于标签的资源组做运维视图(按环境或应用)和批量操作。
- 标签中绝不放敏感数据;标签是计费和管理可见的元数据。
- 清理过期标签,并对新资源强制必填标签(创建时打标签策略)。
- 将 Resource Groups 与 Systems Manager 结合,对分组实例批量执行命令/补丁。
故障排查¶
| 症状 | 检查与处理 |
|---|---|
| 资源组返回空 | 检查标签拼写/值、资源类型,以及资源是否在同一区域。 |
| 标签未应用 | 确认资源支持打标签,以及 IAM 对该服务打标签 API 的权限。 |
| 成本未按标签分组 | 在 Billing 中为账户激活成本分配标签。 |
| Tag Editor 搜索为空 | 放宽资源类型过滤;Tag Editor 按区域索引受支持资源。 |
| 跨服务资源组为空 | 确认所选类型对应的每个服务都支持 Resource Groups 查询。 |
配额¶
每账户资源组数、每资源标签数和 API 请求速率有限制。以 AWS Resource Groups 配额页面和 Service Quotas 控制台为准。