Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Note
Azure Linux с OS Guard (предварительная версия) заменяется на Azure Container Linux (ACL).
Azure Контейнер Linux — это долгосрочная неизменяемая, оптимизированная для контейнеров операционная система Linux (OS) для Azure Kubernetes Service (AKS). Она обеспечивает безопасную, минималистичную и операционно согласованную хостовую ОС, предназначенную для запуска контейнеризованных рабочих нагрузок в большом масштабе.
Дополнительные сведения см. в обзоре Azure Container Linux (ACL).
В этом руководстве, части третьей из пяти, вы переносите имеющиеся узлы на Azure Linux с OS Guard. Вы можете перенести существующие узлы с помощью одного из следующих методов:
- Удалите существующие пулы узлов и добавьте новые пулы узлов OS Guard.
- Выполните миграцию номера SKU операционной системы на месте.
Если у вас нет существующих узлов для миграции, перейдите к следующему руководству. В последующих руководствах вы узнаете, как включить телеметрию и мониторинг в кластерах и обновить 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 с кластером OS Guard. Если вы не завершили эти шаги и хотите следовать им, см. Руководство 1: Создание кластера с помощью Azure Linux с OS Guard для AKS.
- Вам нужна последняя версия Azure CLI. Используйте команду
az versionдля поиска версии. Чтобы обновить до последней версии, используйтеaz upgradeкоманду.
Установите расширение aks-preview Azure CLI
Important
Предварительные версии функций AKS доступны на условиях самообслуживания и по выбору пользователя. Предварительные версии предоставляются "как есть" и "при наличии". На них не распространяются соглашения об уровне обслуживания и ограниченная гарантия. Предварительные версии AKS сопровождаются частичной поддержкой клиентов на основе принципа лучших усилий. Как таковые, эти функции не предназначены для использования в производстве. Для получения дополнительной информации ознакомьтесь со следующими статьями поддержки:
aks-preview Установите расширение с помощью az extension add команды.
az extension add --name aks-preview
Обновите до последней версии расширения с помощью az extension update команды.
az extension update --name aks-preview
Регистрация флага компонента AzureLinuxOSGuardPreview
Зарегистрируйте флаг функции
AzureLinuxOSGuardPreviewс помощью командыaz feature register.az feature register --namespace "Microsoft.ContainerService" --name "AzureLinuxOSGuardPreview"Через несколько минут отобразится состояние Registered (Зарегистрировано).
Проверьте состояние регистрации с помощью
az feature showкоманды.az feature show --namespace "Microsoft.ContainerService" --name "AzureLinuxOSGuardPreview" ``Когда состояние показывает зарегистрировано, обновите регистрацию
Microsoft.ContainerServiceпоставщика ресурса с помощью командыaz provider register.az provider register --namespace "Microsoft.ContainerService"
Добавление Azure Linux с пулами узлов OS Guard и удаление существующих пулов узлов
Добавьте новый пул узлов Linux Azure с OS Guard с помощью
az aks nodepool addкоманды. Эта команда добавляет новый пул узлов в кластер с флагом--mode System, что делает его системным пулом узлов. Пулы системных узлов необходимы для Azure Linux с кластерами OS Guard.# Declare environment variables with a random suffix for uniqueness export RANDOM_SUFFIX=$(openssl rand -hex 3) export NODE_POOL_NAME="np$RANDOM_SUFFIX" # Add a new Azure Linux with OS Guard node pool az aks nodepool add --resource-group $RESOURCE_GROUP --cluster-name $CLUSTER_NAME --name $NODE_POOL_NAME --mode System --os-sku AzureLinuxOSGuard --node-osdisk-type Managed --enable-fips-image --enable-secure-boot --enable-vtpmПример выходных данных:
{ "id": "/subscriptions/xxxxx/resourceGroups/myResourceGroupxxx/providers/Microsoft.ContainerService/managedClusters/myAKSCluster/nodePools/systempool", "name": "systempool", "provisioningState": "Succeeded" }Удалите существующие узлы с помощью
az aks nodepool deleteкоманды.az aks nodepool delete --resource-group $RESOURCE_GROUP --cluster-name $CLUSTER_NAME --name $NODE_POOL_NAME
Миграция SKU ОС на месте
Ограничения для миграции SKU ОС в существующей системе
Существует несколько настроек, которые могут блокировать запрос на миграцию SKU операционной системы. Чтобы обеспечить успешную миграцию, ознакомьтесь со следующими рекомендациями и ограничениями:
- Функция миграции SKU ОС недоступна через PowerShell или портал Azure. При использовании функции миграции SKU ОС для Azure Linux (OS Guard Preview) эта возможность недоступна через Terraform, PowerShell или портал Azure.
- Функция миграции SKU ОС не поддерживает переименование существующих пулов узлов.
- Ubuntu, Azure Linux и Azure Linux с OS Guard являются единственными поддерживаемыми целевыми объектами миграции SKU ОС Linux.
- Доверенный запуск по умолчанию требуется для Azure Linux с OS Guard. Необходимо включить доверенный запуск для миграции в Azure Linux с OS Guard. Для этого может потребоваться создание новых пулов узлов.
- FIPS требуется при включении Azure Linux с OS Guard. Если вы сейчас не используете образ FIPS, можно включить
--enable-fipsв команду обновления пула узлов. - Виртуальные машины 1-го поколения не поддерживаются.
- SKU ОС Ubuntu с
UseGPUDedicatedVHDподдержкой не может выполнить миграцию SKU ОС. - Конфиденциальные виртуальные машины (CVM) не поддерживаются.
- Песочница Pod не поддерживается.
- Миграция SKU ОС Windows не поддерживается.
Предварительные требования для миграции SKU ОС на месте
- Существующий кластер AKS с по крайней мере одним пулом узлов Linux Azure.
- Рекомендуется убедиться, что рабочие нагрузки настраиваются и выполняются успешно на узле контейнера Azure Linux с ОС Guard, прежде чем пытаться использовать функцию миграции SKU ОС, развернув кластер Azure Linux с ОС Guard в среде разработки и продакшен и убедившись в том, что ваша служба остается в рабочем состоянии.
- Убедитесь, что функция миграции работает для вас в тестовой или dev среде перед тем как использовать процесс в рабочем кластере.
- Убедитесь, что для ваших подов задан достаточный Pod Disruption Budget (PDB), чтобы AKS могла перемещать поды между виртуальными машинами в процессе обновления.
- Вам потребуется Azure CLI версии 2.61.0 или более поздней. Используйте команду
az versionдля поиска версии. Чтобы обновить до последней версии, используйтеaz upgradeкоманду.
Переместите SKU операционной системы в пуле узлов вашего хоста контейнеров Azure Linux на Azure Linux с OS Guard.
Вы можете перенести существующие пулы узлов Ubuntu или Azure Linux в Azure Linux с OS Guard, изменив SKU ОС пула узлов, что инициирует процесс обновления кластера через стандартный процесс поэтапного обновления образа узла. Эта новая функция не требует создания новых пулов узлов; вместо этого существующие пулы узлов автоматически перезаписываются.
Мигрируйте SKU ОС вашего пула узлов на Azure Linux с OS Guard, используя команду az aks nodepool update. Эта команда инициирует пересборку пула узлов, обновляя SKU ОС пула узлов с Azure Linux на Azure Linux с OS Guard. Изменение SKU ОС запускает операцию немедленного обновления, которая занимает несколько минут.
az aks nodepool update --resource-group $RESOURCE_GROUP --cluster-name $CLUSTER_NAME --name $NODE_POOL_NAME --os-sku AzureLinuxOSGuard --node-osdisk-type Managed --enable-fips-image --enable-secure-boot --enable-vtpm
Пример выходных данных:
{
"id": "/subscriptions/xxxxx/resourceGroups/myResourceGroupxxx/providers/Microsoft.ContainerService/managedClusters/myAKSCluster/nodePools/nodepool1",
"name": "nodepool1",
"osSku": "AzureLinuxOSGuard",
"provisioningState": "Succeeded"
}
Note
При возникновении проблем во время миграции SKU ОС можно вернуться к предыдущему SKU ОС.