Руководство: Добавление пула узлов Azure Linux с функцией OS Guard (предварительная версия) в существующий кластер Azure Kubernetes Service (AKS)

Note

Azure Linux с OS Guard (предварительная версия) заменяется на Azure Container Linux (ACL).

Azure Контейнер Linux — это долгосрочная неизменяемая, оптимизированная для контейнеров операционная система Linux (OS) для Azure Kubernetes Service (AKS). Она обеспечивает безопасную, минималистичную и операционно согласованную хостовую ОС, предназначенную для запуска контейнеризованных рабочих нагрузок в большом масштабе.

Дополнительные сведения см. в обзоре Azure Container Linux (ACL).

В AKS узлы с той же конфигурацией группируются в пулы узлов. Каждый пул узлов содержит виртуальные машины (ВМ), которые запускают ваши приложения. В предыдущем руководстве вы создали azure Linux с кластером OS Guard с одним пулом узлов. Для удовлетворения различных требований к вычислительным ресурсам, хранилищу или безопасности приложений можно добавить пулы узлов пользователей.

В этом руководстве, часть 2 из пяти, вы узнаете, как:

  • Добавьте Azure Linux с пулом узлов OS Guard в существующий кластер.
  • Проверьте состояние пулов узлов.

Команды в этом руководстве используют переменные среды, заданные в Tutorial 1. Создание кластера с Azure Linux с OS Guard для AKS.

В последующих руководствах вы узнаете, как перенести узлы в Azure Linux с ПОМОЩЬЮ OS Guard и включить телеметрию для мониторинга кластеров.

Необходимые условия

Azure Linux: особенности и ограничения OS Guard

Прежде чем начать, ознакомьтесь со следующими рекомендациями и ограничениями для Azure Linux с OS Guard (предварительная версия):

  • Для работы с Azure Linux и OS Guard требуется версия Kubernetes 1.32.0 или выше.
  • Все образы Azure Linux с OS Guard включают в себя Федеральный стандарт обработки информации (FIPS) и доверенный запуск.
  • Azure CLI и шаблоны ARM являются единственными поддерживаемыми методами развертывания для Azure Linux с OS Guard в AKS в предварительной версии. PowerShell и Terraform не поддерживаются.
  • Образы Arm64 не поддерживаются в Azure Linux с OS Guard на AKS в режиме предварительной версии.
  • NodeImage и None являются единственными поддерживаемыми каналами обновления операционной системы (ОС) для Azure Linux с OS Guard в AKS. Unmanaged и SecurityPatch несовместимы с Azure Linux с OS Guard из-за неизменяемого каталога /usr.
  • Потоковая передача артефактов не поддерживается.
  • Песочница Pod не поддерживается.
  • Конфиденциальные виртуальные машины (CVM) не поддерживаются.
  • Виртуальные машины 1-го поколения не поддерживаются.

Добавьте пул узлов Azure Linux с защитой ОС Guard

Добавьте Azure Linux с пулом узлов OS Guard в существующий az aks nodepool add кластер с помощью команды и укажите --os-sku AzureLinuxOSGuard. Включение FIPS, secure boot и vtpm также требуется для использования Azure Linux с OS Guard. В следующем примере создается пул узлов с именем osgNodePool , который добавляет три узла в кластер:


az aks nodepool add \
    --resource-group $RESOURCE_GROUP \
    --cluster-name $CLUSTER_NAME \
    --name osgNodePool \
    --node-count 3 \
    --os-sku AzureLinuxOSGuard
    --node-osdisk-type Managed 
    --enable-fips-image 
    --enable-secure-boot 
    --enable-vtpm

Пример выходных данных:

{
  "agentPoolType": "VirtualMachineScaleSets",
  "count": 3,
  "name": "osgNodePool",
  "osType": "Linux",
  "provisioningState": "Succeeded",
  "resourceGroup": "testAzureLinuxOSGuardResourceGroupxxxxx",
  "type": "Microsoft.ContainerService/managedClusters/agentPools"
}

Note

Имя пула узлов должно начинаться с буквы в нижнем регистре и может содержать только буквенно-цифровые символы. Для пулов узлов Linux длина должна быть от одного до 12 символов.

Проверка состояния пула узлов

Проверьте состояние пулов узлов с помощью az aks nodepool list команды.

az aks nodepool list --resource-group $RESOURCE_GROUP --cluster-name $CLUSTER_NAME

Пример выходных данных:

[
  {
    "agentPoolType": "VirtualMachineScaleSets",
    "availabilityZones": null,
    "count": 3,
    "enableAutoScaling": false,
    "enableEncryptionAtHost": false,
    "enableFips": false,
    "enableNodePublicIp": false,
    "id": "/subscriptions/REDACTED/resourcegroups/myAKSResourceGroupxxxxx/providers/Microsoft.ContainerService/managedClusters/myAKSClusterxxxxx/agentPools/npxxxxxx",
    "maxPods": 110,
    "mode": "User",
    "name": "npxxxxxx",
    "nodeImageVersion": "AzureLinuxContainerHost-2025.10.03",
    "orchestratorVersion": "1.32.6",
    "osDiskSizeGb": 128,
    "osDiskType": "Managed",
    "osSku": "AzureLinux",
    "osType": "Linux",
    "powerState": {
      "code": "Running"
    },
    "provisioningState": "Succeeded",
    "resourceGroup": "myAKSResourceGroupxxxxx",
    "type": "Microsoft.ContainerService/managedClusters/agentPools",
    "vmSize": "Standard_DS2_v2"
  },
  {
    "agentPoolType": "VirtualMachineScaleSets",
    "availabilityZones": null,
    "count": 3,
    "enableAutoScaling": false,
    "enableEncryptionAtHost": false,
    "enableFips": false,
    "enableNodePublicIp": false,
    "id": "/subscriptions/REDACTED/resourcegroups/myAKSResourceGroupxxxxx/providers/Microsoft.ContainerService/managedClusters/myAKSClusterxxxxx/agentPools/npxxxxxx",
    "maxPods": 110,
    "mode": "User",
    "name": "npxxxxxx",
    "nodeImageVersion": "AzureLinuxOSGuard-2025.10.03",
    "orchestratorVersion": "1.32.6",
    "osDiskSizeGb": 128,
    "osDiskType": "Managed",
    "osSku": "AzureLinuxOSGuard",
    "osType": "Linux",
    "powerState": {
      "code": "Running"
    },
    "provisioningState": "Succeeded",
    "resourceGroup": "myAKSResourceGroupxxxxx",
    "type": "Microsoft.ContainerService/managedClusters/agentPools",
    "vmSize": "Standard_DS2_v2"
  }
]

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

В этом руководстве вы добавили в существующий кластер пул узлов Azure Linux с функцией OS Guard. В следующем руководстве вы узнаете, как перенести существующие узлы в Azure Linux с OS Guard.