标签由一组键值对组成,可以用于标记ECI实例。您可以使用标签来分组管理ECI实例,便于筛选和批量操作。本文介绍如何为ECI Pod绑定自定义标签(Tag),以便后续可以基于标签管理ECI Pod,例如基于标签进行费用分析。
背景信息
标签(Tag)是一组键值对,功能与Label类似,是阿里云提供的用于标识云资源,实现分类管理资源的功能。通过阿里云容器服务Kubernetes版创建的ECI实例默认带有以下标签:
ManagedBy:集群类型。
ClusterId:集群ID。
NameSpace:集群的命名空间。
OwnerReferenceKind:集群下创建的负载类型,例如Deployment、Job等。
OwnerReferenceName:集群下创建的负载名称,例如Deployment name、Job name等。
PodName:Pod名称。
配置说明
您可以通过k8s.aliyun.com/eci-custom-tags
的Annotation为ECI Pod绑定自定义标签,最多可以绑定3个标签。标签键和标签值之间用半角冒号隔开,多个标签之间用半角逗号隔开。
Annotation请添加在Pod的metadata下,例如:创建Deployment时,Annotation需添加在spec>template>metadata下。
仅支持在创建ECI Pod时添加ECI相关Annotation来生效ECI功能,更新ECI Pod时添加或者修改ECI相关Annotation均不会生效。
配置示例如下:
apiVersion: apps/v1
kind: Deployment
metadata:
name: test
labels:
app: test
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
name: nginx-test
labels:
app: nginx
alibabacloud.com/eci: "true"
annotations:
k8s.aliyun.com/eci-custom-tags : "env:test,name:alice" #绑定标签
spec:
containers:
- name: nginx
image: registry.cn-shanghai.aliyuncs.com/eci_open/nginx:1.14.2
ports:
- containerPort: 80
配置完成后,您可以通过kubectl describe
命令查询Pod详情,从Annotation中可以查看k8s.aliyun.com/eci-custom-tags
的值,即自定义标签。
如果想要更加直观地查看ECI Pod绑定的标签信息,可在弹性容器实例控制台的容器组页面查看。