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


Автоматизация обновлений образов Kubernetes и узлов в нескольких кластерах с помощью Azure Kubernetes Fleet Manager (предварительная версия)

Администраторы платформы, управляющие большим количеством кластеров, часто имеют проблемы с промежуточными обновлениями нескольких кластеров (например, обновление образа ОС узла или версий Kubernetes) безопасным и предсказуемым способом. Чтобы устранить эту проблему, диспетчер флотов Azure Kubernetes (Fleet) позволяет управлять обновлениями в нескольких кластерах с помощью запусков обновлений.

Запуски обновлений состоят из этапов, групп и стратегий и могут применяться вручную, для однократных обновлений или автоматически для текущих регулярных обновлений с помощью профилей автоматического обновления. Все запуски обновлений (вручную или автоматизированные) выполняются в период обслуживания кластера-члена.

В этой статье описывается, как использовать профили автоматического обновления для автоматического запуска обновлений при наличии новых версий образов Kubernetes или узлов.

Внимание

Предварительные версии функций Azure Kubernetes Fleet Manager доступны на основе самообслуживания. Предварительные версии предоставляются "как есть" и "при наличии". На них не распространяются соглашения об уровне обслуживания и ограниченная гарантия. Предварительные версии Диспетчера флотов Azure Kubernetes частично охватываются поддержкой клиентов на основе лучших усилий. Следовательно, эти функции не предназначены для использования в рабочей среде.

Необходимые компоненты

  • Ознакомьтесь с концептуальным обзором профилей автоматического обновления, которые содержат описание конфигураций, указанных в этом руководстве.

  • У вас должен быть ресурс Fleet с одним или несколькими кластерами-членами. Если нет, выполните краткое руководство по созданию ресурса Fleet и присоединению кластеров Служба Azure Kubernetes (AKS) в качестве членов.

  • Если вы хотите использовать стратегию обновления, следует настроить ее с помощью инструкций, приведенных в статье об обновлении. Вам нужен идентификатор ресурса стратегии обновления для использования с профилем автоматического обновления.

  • Установите указанные ниже переменные среды.

    export GROUP=<resource-group>
    export FLEET=<fleet-name>
    export AUTOUPGRADEPROFILE=<upgrade-profile-name>
    # Optional
    export STRATEGYID=<strategy-id>
    export CLUSTER=<aks-cluster-name>
    
  • Вам нужна версия Azure CLI 2.61.0 или более поздняя. Чтобы выполнить установку или обновление Azure CLI, ознакомьтесь с этой статьей.

  • Вам также потребуется fleet расширение Azure CLI версии 1.3.0 или более поздней версии, которое можно установить, выполнив следующую команду:

    az extension add --name fleet
    

    Выполните следующую команду, чтобы обновить до последней версии выпущенного расширения:

    az extension update --name fleet
    

Примечание.

Автоматическое обновление запускается с учетом запланированных периодов обслуживания, установленных на уровне кластера AKS. Дополнительные сведения см. в статье плановое обслуживание в нескольких кластерах-членах, в которых объясняется, как запуски обновления обрабатывают кластеры-члены , настроенные с запланированными периодами обслуживания.

Создание профилей автоматического обновления

  1. В портал Azure перейдите к ресурсу Azure Kubernetes Fleet Manager.

  2. В меню службы в разделе "Параметры" выберите профили автоматического обновления>с несколькими кластерами.

  3. Выберите "Создать", введите имя профиля и выберите, включен ли профиль. Отключенные профили автоматического обновления не активируются при выпуске новых версий.

  4. Выберите последовательность обновлений этапов или один за один.

    Снимок экрана: панель портал Azure диспетчера парка Azure Kubernetes для создания профиля автоматического обновления, обновляющего кластеры с помощью стратегии.

  5. Выберите один из следующих параметров канала:

    • Стабильный — обновление кластеров с исправлениями для N-1 Kubernetes общедоступной дополнительной версии.
    • Быстрое обновление кластеров с исправлениями для последней версии Kubernetes ( N) общедоступная дополнительная версия.
    • Образ узла — обновление только версии образа узла.
  6. Если выбрать стабильный или быстрый канал, можно выбрать способ применения обновлений образа узла:

    • Последнее изображение. Обновляет каждый кластер AKS в профиле автоматического обновления до последнего образа, доступного для этого кластера в своем регионе Azure.
    • Согласованный образ: для автоматического обновления кластеры AKS в нескольких регионах Azure, где последние доступные образы узлов могут отличаться ( проверка отслеживания выпуска для получения дополнительных сведений). При выборе этого параметра автоматическое обновление выбирает последний общий образ во всех регионах Azure для обеспечения согласованности.

    Снимок экрана: панель портал Azure диспетчера парка Azure Kubernetes для создания профиля автоматического обновления, определяющего, как активируется обновление.

    Примечание.

    Канал образов узла всегда использует согласованный образ.

  7. Если выбрана последовательность обновлений с помощью этапов, выберите или создайте стратегию.

    Снимок экрана: панель портал Azure диспетчера парка Azure Kubernetes для создания профиля автоматического обновления, выбор стратегии обновления для использования.

  8. Выберите "Создать", чтобы создать профиль автоматического обновления.

Просмотр профиля автоматического обновления

  1. В портал Azure перейдите к ресурсу Azure Kubernetes Fleet Manager.

  2. В меню службы в разделе "Параметры" выберите профили автоматического обновления>с несколькими кластерами.

    Снимок экрана: панель портал Azure диспетчера парка Azure Kubernetes для просмотра доступных профилей автоматического обновления.

  3. Выберите нужный профиль автоматического обновления, чтобы просмотреть его конфигурацию.

    Снимок экрана: панель диспетчера флота Azure Kubernetes портал Azure показывает конфигурацию одного профиля автоматического обновления.

Удаление профиля автоматического обновления

  1. В портал Azure перейдите к ресурсу Azure Kubernetes Fleet Manager.

  2. В меню службы в разделе "Параметры" выберите профили автоматического обновления>с несколькими кластерами.

    Снимок экрана: панель портал Azure диспетчера парка Azure Kubernetes для просмотра доступных профилей автоматического обновления.

  3. Выберите нужный профиль в списке и нажмите кнопку "Удалить ", чтобы удалить профиль.

Примечание.

Удаление профиля автоматического обновления для выполняемого обновления не повлияет на существующий запуск обновления, который будет продолжаться.

Проверка автоматического обновления

Автоматическое обновление происходит только при наличии новых образов Kubernetes или узлов. При активации автоматического обновления создается связанный запуск обновления, поэтому можно использовать управление запуском обновления для просмотра результатов автоматического обновления.

Вы также можете проверить существующие версии в качестве базовых показателей, как показано ниже.

# Get Kubernetes version for a member cluster
az aks show \
  --resource-group $GROUP \
  --name $CLUSTER \
  --query currentKubernetesVersion
# Get NodeImage version for a member cluster
az aks show \
  --resource-group $GROUP \
  --name $CLUSTER \
  --query "agentPoolProfiles[].{name:name,mode:mode, nodeImageVersion:nodeImageVersion, osSku:osSku, osType:osType}"

После завершения выполнения обновления можно повторно запустить эти команды и просмотреть обновленные версии, развернутые.