Поделиться через


Использование меток кластера в AKS с поддержкой Azure Arc

Область применения: Локальная версия Azure, версия 23H2

Если у вас несколько пулов узлов, может потребоваться добавить метку во время создания пула узлов. Метки Kubernetes обрабатывают правила планирования узлов.

В этой статье описывается, как использовать метки в кластере Kubernetes в AKS, включенном Arc.

Создание кластера Kubernetes с меткой

  1. Создайте кластер Kubernetes с меткой с помощью az aksarc create команды и укажите параметр для задания --node-labels меток. Метки должны быть парой "ключ-значение" и иметь допустимый синтаксис.

    az aksarc create --resource-group myResourceGroup --name myAKSCluster --node-count 2 --nodepool-labels dept=IT
    
  2. Убедитесь, что метки были заданы с помощью kubectl get nodes --show-labels команды:

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

Создание пула узлов с меткой

  1. Создайте пул узлов с меткой с помощью az aksarc nodepool add команды и укажите имя --name параметров и меток для --labels параметра. Метки должны быть парой "ключ-значение" и иметь допустимый синтаксис.

    В следующем примере создается пул labelnp узлов с меткой dept=HR:

    az aksarc nodepool add --resource-group myResourceGroup --cluster-name myAKSCluster --name labelnp --node-count 1 --labels dept=HR –no-wait
    

    В следующем примере выходных данных команды az aksarc nodepool list показано, labelnp как пул узлов создает узлы с указанным:nodeLabels

    [
      {
        ...
        "count": 1,
        ...
        "name": "labelnp",
        "orchestratorVersion": "1.15.7",
        ...
        "provisioningState": "Creating",
        ...
        "nodeLabels":  {
          "costcenter": "5000",
          "dept": "HR"
        },
        ...
      },
     ...
    ]
    
  2. Убедитесь, что метки были заданы с помощью kubectl get nodes --show-labels команды:

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

Обновление меток в существующих пулах узлов

  1. Обновите метку в существующем пуле узлов с помощью команды az aksarc nodepool update . Обновление меток в существующих пулах узлов перезаписывает старые метки новыми метками. Метки должны быть парами "ключ-значение" и иметь допустимый синтаксис.

    az aksarc nodepool update --resource-group myResourceGroup --cluster-name myAKSCluster --name labelnp --labels dept=ACCT costcenter=6000 --no-wait
    
  2. Убедитесь, что метки были заданы с помощью kubectl get nodes --show-labels команды.

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

Недоступные метки

AKS, включенные Azure Arc, соответствуют тем же правилам, что и AKS:

  • Не удается изменить зарезервированную системную метку. При попытке сделать это возвращается ошибка.
  • Зарезервированные префиксы Kubernetes и AKS нельзя использовать для любого узла.

Дополнительные сведения см. в документации AKS по недоступным меткам .

Следующие шаги

Дополнительные сведения о метках Kubernetes см. в документации по Kubernetes.