更新时间:2024-12-18 GMT+08:00

设置标签与注解

Pod注解

Autopilot集群在创建Pod过程中提供了多种高级功能,您可以通过在控制台或YAML中添加注解(Annotation)来实现,具体可用的Annotation请参见表1

表1 Pod Annotation

功能及相关文档

参数

示例值

说明

为Pod配置QoS

kubernetes.io/ingress-bandwidth

100M

表示Pod的入口带宽大小。

用于控制进入Pod的数据传输速率,确保Pod具有处理外部请求的能力。

kubernetes.io/egress-bandwidth

100M

表示Pod的出口带宽大小。

用于控制Pod向外发送数据的速率,影响Pod与外部服务或用户之间的通信效率。

设置可用区亲和性

node.cce.io/node-az-list

cn-east-3a,cn-east-3b

表示Pod亲和的可用区列表。

可以通过设置工作负载注解实现可用区亲和,将Pod调度到指定的可用区。

增加Pod的临时存储容量

resource.cce.io/extra-ephemeral-storage-in-GiB

14

表示额外增加的Pod临时存储容量,单位GiB,取值范围:0-994。

每个Pod的实际临时存储容量=30GiB(默认免费提供的临时存储容量)+额外增加的临时存储容量。

说明:

1.28.6-r0和1.27.8-r0及以上版本的集群支持该功能,其他版本的集群需要升级才能实现。

您可通过控制台或YAML文件添加Annotation,具体步骤如下。

控制台添加Annotation

在控制台创建工作负载时,您可以通过“高级配置 > 标签与注解”,添加“Pod注解”,从而启用Pod的高级功能。

例如,为Pod增加14GiB的临时存储空间,可以将“Pod注解”设置为“resource.cce.io/extra-ephemeral-storage-in-GiB=14”,并单击“确认添加”

图1 为Pod增加临时存储空间

YAML中添加Annotation

通过YAML创建工作负载时您可以通过“annotations”参数,启用Pod的高级功能。

例如,创建Nginx工作负载时,您可以通过“annotations”为Pod增加14GiB的临时存储空间。

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx     # 工作负载名称
spec:
  replicas: 1     # 实例数量
  selector:
    matchLabels:  # 选择器,用于选择带有特定标签的资源
      app: nginx  
  template:
    metadata:
      labels:     # 标签
        app: nginx
      annotations:
        resource.cce.io/extra-ephemeral-storage-in-GiB: '14'
    spec:
      containers:
      - image: nginx:latest   # 镜像名称:镜像版本
        name: nginx
      imagePullSecrets:
      - name: default-secret

Pod标签

您可以通过Pod标签为Pod组织、选择和管理相关的资源,提高资源应用的灵活性和可维护性。

在控制台创建工作负载时,会默认为Pod添加如下标签,其中app的值为工作负载名称。

YAML示例如下:

...
spec:
  selector:
    matchLabels:
      app: nginx
      version: v1
  template:
    metadata:
      labels:
        app: nginx
        version: v1
    spec:
      ...