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


Подготовка кластера Kubernetes с поддержкой Azure Arc

Внимание

Предварительная версия операций Интернета вещей Azure, включенная Azure Arc в настоящее время в предварительной версии. Не следует использовать это программное обеспечение предварительной версии в рабочих средах.

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

Юридические условия, применимые к функциям Azure, которые находятся в состоянии бета-версии, предварительной версии или иным образом еще не выпущены в общедоступной версии, см. на странице Дополнительные условия использования предварительных версий в Microsoft Azure.

Кластер Kubernetes с поддержкой Azure Arc является необходимым условием для развертывания предварительной версии операций Интернета вещей Azure. В этой статье описывается, как подготовить кластер перед развертыванием Предварительной версии операций Интернета вещей Azure в кластере Kubernetes с поддержкой Arc. В этой статье содержатся рекомендации для Ubuntu и Windows.

Совет

Действия, описанные в этой статье, подготовят кластер к развертыванию безопасных параметров, который является более длительным, но готовым к работе процессом. Если вы хотите быстро развернуть операции Интернета вещей Azure и запустить пример рабочей нагрузки только с параметрами теста, см . краткое руководство. Запуск предварительной версии операций Интернета вещей Azure в Github Codespaces с K3s .

Дополнительные сведения о параметрах тестирования и безопасных параметрах см. в разделе "Сведения > о развертывании" "Выбор функций".

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

Операции Интернета вещей Azure должны работать в любом кластере Kubernetes с поддержкой Arc, который соответствует требованиям к системе Kubernetes с поддержкой Azure Arc. В настоящее время Операции Интернета вещей Azure не поддерживают архитектуры Arm64.

Корпорация Майкрософт поддерживает Служба Azure Kubernetes Edge Essentials для развертываний в Windows и K3s для развертываний в Ubuntu. Список определенных сочетаний оборудования и программного обеспечения, которые тестируются и проверяются, см. в разделе "Проверенные среды".

Если вы хотите развернуть операции Интернета вещей Azure в решении с несколькими узлами, используйте K3s в Ubuntu.

Чтобы подготовить кластер Kubernetes с поддержкой Azure Arc, вам потребуется:

  • Подписка Azure. Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начинать работу.

  • Azure CLI версии 2.64.0 или более поздней версии, установленной на компьютере разработки. Используйте az --version для проверки версии и az upgrade обновления при необходимости. Дополнительные сведения см. в статье "Установка Azure CLI".

  • Последняя версия расширения Операций Интернета вещей Azure для Azure CLI. Используйте следующую команду, чтобы добавить расширение или обновить его до последней версии:

    az extension add --upgrade --name azure-iot-ops
    
  • Оборудование, соответствующее требованиям к системе:

    • Убедитесь, что на компьютере доступно не менее 16 ГБ ОЗУ, 8 доступных виртуальных ЦП и свободное место на диске размером 52 ГБ, зарезервированное для операций Интернета вещей Azure.
    • Требования к системе Kubernetes с поддержкой Azure Arc.
    • Требования и матрица поддержки AKS Edge Essentials.
    • Руководство по сети AKS Edge Essentials.
  • Если вы собираетесь развернуть операции Интернета вещей Azure в кластере с поддержкой отказоустойчивости, просмотрите требования к оборудованию и хранилищу в разделе "Подготовка Linux для томов Edge".

Создание кластера

В этом разделе приведены инструкции по созданию кластеров в проверенных средах в Linux и Windows.

Служба Azure Kubernetes Edge Essentials — это локальная реализация Kubernetes Служба Azure Kubernetes (AKS), которая автоматизирует выполнение контейнерных приложений в масштабе. AKS Edge Essentials включает поддерживаемую корпорацией Майкрософт платформу Kubernetes, которая включает упрощенное распределение Kubernetes с небольшим объемом и простым интерфейсом установки, поддерживающим оборудование pc-класса или "light".

Скрипт AksEdgeQuickStartForAio.ps1 автоматизирует процесс создания и подключения кластера и является рекомендуемым путем развертывания операций Интернета вещей Azure в AKS Edge Essentials.

  1. Откройте окно PowerShell с повышенными привилегиями и измените каталог на рабочую папку.

  2. objectId Получите приложение Идентификатора Microsoft Entra, которое служба Azure Arc использует в клиенте.

    az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query id -o tsv
    
  3. Выполните следующие команды, заменив значения заполнителей своими сведениями:

    Заполнитель Значение
    SUBSCRIPTION_ID Идентификатор подписки Azure. Если вы не знаете идентификатор подписки, см. статью "Найти подписку Azure".
    TENANT_ID Идентификатор клиента Microsoft Entra. Если вы не знаете идентификатор клиента, см. статью "Поиск клиента Microsoft Entra".
    RESOURCE_GROUP_NAME Имя существующей группы ресурсов или имя создаваемой группы ресурсов.
    LOCATION Регион Azure, близкий к вам. Список поддерживаемых в настоящее время регионов Azure см. в разделе "Поддерживаемые регионы".
    CLUSTER_NAME Имя создаваемого кластера.
    ARC_APP_OBJECT_ID Значение идентификатора объекта, полученное на предыдущем шаге.
    $url = "https://raw.githubusercontent.com/Azure/AKS-Edge/main/tools/scripts/AksEdgeQuickStart/AksEdgeQuickStartForAio.ps1"
    Invoke-WebRequest -Uri $url -OutFile .\AksEdgeQuickStartForAio.ps1
    Unblock-File .\AksEdgeQuickStartForAio.ps1
    Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process -Force
    .\AksEdgeQuickStartForAio.ps1 -SubscriptionId "<SUBSCRIPTION_ID>" -TenantId "<TENANT_ID>" -ResourceGroupName "<RESOURCE_GROUP_NAME>"  -Location "<LOCATION>"  -ClusterName "<CLUSTER_NAME>" -CustomLocationOid "<ARC_APP_OBJECT_ID>"
    

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

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

    Import-Module AksEdge
    Get-AksEdgeDeploymentInfo
    

    В выходных Get-AksEdgeDeploymentInfo данных команды вы увидите, что состояние Arc кластера равно Connected.

Включение Arc кластера

Подключите кластер к Azure Arc, чтобы его можно было удаленно управлять.

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

Проверка кластера

Чтобы убедиться, что кластер готов к развертыванию Операций Интернета вещей Azure, можно использовать вспомогающую команду проверяющего узла в расширении операций Интернета вещей Azure для Azure CLI. При запуске на узле кластера эта вспомогательная команда проверяет подключение к конечным точкам Azure Resource Manager и Реестра контейнеров Майкрософт.

az iot ops verify-host

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

kubectl get deployments,pods -n azure-arc

Выходные данные выглядят так:

NAME                                         READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/clusterconnect-agent         1/1     1            1           10m
deployment.apps/extension-manager            1/1     1            1           10m
deployment.apps/clusteridentityoperator      1/1     1            1           10m
deployment.apps/controller-manager           1/1     1            1           10m
deployment.apps/flux-logs-agent              1/1     1            1           10m
deployment.apps/cluster-metadata-operator    1/1     1            1           10m
deployment.apps/extension-events-collector   1/1     1            1           10m
deployment.apps/config-agent                 1/1     1            1           10m
deployment.apps/kube-aad-proxy               1/1     1            1           10m
deployment.apps/resource-sync-agent          1/1     1            1           10m
deployment.apps/metrics-agent                1/1     1            1           10m

NAME                                              READY   STATUS    RESTARTS        AGE
pod/clusterconnect-agent-5948cdfb4c-vzfst         3/3     Running   0               10m
pod/extension-manager-65b8f7f4cb-tp7pp            3/3     Running   0               10m
pod/clusteridentityoperator-6d64fdb886-p5m25      2/2     Running   0               10m
pod/controller-manager-567c9647db-qkprs           2/2     Running   0               10m
pod/flux-logs-agent-7bf6f4bf8c-mr5df              1/1     Running   0               10m
pod/cluster-metadata-operator-7cc4c554d4-nck9z    2/2     Running   0               10m
pod/extension-events-collector-58dfb78cb5-vxbzq   2/2     Running   0               10m
pod/config-agent-7579f558d9-5jnwq                 2/2     Running   0               10m
pod/kube-aad-proxy-56d9f754d8-9gthm               2/2     Running   0               10m
pod/resource-sync-agent-769bb66b79-z9n46          2/2     Running   0               10m
pod/metrics-agent-6588f97dc-455j8                 2/2     Running   0               10m

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

Теперь, когда у вас есть кластер Kubernetes с поддержкой Azure Arc, можно развернуть операции Интернета вещей Azure.