Комиссия кластера AKS

Экземпляры ядра пакетов в службе Azure Private 5G Core выполняются в кластере Служба Azure Kubernetes с поддержкой Arc (AKS) на устройстве Azure Stack Edge (ASE). В этом руководстве показано, как заказать кластер AKS в ASE, чтобы он был готов к развертыванию основного экземпляра пакета.

Важно!

Эта процедура должна использоваться только для частных 5G Core Azure. AKS в ASE не поддерживается для других служб.

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

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

    Примечание.

    Запишите группу ресурсов Azure Stack Edge. Кластер AKS и пользовательское расположение, созданное в этой процедуре, должны принадлежать этой группе ресурсов.

  • Просмотрите размер виртуальной машины Azure Stack Edge, чтобы убедиться, что asE имеет достаточно места для создания кластера.

Настройка Kubernetes для Частного meC Azure на устройстве Azure Stack Edge

Эти шаги изменяют кластер Kubernetes на устройстве Azure Stack Edge, чтобы оптимизировать его для рабочих нагрузок Azure Private MEC.

  1. В локальном пользовательском интерфейсе выберите Kubernetes в меню слева.
  2. В разделе " Выбор варианта", который лучше всего описывает сценарий, выберите решение Azure Private MEC в вашей среде.
  3. Во всплывающем окне подтверждения рабочей нагрузки выберите "Подтвердить, что я использую частный MEC Azure в моей среде" и нажмите кнопку "Применить ", чтобы закрыть всплывающее окно.
  4. Щелкните Apply (Применить), чтобы сохранить изменения.

Screenshot of ASE Kubernetes configuration menu. The Azure Private MEC radio button is selected. The Workload confirmation popup is overlaid.

После применения этих изменений вы увидите обновленный параметр в локальном пользовательском интерфейсе. Kubernetes становится Kubernetes (предварительная версия), как показано на следующем рисунке.

Screenshot of configuration menu, with Kubernetes (Preview) highlighted.

Если перейти к портал Azure и перейти к ресурсу Azure Stack Edge, вы увидите параметр Служба Azure Kubernetes. Вы настроите Служба Azure Kubernetes в кластере и настроите Arc.

Screenshot of Azure Stack Edge resource in the Azure portal. Azure Kubernetes Service (PREVIEW) is shown under Edge services in the left menu.

Настройка расширенной сети

Теперь необходимо настроить виртуальные коммутаторы и виртуальные сети на этих коммутаторах. Для выполнения этой задачи вы будете использовать раздел "Расширенная сеть" локального пользовательского интерфейса Azure Stack Edge.

Вы можете ввести все параметры на этой странице перед нажатием кнопки "Применить " в нижней части, чтобы применить их одновременно.

  1. Настройте три виртуальных коммутатора. Перед следующим шагом должен быть виртуальный коммутатор, связанный с каждым портом. Виртуальные коммутаторы уже могут присутствовать, если у вас есть другие функции виртуальной сети (VNFs). Выберите " Добавить виртуальный коммутатор " и заполните боковую панель соответствующим образом для каждого коммутатора перед нажатием кнопки "Изменить ", чтобы сохранить эту конфигурацию.

    • Создайте виртуальный коммутатор на порту, который должен иметь включенный вычислительный порт (порт управления). Рекомендуется использовать формат vswitch-portX, где X — это число порта. Например, создайте vswitch-port2 через порт 2.
    • Создайте виртуальный коммутатор через порт 3 с именем vswitch-port3.
    • Создайте виртуальный коммутатор через порт 4 с именем vswitch-port4.

    Теперь вы увидите примерно следующее изображение: Screenshot showing three virtual switches, where the names correspond to the network interface the switch is on.

  1. Настройте три виртуальных коммутатора. Перед следующим шагом должен быть виртуальный коммутатор, связанный с каждым портом. Виртуальные коммутаторы уже могут присутствовать, если у вас есть другие функции виртуальной сети (VNFs). Выберите " Добавить виртуальный коммутатор " и заполните боковую панель соответствующим образом для каждого коммутатора перед нажатием кнопки "Изменить ", чтобы сохранить эту конфигурацию.

    • Создайте виртуальный коммутатор на порту, который должен иметь включенный вычислительный порт (порт управления). Рекомендуется использовать формат vswitch-portX, где X — это число порта. Например, создайте vswitch-port3 через порт 3.
    • Создайте виртуальный коммутатор через порт 5 с именем vswitch-port5.
    • Создайте виртуальный коммутатор через порт 6 с именем vswitch-port6.

    Теперь вы увидите примерно следующее изображение: Screenshot showing three virtual switches, where the names correspond to the network interface the switch is on.

  1. Создайте виртуальные сети, представляющие следующие интерфейсы (для которых выделены подсети и IP-адреса для выделенных подсетей и IP-адресов):

    • Интерфейс доступа уровня управления
    • Интерфейс доступа к плоскости пользователя
    • Интерфейсы данных плоскости пользователя

    Вы можете самостоятельно назвать эти сети, но имя должно соответствовать настройке в портал Azure при развертывании Частного 5G Core Azure. Например, можно использовать имена N2, N3 и до десяти N6-DNX (где X — номер DN 1-10 в нескольких развертываниях DN; или только N6 для одного развертывания DN). При необходимости можно настроить каждую виртуальную сеть с идентификатором сети виртуальной зоны (идентификатор виртуальной локальной сети), чтобы включить разделение трафика уровня 2. В следующем примере используется развертывание 5G с несколькими DN без виртуальных ЛС.

  1. Выполните следующую процедуру три раза, а также один раз для каждой из дополнительных сетей данных (в общей сложности двенадцать раз, если у вас есть не более десяти сетей данных):

    Важно!

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

    1. Выберите " Добавить виртуальную сеть " и заполните боковую панель:
      • Виртуальный коммутатор: выберите vswitch-port3 для N2, N3 и до четырех DN и выберите vswitch-port4 до шести DN.
      • Имя: N2, N3 или N6-DNX (где X — номер DN 1-10).
      • Виртуальная локальная сеть: идентификатор виртуальной ЛС или 0, если не используется виртуальные ЛС
      • Сеть и шлюз. Используйте правильную подсеть и шлюз для IP-адреса, настроенного на порт ASE (даже если шлюз не задан в самом порте ASE).
        • Например, 10.232.44.0/24 и 10.232.44.1
        • Если у подсети нет шлюза по умолчанию, используйте другой IP-адрес в подсети, которая будет отвечать на запросы ARP (например, один из IP-адресов RAN). Если через коммутатор подключено несколько gNB, выберите один из IP-адресов для шлюза.
      • DNS-сервер и DNS-суффикс должны оставаться пустыми.
    2. Выберите "Изменить", чтобы сохранить конфигурацию для этой виртуальной сети.
    3. Нажмите кнопку "Применить" в нижней части страницы и подождите уведомления (значок колокольчика), чтобы убедиться, что применены параметры. Применение параметров займет около 8 минут. Теперь страница должна выглядеть следующим образом:

Screenshot showing Advanced networking, with a table of virtual switch information and a table of virtual network information.

  1. Выполните следующую процедуру три раза, а также один раз для каждой из дополнительных сетей данных (в общей сложности двенадцать раз, если у вас есть не более десяти сетей данных):

    Важно!

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

    1. Выберите " Добавить виртуальную сеть " и заполните боковую панель:
      • Виртуальный коммутатор: выберите vswitch-port5 для N2, N3 и до четырех DN и выберите vswitch-port6 для до шести DN.
      • Имя: N2, N3 или N6-DNX (где X — номер DN 1-10).
      • Виртуальная локальная сеть: идентификатор виртуальной ЛС или 0, если не используется виртуальные ЛС
      • Сеть и шлюз. Используйте правильную подсеть и шлюз для IP-адреса, настроенного на порт ASE (даже если шлюз не задан в самом порте ASE).
        • Например, 10.232.44.0/24 и 10.232.44.1
        • Если у подсети нет шлюза по умолчанию, используйте другой IP-адрес в подсети, которая будет отвечать на запросы ARP (например, один из IP-адресов RAN). Если через коммутатор подключено несколько gNB, выберите один из IP-адресов для шлюза.
      • DNS-сервер и DNS-суффикс должны оставаться пустыми.
    2. Выберите "Изменить", чтобы сохранить конфигурацию для этой виртуальной сети.
    3. Нажмите кнопку "Применить" в нижней части страницы и подождите уведомления (значок колокольчика), чтобы убедиться, что применены параметры. Применение параметров займет около 8 минут. Теперь страница должна выглядеть следующим образом:

Screenshot showing Advanced networking, with a table of virtual switch information and a table of virtual network information.

Добавление вычислительных и IP-адресов

В локальном пользовательском интерфейсе Azure Stack Edge перейдите на страницу Kubernetes (предварительная версия). Вы настроите всю конфигурацию, а затем примените ее один раз, как и в разделе "Настройка расширенной сети".

  1. В разделе "Виртуальный коммутатор вычислений" выберите "Изменить".
    1. Выберите vswitch с намерением вычислений (например, vswitch-port2)
    2. Введите шесть IP-адресов в диапазоне для IP-адресов узла в сети управления.
    3. Введите один IP-адрес в диапазоне для IP-адреса службы, а также в сети управления. Это будет использоваться для доступа к локальным средствам мониторинга для основного экземпляра пакета.
    4. Выберите "Изменить" в нижней части панели, чтобы сохранить конфигурацию.
  2. В разделе "Виртуальная сеть" выберите виртуальную сеть из N2, N3, N6-DNX (где X — номер DN 1-10). На боковой панели:
    1. Включите виртуальную сеть для Kubernetes и добавьте пул IP-адресов. Добавьте диапазон одного IP-адреса для соответствующего адреса (N2, N3 или N6-DNX, как было собрано ранее). Например, 10.10.10.20-10.10.10.20.
    2. Повторите для каждой из виртуальных сетей N2, N3 и N6-DNX.
    3. Выберите "Изменить" в нижней части панели, чтобы сохранить конфигурацию.
  3. Выберите "Применить" в нижней части страницы и дождитесь применения параметров. Применение параметров займет около 5 минут.

Теперь страница должна выглядеть следующим образом:

Screenshot showing Kubernetes (Preview) with two tables. The first table is called Compute virtual switch and the second is called Virtual network. A green tick shows that the virtual networks are enabled for Kubernetes.

Screenshot showing Kubernetes (Preview) with two tables. The first table is called Compute virtual switch and the second is called Virtual network. A green tick shows that the virtual networks are enabled for Kubernetes.

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

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

Запуск кластера и настройка Arc

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

  1. Перейдите к портал Azure и перейдите к ресурсу Azure Stack Edge, созданному в портал Azure.

  2. Чтобы развернуть кластер, выберите параметр Kubernetes и нажмите кнопку "Добавить ", чтобы настроить кластер.

    Screenshot of Kubernetes Overview pane, showing the Add button to configure Kubernetes service.

  3. Для размера узла выберите Standard_F16s_HPN.

  4. Убедитесь, что выбран параметр Kubernetes с поддержкой Arc проверка box.

  5. Выберите ссылку "Изменить" и введите идентификатор объекта приложения Microsoft Entra (OID) для пользовательского расположения, полученного от получения идентификатора объекта (OID).

    Screenshot of Configure Arc enabled Kubernetes pane, showing where to enter the custom location OID.

  6. Служба Kubernetes с поддержкой Arc автоматически создается в той же группе ресурсов, что и ресурс Azure Stack Edge . Если группа ресурсов Azure Stack Edge не находится в регионе, поддерживающем Azure Private 5G Core, необходимо изменить регион.

  7. Нажмите кнопку "Настроить", чтобы применить конфигурацию.

  8. Проверьте поля "Регион" и "Идентификатор объекта приложения Microsoft Entra" (OID) с соответствующими значениями, а затем нажмите кнопку "Создать".

  9. Выполните инструкции по настройке службы.

Создание кластера Kubernetes занимает около 20 минут. Во время создания может отображаться критическая тревога в ресурсе Azure Stack Edge . Эта тревога ожидается и должна исчезнуть через несколько минут.

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

Настройка доступа kubectl

Чтобы убедиться, что кластер успешно развернут, вам потребуется доступ kubectl . Для доступа только для чтения kubectl к кластеру можно скачать файл kubeconfig из локального пользовательского интерфейса ASE. В разделе "Устройство" выберите "Скачать конфигурацию".

Screenshot of Kubernetes dashboard showing link to download config.

Скачанный файл называется config.json. Этот файл имеет разрешение на описание модулей pod и просмотр журналов, но не для доступа к модулям pod с помощью exec kubectl.

Настройка доступа к порталу

Откройте ресурс Azure Stack Edge в портал Azure. Перейдите на панель Служба Azure Kubernetes (показана в меню "Запуск кластера" и настроите Arc) и выберите ссылку "Управление", чтобы открыть панель Arc.

Screenshot of part of the Azure Kubernetes Service (PREVIEW) Overview pane, showing the Manage link for Arc enabled Kubernetes.

Изучите кластер с помощью параметров в меню ресурсов Kubernetes (предварительная версия):

Screenshot of Kubernetes resources (preview) menu, showing namespaces, workloads, services and ingresses, storage and configuration options.

Изначально появится поле запроса на вход. Маркер, используемый для входа, получен из файла kubeconfig, полученного из локального пользовательского интерфейса в настройке доступа kubectl. Существует строка, префиксированная маркером : в конце файла kubeconfig . Скопируйте эту строку в поле на портале (убедитесь, что у вас нет символов разрывов строки) и нажмите кнопку "Войти".

Screenshot of sign-in screen for Kubernetes resource. There's a box to enter your service account bearer token and a sign-in button.

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

Screenshot of Workloads pane in Kubernetes resources (preview). The pods tab is active and shows details about what's running.

Проверка конфигурации кластера

Убедитесь, что кластер AKS настроен правильно, выполнив следующие команды kubectl с помощью kubeconfig , скачанных из пользовательского интерфейса в настройке kubectl access:

kubectl get nodes

Эта команда должна возвращать два узла, один именованный nodepool-aaa-bbb и один именованный target-cluster-control-plane-ccc.

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

kubectl get pods -A

Кроме того, кластер AKS теперь должен отображаться из ресурса Azure Stack Edge на портале.

Сбор переменных для расширений Kubernetes

Соберите все значения в таблице ниже.

Значение Имя переменной
Идентификатор подписки Azure, в которой развертываются ресурсы Azure. SUBSCRIPTION_ID
Имя группы ресурсов, в которой развернут кластер AKS. Это можно найти с помощью кнопки "Управление" в области Служба Azure Kubernetes портал Azure. RESOURCE_GROUP_NAME
Имя ресурса кластера AKS. Это можно найти с помощью кнопки "Управление" в области Служба Azure Kubernetes портал Azure. RESOURCE_NAME
Регион, в котором развертываются ресурсы Azure. Это должно соответствовать региону, в котором будет развернута мобильная сеть, которая должна быть одной из регионов, поддерживаемых AP5GC.

Это значение должно быть именем кода региона.
LOCATION
Имя ресурса пользовательского расположения, создаваемого для кластера AKS.

Это значение должно начинаться и заканчиваться буквенно-цифровыми символами, а также содержать только буквенно-цифровые символы - или ..
CUSTOM_LOCATION

Установка расширений Kubernetes

Для частной мобильной сети Azure 5G Core требуется пользовательское расположение и определенные расширения Kubernetes, которые необходимо настроить с помощью Azure CLI в Azure Cloud Shell.

  1. Войдите в Azure CLI с помощью Azure Cloud Shell и выберите Bash в раскрывающемся меню.

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

    SUBSCRIPTION_ID=<subscription ID>
    RESOURCE_GROUP_NAME=<resource group name>
    LOCATION=<deployment region, for example eastus>
    CUSTOM_LOCATION=<custom location for the AKS cluster>
    ARC_CLUSTER_RESOURCE_NAME=<resource name>
    TEMP_FILE=./tmpfile
    
  3. Подготовьте среду оболочки:

    az account set --subscription "$SUBSCRIPTION_ID"
    az extension add --upgrade --name k8s-extension
    az extension add --upgrade --name customlocation
    
  4. Создайте расширение Kubernetes оператора сетевой функции:

    cat > $TEMP_FILE <<EOF
    {
      "helm.versions": "v3",
      "Microsoft.CustomLocation.ServiceAccount": "azurehybridnetwork-networkfunction-operator",
      "meta.helm.sh/release-name": "networkfunction-operator",
      "meta.helm.sh/release-namespace": "azurehybridnetwork",
      "app.kubernetes.io/managed-by": "helm",
      "helm.release-name": "networkfunction-operator",
      "helm.release-namespace": "azurehybridnetwork",
      "managed-by": "helm"
    }
    EOF 
    
    az k8s-extension create \
    --name networkfunction-operator \
    --cluster-name "$ARC_CLUSTER_RESOURCE_NAME" \
    --resource-group "$RESOURCE_GROUP_NAME" \
    --cluster-type connectedClusters \
    --extension-type "Microsoft.Azure.HybridNetwork" \
    --auto-upgrade-minor-version "true" \
    --scope cluster \
    --release-namespace azurehybridnetwork \
    --release-train preview \
    --config-settings-file $TEMP_FILE 
    
  5. Создайте расширение Kubernetes для монитора ядра пакетов:

    az k8s-extension create \
    --name packet-core-monitor \
    --cluster-name "$ARC_CLUSTER_RESOURCE_NAME" \
    --resource-group "$RESOURCE_GROUP_NAME" \
    --cluster-type connectedClusters \
    --extension-type "Microsoft.Azure.MobileNetwork.PacketCoreMonitor" \
    --release-train stable \
    --auto-upgrade true 
    
  6. Создайте пользовательское расположение:

    az customlocation create \
    -n "$CUSTOM_LOCATION" \
    -g "$RESOURCE_GROUP_NAME" \
    --location "$LOCATION" \
    --namespace azurehybridnetwork \
    --host-resource-id "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP_NAME/providers/Microsoft.Kubernetes/connectedClusters/$ARC_CLUSTER_RESOURCE_NAME" \
    --cluster-extension-ids "/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP_NAME/providers/Microsoft.Kubernetes/connectedClusters/$ARC_CLUSTER_RESOURCE_NAME/providers/Microsoft.KubernetesConfiguration/extensions/networkfunction-operator"
    

Новое пользовательское расположение должно отображаться как ресурс в портал Azure в указанной группе ресурсов. kubectl get pods -A С помощью команды (с доступом к файлу kubeconfig) также должны отображаться новые модули pod, соответствующие установленным расширениям. В пространстве имен azurehybridnetwork должен быть один модуль pod, а один — в пространстве имен packet-core-monitor.

Откат

Если вы сделали ошибку в конфигурации Azure Stack Edge, вы можете использовать портал для удаления кластера AKS (см. раздел "Развертывание службы Azure Kubernetes в Azure Stack Edge"). Затем можно изменить параметры с помощью локального пользовательского интерфейса.

Кроме того, можно выполнить полный сброс с помощью колонки "Сброс устройства" в локальном пользовательском интерфейсе (см . раздел сброса и повторной активации устройства Azure Stack Edge), а затем перезапустить эту процедуру. В этом случае необходимо также удалить все связанные ресурсы, оставшиеся в портал Azure после завершения сброса Azure Stack Edge. Это будет включать некоторые или все из следующих элементов в зависимости от того, насколько далеко до процесса вы находитесь:

  • Ресурс Azure Stack Edge
  • Автоматическое создание KeyVault, связанное с ресурсом Azure Stack Edge
  • Автоматическое создание служба хранилища Account, связанное с ресурсом Azure Stack Edge
  • Кластер Azure Kubernetes (если он успешно создан)
  • Пользовательское расположение (если оно успешно создано)

Изменение конфигурации ASE после развертывания

После развертывания ядра пакета может потребоваться обновить конфигурацию ASE, например добавить или удалить подключенную сеть данных или изменить IP-адрес. Чтобы изменить конфигурацию ASE, удалите пользовательское расположение и Служба Azure Kubernetes ресурсы, измените конфигурацию ASE и повторно создайте эти ресурсы. Это позволяет временно отключить ядро пакета вместо уничтожения и повторного ее восстановления, минимизируя необходимую перенастройку. Кроме того, может потребоваться внести эквивалентные изменения в конфигурацию ядра пакета.

Внимание

Ядро пакета будет недоступно во время этой процедуры. Если вы вносите изменения в здоровый экземпляр ядра пакетов, рекомендуется выполнить эту процедуру во время периода обслуживания, чтобы свести к минимуму влияние на службу.

  1. Перейдите к обзору группы ресурсов в портал Azure (для группы ресурсов, содержащей ядро пакета). Выберите ресурс уровня управления "Ядро пакета" и выберите "Изменить ядро пакета". Задайте для пользовательского расположенияAzure Arc значение None и выберите "Изменить".
  2. Перейдите к группе ресурсов, содержащей ресурс пользовательского расположения . Установите флажок для ресурса "Пользовательское расположение " и нажмите кнопку "Удалить". Подтвердите удаление.
  3. Перейдите к ресурсу Azure Stack Edge и удалите всю конфигурацию для Служба Azure Kubernetes.
  4. Доступ к локальному пользовательскому интерфейсу ASE и обновление конфигурации по мере необходимости.
  5. Повторно создайте кластер Kubernetes. См. раздел "Запуск кластера" и настройка Arc.
  6. Повторно создайте ресурс пользовательского расположения. Выберите ресурс уровня управления "Ядро пакетов" и выберите "Настроить настраиваемое расположение".

Теперь ядро пакета должно находиться в службе с обновленной конфигурацией ASE. Сведения об обновлении конфигурации ядра пакета см. в разделе "Изменение основного экземпляра пакета".

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

Устройство Azure Stack Edge теперь готово к работе с частными 5G Core Azure. Следующим шагом является сбор сведений, необходимых для развертывания частной сети.