标签 Tag 是什么
标签是贴在云资源上的键值对(Key:Value),用来表达资源归属关系:属于哪个项目、什么环境、谁负责。它不改变资源功能,但决定账单能否按维度拆开、自动化脚本能否批量命中、权限能否按范围收紧。三家云的语法基本一致:一个资源上同一个 Key 只能有一个值,不同 Key 可以有多个。
基本信息
| 结构 | Key:Value,如 env=prod、team=payment、app=gateway |
|---|---|
| 能力 | 成本分账、资源检索、批量运维、按标签授权 |
| 限制 | 单资源标签数量有上限,同一 Key 只能一个值 |
| 继承 | 部分资源支持创建时继承父资源标签,各厂差异较大 |
| 命名规范 | 统一小写与固定枚举值,避免同义异写 |
| 生效范围 | 标签随资源存在,资源删除后不再计入分账 |
推荐标签维度
| 键 | 取值示例 | 用途 |
|---|---|---|
| env | prod、staging、dev | 环境隔离与分账 |
| team | payment、search | 成本归属到团队 |
| app | gateway、order | 按应用聚合成本与检索 |
| owner | 邮箱或工号 | 故障找人、变更审批 |
| cost-center | 成本中心编号 | 财务口径对账 |
批量打标签(阿里云 CLI)
批量打标签(阿里云 CLI)
# 给多台实例打同一组标签
aliyun ecs TagResources --RegionId cn-hangzhou --ResourceId.1 i-xxxx --ResourceId.2 i-yyyy --Tag.1.Key env --Tag.1.Value prod --Tag.2.Key team --Tag.2.Value payment
# 按标签过滤资源
aliyun ecs DescribeInstances --RegionId cn-hangzhou --Tag.1.Key env --Tag.1.Value prod
# 解绑某个键
aliyun ecs UntagResources --RegionId cn-hangzhou --ResourceId.1 i-xxxx --TagKey.1 env典型使用场景
- 月度账单按项目或团队拆分,要求所有计费资源带统一标签
- 批量运维脚本用标签筛选目标机器,不再手工维护 IP 列表
- 新成员按标签授权,只放开某个环境或某个项目的资源
- 资源巡检与回收:找出没有 owner 标签的闲置实例
- 迁移或下线时按 app 标签整体圈定变更范围
标签是分账报表的聚合维度,规范先行比事后补打省一个量级的工作量;枚举值一旦定下来就固化进 IaC 模板,避免人工输入产生变体。
同一资源上同一个 Key 只能有一个值,想同时表达两个团队或两个环境,必须换一个 Key 名,而不是重复使用同一个 Key。
用标签做权限控制前,先确认该平台支持按标签授权,并注意修改标签会直接改变权限范围,这类操作应纳入审计。