添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

如果你有多个节点池,可能希望在创建节点池期间添加标签。 Kubernetes 标签 处理节点的计划规则。 可以随时将标签添加到节点池,并将其应用于该节点池的所有节点。

在本操作指南中,你会了解如何在 Azure Kubernetes 服务 (AKS) 群集中使用标签。

需要安装并配置 Azure CLI 2.2.0 或更高版本。 运行 az --version 即可查找版本。 如果需要进行安装或升级,请参阅 安装 Azure CLI

创建带标签的 AKS 群集

  • 使用 az aks create 命令创建具有标签的 AKS 群集,并指定 --node-labels 参数以设置标签。 标签必须是键/值对,并采用 有效的语法

    az aks create \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --node-count 2 \
        --nodepool-labels dept=IT costcenter=9000 \
        --generate-ssh-keys
    
  • 使用kubectl get nodes --show-labels命令验证是否已设置标签。

    kubectl get nodes --show-labels | grep -e "costcenter=9000" -e "dept=IT"
    

    创建带标签的节点池

  • 使用az aks nodepool add命令创建具有标签的节点池, 并为--name参数指定--labels参数的名称和标签。 标签必须是键/值对,并采用有效的语法

    以下示例命令创建名为labelnp的节点池,其标签 为dept=HRcostcenter=5000

    az aks nodepool add \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name labelnp \
        --node-count 1 \
        --labels dept=HR costcenter=5000 \
        --no-wait
    

    az aks nodepool list 命令中的以下示例输出显示 labelnp 正在创建具有指定 nodeLabels 的节点:

    "count": 1, "name": "labelnp", "orchestratorVersion": "1.15.7", "provisioningState": "Creating", "nodeLabels": { "costcenter": "5000", "dept": "HR"
  • 使用kubectl get nodes --show-labels命令验证是否已设置标签。

    kubectl get nodes --show-labels | grep -e "costcenter=5000" -e "dept=HR"
    

    更新现有节点池上的标签

  • 使用az aks nodepool update命令更新现有节点池上的标签。 更新现有节点池上的标签会使用新标签覆盖旧标签。 标签必须是键/值对,并采用有效的语法

    az aks nodepool update \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name labelnp \
        --labels dept=ACCT costcenter=6000 \
        --no-wait
    
  • 使用kubectl get nodes --show-labels命令验证是否已设置标签。

    kubectl get nodes --show-labels | grep -e "costcenter=6000" -e "dept=ACCT"
    

    不可用的标签

    保留的系统标签

    2021-08-19 AKS 版本开始,AKS 停用了对 AKS 保留的标签进行更改的功能。 尝试更改这些标签会导致出现错误消息。

    以下标签是 AKS 保留的标签。 “虚拟节点用途”指定这些标签是否可以用作虚拟节点上的受支持系统功能。 这些系统功能更改的一些属性在虚拟节点上不可用,因为它们需要修改主机。

    示例/选项 虚拟节点用途
  • “相同”是指标签的预期值在标准节点池和虚拟节点池中没有差别。 由于虚拟节点 pod 不公开任何基础虚拟机 (VM),因此 VM SKU 值已替换为 SKU“虚拟”。
  • 虚拟节点版本指的是虚拟 Kubelet-ACI 连接器的当前版本。
  • “虚拟节点子网名称”是虚拟节点 pod 从中部署到 Azure 容器实例 (ACI) 的子网的名称。
  • 虚拟节点虚拟网络 是虚拟网络的名称,包含了虚拟节点 pod 在其中通过 ACI 部署的子网。
  • 保留的前缀

    以下前缀是 AKS 保留的前缀,不能用于任何节点:

  • kubernetes.azure.com/
  • kubernetes.io/
  • 有关预留前缀的详细信息,请参阅 Kubernetes 的已知标签、注释和排斥

    已弃用的标签

    随着 Kubernetes v1.24 的发布,已计划弃用以下标签。 应将任何标签引用更改为引用建议的替代标签。

    建议的替代品 Maintainer
  •