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

Внимание

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

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

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

Совет

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

Службы Kubernetes с поддержкой Azure Iot Operations поставляется в виде набора служб Kubernetes с поддержкой Azure Arc и предназначены для использования с проверенными партнерскими продуктами CNCF, соответствующими Arc. В настоящее время корпорация Майкрософт проверила операции Интернета вещей Azure со следующим фиксированным набором инфраструктур и сред:

Среда Версия
AKS-EE в Windows 11 IoT Enterprise
на одном узле AMD Ryzen-7 (8 ядер, 3,3 ГГц), 16 ГБ ОЗУ
AksEdge-K3s-1.26.10-1.6.384.0
K3s в Ubuntu 22.04.2
на одном узле AMD Ryzen-7 (8 ядер, 3,3 ГГц), 16 ГБ ОЗУ
K3s версии 1.28.5

Внимание

Перечисленные ранее среды являются рабочими средами, проверенными корпорацией Майкрософт. Они не единственные среды, в которые могут выполняться операции Интернета вещей Azure. Операции Интернета вещей Azure могут выполняться в любом кластере Kubernetes с поддержкой Arc, который соответствует требованиям к системе Kubernetes с поддержкой Azure Arc.

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

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

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

В этом разделе приведены шаги по подготовке и включению Arc кластеров в проверенных средах linux и Windows, а также GitHub Codespaces в облаке.

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

Совет

Скрипт AksEdgeQuickStartForAio.ps1 можно использовать для автоматизации действий в этом разделе и подключения кластера.

В окне PowerShell с повышенными привилегиями выполните следующие команды:

$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>"

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

Подготовьте компьютер к AKS Edge Essentials.

  1. Скачайте установщик для проверенной версии AKS Edge Essentials на локальный компьютер.

  2. Выполните действия, описанные в разделе "Подготовка компьютера к AKS Edge Essentials". Обязательно используйте проверенный установщик, скачанный на предыдущем шаге, а не последнюю версию.

Настройте кластер AKS Edge Essentials на компьютере.

  1. Выполните действия, описанные в разделе "Создание развертывания одного компьютера", но в конце шага 1: параметры конфигурации одного компьютера измените следующие значения в файле aksedge-config.json :

    `Init.ServiceIPRangeSize` = 10
    `LinuxNode.DataSizeInGB` = 30
    `LinuxNode.MemoryInMB` = 8192
    
  2. Установите хранилище локального пути в кластере, выполнив следующую команду:

    kubectl apply -f https://raw.githubusercontent.com/Azure/AKS-Edge/main/samples/storage/local-path-provisioner/local-path-storage.yaml
    

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

Чтобы подключить кластер к Azure Arc, выполните действия, описанные в Подключение кластере AKS Edge Essentials в Arc.

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

Чтобы убедиться, что кластер 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

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

az iot ops verify-host

Создание сайтов

Чтобы управлять доступом к кластерам, к которым у пользователей OT есть доступ, можно сгруппировать кластеры на сайты. Дополнительные сведения см. в статье "Что такое диспетчер сайтов Azure Arc (предварительная версия)?".

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

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