Развертывание операций Интернета вещей Azure в кластере Kubernetes с поддержкой Arc
Узнайте, как развернуть операции Интернета вещей Azure в кластере Kubernetes с помощью портал Azure.
В этой статье мы обсудим развертывания и экземпляры операций Интернета вещей Azure, которые являются двумя разными понятиями:
Развертывание Операций Интернета вещей Azure описывает все компоненты и ресурсы, которые позволяют реализовать сценарий операций Интернета вещей Azure. К этим компонентам и ресурсам относятся следующие компоненты:
- Экземпляр операций Интернета вещей Azure
- Расширения Arc
- Настраиваемые расположения
- Ресурсы, которые можно настроить в решении "Операции Интернета вещей Azure", такие как ресурсы и конечные точки активов.
Экземпляр Операций Интернета вещей Azure — это родительский ресурс, который объединяет набор служб, определенных в операциях Интернета вещей Azure? Например, брокер MQTT, потоки данных и соединитель для OPC UA.
Когда мы говорим о развертывании операций Интернета вещей Azure, мы имеем в виду полный набор компонентов, составляющих развертывание. После того как развертывание существует, вы можете просматривать, управлять и обновлять экземпляр.
Необходимые компоненты
Облачные ресурсы.
Подписка Azure.
Разрешения доступа Azure. Дополнительные сведения см. в разделе "Сведения > о развертывании необходимых разрешений".
Ресурсы разработки.
Azure CLI, установленный на компьютере разработки. Для этого сценария требуется Azure CLI версии 2.64.0 или более поздней. Используйте
az --version
для проверки версии иaz upgrade
обновления при необходимости. Дополнительные сведения см. в статье "Установка Azure CLI".Расширение операций Интернета вещей Azure для Azure CLI. Используйте следующую команду, чтобы добавить расширение или обновить его до последней версии:
az extension add --upgrade --name azure-iot-ops
Узел кластера:
Укажите кластер Kubernetes с поддержкой Azure Arc с включенными пользовательскими функциями удостоверений расположения и рабочей нагрузки. Если у вас нет одного, выполните действия, описанные в статье "Подготовка кластера Kubernetes с поддержкой Azure Arc".
Если вы развернули операции Интернета вещей Azure в кластере ранее, удалите эти ресурсы перед продолжением. Дополнительные сведения см. в разделе "Обновление операций Интернета вещей Azure".
(Необязательно) Подготовьте кластер к наблюдаемости перед развертыванием операций Интернета вещей Azure: настройте наблюдаемость.
(Необязательно) Настройте своего издателя центра сертификации перед развертыванием операций Интернета вещей Azure: доведите свой собственный издатель.
Развернуть
Интерфейс развертывания портал Azure — это вспомогательное средство, которое создает команду развертывания на основе ресурсов и конфигурации. Последним шагом является выполнение команды Azure CLI, поэтому необходимы необходимые компоненты Azure CLI, описанные в предыдущем разделе.
В портал Azure найдите и выберите Операции Интернета вещей Azure.
Нажмите кнопку создания.
На вкладке Основные сведения укажите следующую информацию.
Параметр Значение Подписка Выберите подписку, содержащую кластер с поддержкой Arc. Группа ресурсов Выберите группу ресурсов, содержащую кластер с поддержкой Arc. Имя кластера Выберите кластер, в который требуется развернуть операции Интернета вещей Azure. Имя пользовательского расположения Необязательно. Замените имя по умолчанию для настраиваемого расположения. Выберите Далее: Конфигурация.
На вкладке "Конфигурация" укажите следующие сведения:
Параметр Значение Имя операций Интернета вещей Azure Необязательно. Замените имя по умолчанию для экземпляра Операций Интернета вещей Azure. Конфигурация брокера MQTT Необязательно. Измените параметры по умолчанию для брокера MQTT. В портал Azure можно настроить параметры кратности и профиля памяти. Сведения о настройке других параметров, включая буфер сообщений с поддержкой диска и расширенные параметры клиента MQTT, см . в статье о поддержке Azure CLI для расширенной конфигурации брокера MQTT. Конфигурация профиля потока данных Необязательно. Измените параметры по умолчанию для потоков данных. Дополнительные сведения см. в разделе "Настройка профиля потока данных". Нажмите кнопку "Далее" — управление зависимостями.
На вкладке управления зависимостями выберите существующий реестр схем или выполните следующие действия, чтобы создать его:
Выберите Создать.
Укажите имя реестра схемы и пространство имен реестра схем.
Выберите контейнер служба хранилища Azure.
Выберите учетную запись хранения из списка иерархических учетных записей с поддержкой пространства имен или нажмите кнопку "Создать ", чтобы создать ее.
Для реестра схем требуется учетная запись служба хранилища Azure с иерархическим пространством имен и включенным доступом к общедоступной сети. При создании учетной записи хранения выберите тип учетной записи хранения общего назначения версии 2 и задайте для иерархического пространства имен значение "Включено".
Выберите контейнер в учетной записи хранения или выберите контейнер , чтобы создать его.
Нажмите кнопку "Применить" , чтобы подтвердить конфигурации реестра схем.
На вкладке управления зависимостями выберите параметры теста или параметр развертывания "Безопасные параметры". Если вы не уверены, что подходит для вашего сценария, ознакомьтесь с рекомендациями в разделе "Сведения > о развертывании" Выберите свои функции.
В зависимости от выбранного варианта выполните следующие действия.
Развертывание с помощью параметров тестирования
Используйте эти действия, если выбран параметр "Параметры теста" на вкладке управления зависимостями.
Нажмите кнопку "Далее": автоматизация.
Один раз выполните каждую команду Azure CLI на вкладке автоматизации в терминале:
Войдите в Azure CLI в интерактивном режиме с помощью браузера, даже если вы уже выполнили вход. Если вы не входите в систему в интерактивном режиме, может появиться сообщение об ошибке, в которой говорится, что устройство должно управляться для доступа к ресурсу.
az login
Установите последнее расширение Интерфейса командной строки операций Интернета вещей Azure.
az upgrade az extension add --upgrade --name azure-iot-ops
Создайте реестр схем, который будет использоваться компонентами Операций Интернета вещей Azure. Скопируйте и запустите указанную команду az iot ops schema registry create .
Если вы решили использовать существующий реестр схем, эта команда не отображается на вкладке автоматизации .
Подготовьте кластер для развертывания Операций Интернета вещей Azure. Скопируйте и запустите указанную команду az iot ops init .
Совет
Для
init
каждого кластера необходимо выполнить только одну команду. Если вы повторно используете кластер, уже развернутый в Azure IoT Operations версии 0.8.0, можно пропустить этот шаг.Если вы выполнили необязательное требование для настройки собственного издателя центра сертификации, добавьте
--user-trust
флаг вinit
команду.Выполнение этой команды может занять несколько минут. Вы можете отслеживать ход выполнения развертывания в терминале.
Развертывание операций Интернета вещей Azure. Скопируйте и запустите указанную команду az iot ops create .
Если вы выполнили необязательные предварительные требования для подготовки кластера к наблюдаемости, добавьте следующие параметры в
create
команду:Параметр Стоимость Описание --ops-config
observability.metrics.openTelemetryCollectorAddress=<FULLNAMEOVERRIDE>.azure-iot-operations.svc.cluster.local:<GRPC_ENDPOINT>
Укажите адрес сборщика OpenTelemetry (OTel), настроенный в файле otel-collector-values.yaml.
Примеры значений, используемых в configure observability : fullnameOverride=aio-otel-collector и grpc.endpoint=4317.--ops-config
observability.metrics.exportInternalSeconds=<CHECK_INTERVAL>
Укажите значение check_interval, настроенное в файле otel-collector-values.yaml.
Пример значения, используемого в настройке наблюдаемости , — check_interval =60.Если вы выполнили необязательные предварительные требования для настройки собственного издателя центра сертификации, добавьте
--trust-settings
параметры вcreate
команду:--trust-settings configMapName=<CONFIGMAP_NAME> configMapKey=<CONFIGMAP_KEY_WITH_PUBLICKEY_VALUE> issuerKind=<CLUSTERISSUER_OR_ISSUER> issuerName=<ISSUER_NAME>
Выполнение этой команды может занять несколько минут. Вы можете отслеживать ход выполнения развертывания в терминале.
После успешного завершения всех команд Azure CLI можно закрыть мастер установки операций Интернета вещей Azure.
После успешного create
завершения команды в кластере запущен рабочий экземпляр операций Интернета вещей Azure. На этом этапе экземпляр настроен для большинства сценариев тестирования и оценки.
Если в любой момент в будущем вы хотите подготовить экземпляр для рабочих сценариев, выполните действия, описанные в разделе "Включение безопасных параметров" в существующем экземпляре операций Интернета вещей Azure.
Развертывание с помощью безопасных параметров
Используйте эти действия, если вы выбрали параметр "Безопасные параметры " на вкладке управления зависимостями .
В разделе параметров развертывания укажите следующие сведения:
Параметр Значение Подписка Выберите подписку, содержащую хранилище ключей Azure. Azure Key Vault Выберите хранилище ключей Azure или нажмите кнопку "Создать".
Убедитесь, что хранилище ключей имеет управление доступом на основе ролей Azure в качестве модели разрешений. Чтобы проверить этот параметр, выберите "Управление конфигурацией доступа к выбранным>параметрам хранилища".>
Убедитесь, что укажите учетные записи пользователя разрешения на управление секретами сKey Vault Secrets Officer
помощью роли.Назначаемое пользователем управляемое удостоверение для секретов Выберите удостоверение или нажмите кнопку "Создать". Назначаемое пользователем управляемое удостоверение для компонентов AIO Выберите удостоверение или нажмите кнопку "Создать". Не используйте то же управляемое удостоверение, что и выбранный для секретов. Нажмите кнопку "Далее": автоматизация.
Один раз выполните каждую команду Azure CLI на вкладке автоматизации в терминале:
Войдите в Azure CLI в интерактивном режиме с помощью браузера, даже если вы уже выполнили вход. Если вы не войдете в систему в интерактивном режиме, может появиться сообщение об ошибке, в которой говорится, что устройство должно управляться для доступа к ресурсу при переходе к следующему шагу для развертывания операций Интернета вещей Azure.
az login
Установите последнее расширение Интерфейса командной строки операций Интернета вещей Azure.
az upgrade az extension add --upgrade --name azure-iot-ops
Создайте реестр схем, который будет использоваться компонентами Операций Интернета вещей Azure. Скопируйте и запустите указанную команду az iot ops schema registry create .
Если вы решили использовать существующий реестр схем, эта команда не отображается на вкладке автоматизации .
Примечание.
Эта команда требует, чтобы у вас были разрешения на запись ролей, так как она назначает роль, чтобы предоставить реестру схем доступ к учетной записи хранения. По умолчанию роль — это встроенная роль участника данных BLOB-объектов хранилища или можно создать пользовательскую роль с ограниченными разрешениями для назначения. Дополнительные сведения см. в статье az iot ops schema registry create.
Подготовьте кластер для развертывания Операций Интернета вещей Azure. Скопируйте и запустите указанную команду az iot ops init .
Совет
Для
init
каждого кластера необходимо выполнить только одну команду. Если вы повторно используете кластер, уже развернутый в Azure IoT Operations версии 0.8.0, можно пропустить этот шаг.Выполнение этой команды может занять несколько минут. Вы можете отслеживать ход выполнения развертывания в терминале.
Развертывание операций Интернета вещей Azure. Скопируйте и запустите указанную команду az iot ops create .
Если вы выполнили необязательные предварительные требования для подготовки кластера к наблюдаемости, добавьте в команду следующие необязательные параметры
create
:Необязательный параметр . значение Описание --ops-config
observability.metrics.openTelemetryCollectorAddress=<FULLNAMEOVERRIDE>.azure-iot-operations.svc.cluster.local:<GRPC_ENDPOINT>
Укажите адрес сборщика OpenTelemetry (OTel), настроенный в файле otel-collector-values.yaml.
Примеры значений, используемых в configure observability : fullnameOverride=aio-otel-collector и grpc.endpoint=4317.--ops-config
observability.metrics.exportInternalSeconds=<CHECK_INTERVAL>
Укажите значение check_interval, настроенное в файле otel-collector-values.yaml.
Пример значения, используемого в настройке наблюдаемости , — check_interval =60.Выполнение этой команды может занять несколько минут. Вы можете отслеживать ход выполнения развертывания в терминале.
Включите синхронизацию секретов для развернутого экземпляра Операций Интернета вещей Azure. Скопируйте и запустите указанную команду az iot ops secretsync enable .
Команда:
- Создает учетные данные федеративного удостоверения с помощью управляемого удостоверения, назначаемого пользователем.
- Добавляет назначение роли в управляемое удостоверение, назначаемое пользователем, для доступа к Azure Key Vault.
- Добавляет минимальный класс поставщика секретов, связанный с экземпляром Операций Интернета вещей Azure.
Назначьте управляемое удостоверение, назначаемое пользователем, развернутой экземпляру Операций Интернета вещей Azure. Скопируйте и запустите указанную команду az iot ops identity assign .
Эта команда создает федеративные учетные данные удостоверения с помощью издателя OIDC указанного подключенного кластера и учетной записи службы Операций Интернета вещей Azure.
После успешного завершения всех команд Azure CLI можно закрыть мастер установки операций Интернета вещей Azure.
После успешного create
завершения команды в кластере запущен рабочий экземпляр операций Интернета вещей Azure. На этом этапе экземпляр настроен для рабочих сценариев.
Проверка развертывания
После завершения развертывания используйте az iot ops check для оценки развертывания службы Операций Интернета вещей для работоспособности, конфигурации и удобства использования. Команда проверки поможет найти проблемы в развертывании и конфигурации.
az iot ops check
В check
команде отображается предупреждение о отсутствующих потоках данных, которое является нормальным и ожидаемым, пока не создадите поток данных. Дополнительные сведения см. в разделе "Обработка и маршрутизация данных с помощью потоков данных".
Конфигурации карт разделов, QoS и маршрутов сообщений можно проверить, добавив --detail-level 2
параметр в check
команду для подробного представления.
Следующие шаги
Если компоненты должны подключаться к конечным точкам Azure, таким как SQL или Fabric, узнайте, как управлять секретами для развертывания операций Интернета вещей Azure.