Развертывание службы Azure Kubernetes в Azure Stack Edge

ОБЛАСТЬ ПРИМЕНЕНИЯ:Yes for Pro - GPU SKUAzure Stack Edge Pro — GPUYes for Pro 2 SKUAzure Stack Edge Pro 2Yes for Pro R SKUAzure Stack Edge Pro R

Примечание.

Используйте эту процедуру, только если вы являетесь клиентом SAP или PMEC.

В этой статье описывается развертывание службы Azure Kubernetes (AKS) и управление ими на устройстве Azure Stack Edge. Вы также можете использовать эту статью для создания постоянных томов, использования GitOps для управления кластером Kubernetes с поддержкой Arc и удаления AKS и Azure Arc.

Целевая аудитория этой статьи — ИТ-администраторы, знакомые с настройкой и развертыванием рабочих нагрузок на устройстве Azure Stack Edge.

Сведения о службе Azure Kubernetes в Azure Stack Edge

Azure Stack Edge — это пограничное вычислительное устройство с поддержкой искусственного интеллекта с возможностями высокопроизводительной сети ввода-вывода. После настройки вычислений на устройстве Azure Stack Edge можно использовать портал Azure для развертывания службы Azure Kubernetes, включая виртуальные машины инфраструктуры. Затем кластер AKS используется для развертывания рабочей нагрузки с помощью Azure Arc.

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

Перед началом работы убедитесь, что выполнены следующие условия:

  • У вас есть учетная запись Майкрософт с учетными данными для доступа к портал Azure и доступ к устройству GPU Azure Stack Edge Pro. Устройство Azure Stack Edge настроено и активировано с помощью инструкций по настройке и активации устройства.

  • Вы создали и включили по крайней мере один виртуальный коммутатор для вычислений на устройстве Azure Stack Edge. Подробные инструкции см. в разделе "Создание виртуальных коммутаторов".

  • У вас есть клиент для доступа к устройству под управлением поддерживаемой операционной системы. При использовании клиента Windows убедитесь, что он работает под управлением PowerShell 5.0 или более поздней версии.

  • Прежде чем включить Azure Arc в кластере Kubernetes, убедитесь, что вы включили и зарегистрировали и Microsoft.KubernetesConfiguration зарегистрировали Microsoft.Kubernetes поставщиков ресурсов в вашей подписке. Подробные инструкции см. в статье "Регистрация поставщиков ресурсов с помощью Azure CLI".

  • Если вы планируете развернуть кластер Azure Arc для Kubernetes, необходимо создать группу ресурсов. У вас должен быть доступ на уровне владельца к группе ресурсов.

    Чтобы проверить уровень доступа для группы ресурсов, перейдите к элементу управления доступом группы>ресурсов (IAM)>Просмотреть доступ. В разделе "Назначения ролей" необходимо указать в качестве владельца.

    Screenshot showing assignments for the selected user on the Access control (IAM) page in the Azure portal.

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

  • Если вы планируете развернуть пользовательские расположения в кластере с поддержкой Arc, необходимо зарегистрировать Microsoft.ExtendedLocation поставщика ресурсов в подписке.

    Необходимо получить идентификатор объекта пользовательского расположения и использовать его для включения пользовательских расположений через интерфейс PowerShell устройства.

    az login
    az ad sp show --id bc313c14-387c-4e7d-a58e-70417303ee3b --query id -o tsv
    

    Ниже приведен пример выходных данных с помощью Azure CLI. Вы можете выполнять те же команды с помощью Cloud Shell в портал Azure.

    PS /home/user> az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query id -o tsv
    51dfe1e8-70c6-4de5-a08e-e18aff23d815
    PS /home/user>
    

    Дополнительные сведения см. в статье "Создание пользовательских расположений с поддержкой Arc и управление ими" в Kubernetes с поддержкой Arc.

  • При развертывании рабочих нагрузок Kubernetes или PMEC:

    • Возможно, вы выбрали определенный профиль рабочей нагрузки с помощью локального пользовательского интерфейса или с помощью PowerShell. Подробные инструкции описаны для локального пользовательского интерфейса в разделе "Настройка IPS вычислений" и для PowerShell в профилях рабочей нагрузки Change Kubernetes.
    • Вам могут потребоваться виртуальные сети, которые вы добавили с помощью инструкций в разделе "Создание виртуальных сетей".
  • Если вы используете виртуальные машины HPN в качестве виртуальных машин инфраструктуры, виртуальные ЦП должны быть автоматически зарезервированы. Выполните следующую команду, чтобы проверить резервирование:

    Get-HcsNumaLpMapping
    
  • Эта конфигурация применяется при установке или обновлении azure Stack Edge 2307. Существует два сценария, в которых конфигурация не будет применена во время обновления:

    • Если настроено больше виртуальных ЦП minroot, чем четыре виртуальных ЦП из Numa0 + Все виртуальные ЦП из Numa1. Этот сценарий относится главным образом к клиентам шлюза Azure Stack Edge, которые настраивают все виртуальные ЦП для minroot. Для Azure Stack Edge Pro 2 существует только один Numa. Для Azure Stack Edge Pro 2 с 40 ядрами это более минимальных виртуальных ЦП, настроенных чем 24 виртуальных ЦП, а для Azure Stack Edge Pro 2 с 48 виртуальными ЦП настроено более 28 виртуальных ЦП.

    • При развертывании виртуальных машин HPN и использовании более 16 виртуальных ЦП на компьютере с 40 ядрами или более 20 виртуальных ЦП на компьютере с 48 ядрами для виртуальных машин HPN.

    Ниже приведен пример выходных данных для GPU Azure Stack Edge Pro:

    Hardware:
      { Numa Node #0 : CPUs [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] }
    
      { Numa Node #1 : CPUs [20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39] }
    
    HpnCapableLpMapping:
      { Numa Node #0 : CPUs [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] }
    
      { Numa Node #1 : CPUs [24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39] }
    
    7MT0SZ2:
     HpnLpMapping:
      { Numa Node #0 : CPUs [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] }
    
      { Numa Node #1 : CPUs [] }
    
    HpnLpAvailable:
      { Numa Node #0 : CPUs [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] }
    
      { Numa Node #1 : CPUs [] }
    

Развертывание AKS в Azure Stack Edge

Существует несколько шагов для развертывания AKS в Azure Stack Edge. Некоторые шаги являются необязательными, как описано ниже.

Проверка включения AKS

Чтобы убедиться, что AKS включен, перейдите к ресурсу Azure Stack Edge в портал Azure. В области обзора выберите плитку Служба Azure Kubernetes.

Screenshot showing the Azure Kubernetes Service tile in the Overview pane of the Azure portal.

Настройка настраиваемых расположений (необязательно)

  1. Подключитесь к интерфейсу PowerShell на устройстве.

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

    Set-HcsKubeClusterArcInfo –CustomLocationsObjectId <custom_location_object_id>
    

    Ниже приведен пример выходных данных с помощью Azure CLI. Вы можете выполнять те же команды с помощью Cloud Shell в портал Azure.

    [1d9nhq2.microsoftdatabox.com]: PS> Set-HcsKubeClusterArcInfo –CustomLocationsObjectId 51dfe1e8-70c6-4de5-a08e-e18aff23d815
    [1d9nhq2.microsoftdatabox.com]: PS>
    

Указание статических пулов IP-адресов (необязательно)

Необязательный шаг, в котором можно назначить пулы IP-адресов для виртуальной сети, используемой модулями pod Kubernetes.

Примечание.

Клиенты SAP могут пропустить этот шаг.

Пул статических IP-адресов можно указать для каждой виртуальной сети, которая включена для Kubernetes. Виртуальная сеть, включенная для Kubernetes, создает NetworkAttachmentDefinition созданный для кластера Kubernetes.

Во время подготовки приложений модули pod Kubernetes могут использовать статические IP-адреса в пуле IP-адресов для сетевых интерфейсов контейнеров, таких как интерфейсы виртуализации единого корневого ввода-вывода контейнера (SR-IOV). Это можно сделать, указав указатель NetworkAttachmentDefinition на объект PodSpec.

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

  1. Перейдите на страницу "Расширенная сеть" в портал Azure.

  2. Если вы ранее не создали виртуальные сети, выберите "Добавить виртуальную сеть ", чтобы создать виртуальную сеть. Необходимо указать виртуальный коммутатор, связанный с виртуальной сетью, идентификатором виртуальной локальной сети, маской подсети и шлюзом.

  3. В примере, показанном здесь, мы настроили три виртуальных сети. В каждой из этих виртуальных сетей виртуальная локальная сеть имеет значение 0 , а маска подсети и шлюз соответствуют внешним значениям, например 255.255.0.0 и 192.168.0.1.

    1. Первая виртуальная сеть — имя N2и связано с vswitch-port5.

    2. Вторая виртуальная сеть — имя N3 и связано с vswitch-port5.

    3. Третья виртуальная сеть — имя N6и связано с vswitch-port6.

    4. После настройки всех трех виртуальных сетей они перечислены в виртуальных сетях следующим образом:

      Screenshot that shows the Advanced networking page in the Azure portal.

  4. Назначьте пулы IP-адресов виртуальным сетям:

    1. На странице Kubernetes выберите созданную виртуальную сеть и включите ее для Kubernetes.

    2. Укажите непрерывный диапазон статических IP-адресов для модулей pod Kubernetes в виртуальной сети. В этом примере был предоставлен диапазон одного IP-адреса для каждой из трех созданных виртуальных сетей.

  5. Нажмите кнопку "Применить" , чтобы применить изменения для всех виртуальных сетей.

    Примечание.

    Невозможно изменить параметры пула IP-адресов после развертывания кластера AKS.

    Screenshot that shows the Kubernetes page with virtual networks in the Azure portal.

Настройка виртуального коммутатора вычислений

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

  1. В локальном пользовательском интерфейсе устройства перейдите на страницу Kubernetes .

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

    Screenshot that shows the Kubernetes page in the Azure portal.

  3. Включите вычисление через порт с доступом к Интернету. Например, в этом случае для вычислений включен порт 2, подключенный к Интернету. Доступ к Интернету позволяет извлекать образы контейнеров из AKS.

    Виртуальный IP-адрес виртуальных служб Azure должен быть в состоянии связаться с этой сетью виртуального коммутатора вычислений через внешнюю маршрутизацию или создать виртуальный IP-адрес виртуальных служб Azure в той же сети.

  4. Для узлов Kubernetes укажите непрерывный диапазон шести статических IP-адресов в той же подсети, что и сеть для этого порта.

    В рамках развертывания AKS создаются два кластера, кластер управления и целевой кластер. Указанные IP-адреса используются следующим образом:

    • В кластере управления требуется два IP-адреса = 1 IP-адрес для сетевого интерфейса плоскости управления + 1 IP-адреса для сервера API (VIP).

    • Целевой кластер должен иметь ip-адреса (2+n) = 1 IP-адрес для сетевого интерфейса плоскости управления целевым кластером + 1 IP-адрес для сервера API (VIP) + количество узлов, n.

    • Дополнительный IP-адрес используется для последовательного обновления.

      Для одного устройства узла приведенные выше результаты в шести IP-адресах для развертывания кластера Kubernetes. Для двух кластеров узлов требуется семь IP-адресов.

  5. Для IP-адресов внешних служб Kubernetes предоставьте статические IP-адреса для служб, предоставляемых за пределами кластера Kubernetes. Для каждой такой службы требуется один IP-адрес.

    Screenshot that shows the Compute virtual switch options on the Kubernetes page in the Azure portal.

Включение управления облаком виртуальных машин

Этот шаг необходим, чтобы разрешить порталу Azure Stack Edge развернуть виртуальные машины инфраструктуры на устройстве Azure Stack Edge для AKS; Например, для целевого рабочего узла кластера.

  1. В портал Azure перейдите к ресурсу Azure Stack Edge.

  2. Перейдите к обзору и выберите плитку "Виртуальные машины".

    Screenshot that shows the Virtual machines tile on the Azure Stack Edge Overview page of the Azure portal.

  3. На странице "Обзор виртуальных машин>" выберите "Включить для управления облаком виртуальных машин".

    Screenshot that shows the Azure Stack Edge Overview page with the enable virtual machines cloud management option on the Azure portal.

Настройка кластера Kubernetes и включение Arc

Используйте этот шаг, чтобы настроить и развернуть кластер Kubernetes и включить его для управления с помощью Arc.

Важно!

Прежде чем создать кластер Kubernetes, помните, что:

  • Невозможно изменить параметры пула IP-адресов после развертывания кластера AKS.
  • В рамках включения Arc целевого кластера AKS пользовательские расположения будут включены, если идентификатор объекта был передан с помощью необязательной команды в разделе Set custom locations (необязательный) в этой статье. Если вы не включите пользовательские расположения, вы по-прежнему можете сделать это до создания кластера Kubernetes. После запуска развертывания кластера вы не сможете задать пользовательские расположения.

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

  1. В портал Azure перейдите к ресурсу Azure Stack Edge.

  2. Выберите плитку Служба Azure Kubernetes.

  3. Нажмите кнопку "Добавить ", чтобы настроить AKS.

  4. В диалоговом окне "Создание службы Kubernetes" выберите размер узла Kubernetes для виртуальной машины инфраструктуры. Выберите размер узла виртуальной машины, соответствующий размеру развернутой рабочей нагрузки. В этом примере мы выбрали размер виртуальной машины Standard_F16s_HPN – 16 виртуальных ЦП, 32,77 ГБ памяти.

    Для развертываний SAP выберите размер узла виртуальной машины Standard_DS5_v2.

    Примечание.

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

  5. Проверьте управление контейнером из облака с помощью Kubernetes с поддержкой Arc. Этот параметр при проверка включает Arc при создании кластера Kubernetes.

  6. При выборе "Изменить" необходимо указать имя подписки, группу ресурсов, имя кластера и регион.

    Screenshot that shows the Configure Arc enabled Kubernetes options part of creating the Kubernetes service on the Azure portal.

    1. Имя подписки должно быть автоматически заполнено.

    2. Укажите уникальное имя группы ресурсов. Вы также можете использовать ту же группу ресурсов, в которой развернут ресурс Azure Stack Edge. У вас должен быть доступ на уровне владельца к этой группе ресурсов. Чтобы проверить уровень доступа для группы ресурсов, перейдите к элементу управления доступом группы>ресурсов (IAM)>Просмотреть доступ. В разделе "Назначения ролей" необходимо указать в качестве владельца.

      Screenshot that shows My assignments in the Access control page of the Azure Stack Edge UI.

    3. Укажите имя кластера Kubernetes с поддержкой Arc или примите значение по умолчанию.

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

    5. Выберите Настроить. Вы также можете сбросить параметры Arc, выбрав параметр "Сброс" по умолчанию .

  7. Выберите "Создать", чтобы создать службу Kubernetes.

    Screenshot that shows the Create Kubernetes service page of the Azure Stack Edge UI.

  8. При запуске создания кластера вы получите уведомление.

    1. После создания кластера Kubernetes вы увидите, что Служба Azure Kubernetes запущен.

      Screenshot that shows the Azure Kubernetes Service running as expected.

      Kubernetes с поддержкой Arc также будет отображаться как запущенный.

      Screenshot that shows the Azure Kubernetes Service Overview page with status of the Kubernetes service.

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

Добавление постоянного тома

PersistentVolume (PV) ссылается на часть хранилища в кластере Kubernetes. Хранилище Kubernetes может быть статически подготовлено как PersistentVolume. Она также может быть динамически подготовлена как StorageClass. Дополнительные сведения см. в разделе служба хранилища требования к модулям pod Kubernetes.

Существует два разных рабочих процесса для создания PV в зависимости от того, включена ли вычислительная среда при создании общей папки или нет. Каждый из этих рабочих процессов рассматривается в следующих разделах.

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

На устройстве Azure Stack Edge Pro статически PersistentVolumes подготовленные создаются с помощью возможностей хранилища устройства. При подготовке общей папки и включен параметр "Использовать общую папку с пограничным вычислением ", это действие автоматически создает ресурс PV в кластере Kubernetes.

Screenshot that shows Cloud storage gateway to add a share with the Use the share with Edge compute option.

Чтобы использовать распределение по уровням в облаке, можно создать общую папку Edge с включенным параметром вычислений Edge. Для этой общей папки снова создается ПС. Если этот параметр включен, все данные приложения, записываемые в общую папку Edge, многоуровневые в облако.

Screenshot that shows Cloud storage gateway to add a share with the Use the share with Edge local share option enabled.

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

Для общих папок, созданных с использованием общей папки с параметром вычислений Edge un проверка ed, можно добавить постоянный том, выполнив следующие действия.

  1. На портале Azure перейдите к ресурсу Azure Stack Edge для своего устройства. Перейдите к общим папкам шлюза>облачного хранилища. Вы можете увидеть, что устройство в настоящее время имеет общие папки с включенным состоянием вычислений .

    Screenshot that shows the Cloud storage gateway shares with Edge compute enabled.

  2. Нажмите кнопку + Добавить общую папку. Для этой общей папки убедитесь, что параметр "Использовать общую папку с пограничным вычислением" не проверка.

    Screenshot that shows the Add share dialog for Persistent volume with compute not enabled inline during share creation.

  3. Вы можете увидеть только что созданную общую папку в списке общих папок, а состояние "Используется для вычисления" отключено.

    Screenshot that shows the newly created share in the list of shares and the Used for compute status is Disabled.

  4. Вернитесь к обзору ресурсов> Azure Stack Edge. В правой области выберите плитку Служба Azure Kubernetes.

    Screenshot that shows the Azure Stack Edge resource Overview page with the Azure Kubernetes Service tile selected.

  5. На странице Служба Azure Kubernetes> Overview на плитке "Постоянные тома" отображаются постоянные тома, которые существуют. Эти тома были созданы автоматически при создании общих папок с включенным параметром "Использовать общую папку с параметром вычислений Edge". Чтобы создать новый постоянный том, нажмите кнопку +Добавить постоянный том.

  6. В диалоговом окне "Добавление постоянных томов" выберите общую папку, для которой требуется создать постоянный том.

    Screenshot that shows the Azure Stack Edge dialog for Add Persistent volumes.

  7. Отображается уведомление о создании постоянного тома. Эта операция занимает несколько минут.

    Screenshot that shows a Notifications dialog that the Adding Persistent Volumes operation has successfully completed.

  8. После создания постоянного тома страница обзора обновляется, чтобы включить только что добавленный постоянный том.

    Screenshot that shows the Azure Kubernetes Service Overview page with Persistent Volumes.

  9. Выберите "Просмотреть все постоянные тома" , чтобы просмотреть только что созданный постоянный том.

Удаление службы Azure Kubernetes

Чтобы удалить AKS, выполните следующие действия в портал Azure.

  1. В ресурсе Azure Stack Edge перейдите к Служба Azure Kubernetes> Overview.

  2. На верхней панели команд нажмите кнопку "Удалить".

    Screenshot that shows the Azure Kubernetes Service Overview page with the Remove option.

  3. Выберите настроенную надстройку, которую вы хотите удалить вместе с AKS. Kubernetes с поддержкой Azure Arc является надстройкой. После выбора "Удалить" будут удалены все конфигурации Kubernetes и выбранная надстройка. Операция необратима и не может быть отменена.

  4. Чтобы подтвердить операцию, выберите ОК.

    Screenshot that shows the Azure Kubernetes Service Overview page with the Remove confirmation.

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