Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к:
IoT Edge 1.5
Внимание
IoT Edge 1.5 LTS — это поддерживаемый выпуск. IoT Edge 1.4 LTS достиг конца срока службы 12 ноября 2024 года. Если вы используете более ранний выпуск, ознакомьтесь с Update IoT Edge.
В этой статье приведены комплексные инструкции по регистрации и подготовке устройства Linux IoT Edge, включая установку IoT Edge.
Каждое устройство, которое подключается к Центру Интернета вещей , имеет идентификатор устройства, который отслеживает обмен данными между облаком или устройствами в облако . Вы настраиваете устройство с информацией о подключении, включая:
- Имя узла центра Интернета вещей
- Идентификатор устройства
- Сведения о проверке подлинности для подключения к Центр Интернета вещей
Действия, описанные в этой статье, описывают процесс, называемый ручной подготовкой, где вы подключаете одно устройство к центру Интернета вещей. Для ручной настройки у вас есть два варианта аутентификации устройств IoT Edge:
Симметрические ключи. При создании удостоверения устройства в Центр Интернета вещей служба создает два ключа. Вы размещаете один из ключей на устройстве, и он представляет ключ для Центр Интернета вещей при проверке подлинности.
Этот метод проверки подлинности быстрее в использовании, но не такой безопасный.
Самозаверяющий сертификат X.509. Вы создаете два сертификата удостоверения X.509 и размещаете их на устройстве. При создании новой идентичности устройства в Центр Интернета вещей вы предоставляете отпечатки обоих сертификатов. Когда устройство проходит проверку подлинности в Центр Интернета вещей, он представляет один сертификат и Центр Интернета вещей проверяет, соответствует ли сертификат отпечатку.
Этот метод проверки подлинности является более безопасным и рекомендуется для рабочих сценариев.
В этой статье рассматривается использование симметричных ключей в качестве метода проверки подлинности. Если вы хотите использовать сертификаты X.509, ознакомьтесь с Создайте и настройте устройство IoT Edge в Linux с помощью сертификатов X.509.
Примечание.
Если у вас много устройств для настройки и не требуется вручную подготовить каждую из них, используйте одну из следующих статей, чтобы узнать, как IoT Edge работает со службой подготовки устройств Центр Интернета вещей:
- Создавайте и развертывайте устройства IoT Edge в большом масштабе на Linux с использованием сертификатов X.509
- Создание и развертывание устройств IoT Edge в крупном масштабе с доверенным платформенным модулем на Linux
- Создавайте и подготавливайте устройства IoT Edge в большом масштабе на Linux с помощью симметричных ключей
Предварительные условия
В этой статье показано, как зарегистрировать устройство IoT Edge и установить IoT Edge (также называемый средой выполнения IoT Edge) на устройстве. Убедитесь, что у вас есть средство управления устройствами, например Azure CLI, и проверьте требования устройства перед регистрацией и установкой устройства.
Средства управления устройствами
Для регистрации устройства можно использовать портал Azure, Visual Studio Code или Azure CLI. Каждая программа имеет собственные предварительные требования или может потребоваться установить следующее:
Бесплатный или стандартный Концентратор IoT в подписке Azure.
Требования к устройствам
Устройство x64, ARM32 или ARM64 Linux.
Майкрософт публикует пакеты установки для различных операционных систем.
Последние сведения о том, какие операционные системы в настоящее время поддерживаются для рабочих сценариев, см. в разделе Azure IoT Edge поддерживаемых платформ.
расширения Visual Studio Code
Если вы используете Visual Studio Code, полезные Azure IoT расширения упрощают процесс создания и управления устройствами.
Установите расширения Azure IoT Edge и Центр Интернета вещей Azure:
- Azure IoT Edge. Расширение Azure IoT Edge для Visual Studio Code находится в режиме обслуживания.
- Центр Интернета вещей Azure
Зарегистрировать устройство
Вы можете использовать портал Azure, Visual Studio Code или Azure CLI для регистрации устройства в зависимости от вашего предпочтения.
В центре Интернета вещей на портале Azure вы создаете и управляете устройствами IoT Edge отдельно от устройств Интернета вещей, которые не поддерживают функции edge.
Войдите на портал Azure и перейдите в центр Интернета вещей.
В левой области выберите "Устройства " в меню, а затем нажмите кнопку "Добавить устройство".
В разделе "Создание устройства" укажите следующие сведения:
- Создайте описательный идентификатор устройства, например
my-edge-device-1(все в нижнем регистре). Скопируйте этот идентификатор устройства, как вы его используете позже. - Установите флажок IoT Edge device.
- В качестве типа проверки подлинности выберите Симметричный ключ.
- Используйте параметры по умолчанию для автоматического создания ключей проверки подлинности, которые подключают новое устройство к центру.
- Создайте описательный идентификатор устройства, например
Нажмите Сохранить.
Вы можете увидеть ваше новое устройство в вашем IoT-хабе.
Теперь, когда устройство зарегистрировано в Центр Интернета вещей, на следующем шаге можно получить информацию для конфигурации, используемую для завершения установки и настройки исполняющей среды IoT Edge.
Просмотр зарегистрированных устройств и получение информации о предоставлении доступа
Устройства, использующие проверку подлинности симметричного ключа, нуждаются в строках подключения для завершения установки и подготовки среды выполнения IoT Edge. Строка подключения создается для устройства IoT Edge в момент его создания. Для Visual Studio Code и Azure CLI в выходных данных JSON отображается строка подключения. Если вы используете портал Azure для создания устройства, вы можете найти строку подключения непосредственно на устройстве. При выборе устройства в Центре Интернета вещей оно отображается как Primary строка подключения на странице устройства.
Устройства с поддержкой функций edge, подключенные к вашему узлу IoT, перечислены на странице "Устройства" вашего узла IoT. Если у вас несколько устройств, можно отфильтровать список, выбрав тип устройств Iot Edge , а затем нажмите кнопку "Применить".
Когда вы будете готовы настроить устройство, вам потребуется строка подключения, которая связывает физическое устройство с его удостоверением в центре Интернета Вещей. Для устройств, которые проходят проверку подлинности с симметричными ключами, строки подключения доступны для копирования на портале. Чтобы найти строку подключения на портале, выполните следующие действия.
- На странице Devices выберите идентификатор устройства IoT Edge из списка.
- Скопируйте значение в поле Основная строка подключения или Дополнительная строка подключения. Оба ключа работают.
Установка IoT Edge
В этом разделе описано, как подготовить виртуальную машину Linux или физическое устройство для IoT Edge. Затем установите IoT Edge.
Выполните следующие команды, чтобы добавить репозиторий пакетов и добавить ключ подписи пакета Майкрософт в список доверенных ключей.
Внимание
30 июня 2022 года Raspberry Pi OS Stretch был исключён из списка поддержки операционных систем первого уровня. Чтобы избежать потенциальных уязвимостей безопасности, обновите операционную систему узла до Bullseye.
Для поддерживаемых платформ операционных систем уровня 2 пакеты установки доступны в выпусках Azure IoT Edge. Посмотрите этапы установки в автономная установка или установка определенной версии (необязательно).
Вы можете установить IoT Edge с помощью нескольких команд. Откройте терминал и выполните следующие команды:
24.04:
wget https://packages.microsoft.com/config/ubuntu/24.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb rm packages-microsoft-prod.deb22.04:
wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb rm packages-microsoft-prod.deb
Дополнительные сведения о версиях операционной системы см. в разделе Поддерживаемые платформы Azure IoT Edge.
Примечание.
Пакеты программного обеспечения Azure IoT Edge подчиняются условиям лицензии, которые находятся в каждом пакете (usr/share/doc/{package-name} или в каталоге LICENSE). Ознакомьтесь с условиями лицензии перед использованием пакета. Установка и использование пакета означают, что вы принимаете эти условия. Если вы не согласны с лицензионными условиями, не используйте этот пакет.
Установка контейнерного движка
Azure IoT Edge использует среду выполнения контейнера, совместимую с OCI. В рабочих сценариях используйте подсистему Moby. Модуль Moby — это обработчик контейнеров, официально поддерживаемый IoT Edge. Образы контейнеров Docker CE и Docker EE работают с средой выполнения Moby. Если вы используете оснастки Ubuntu Core, Canonical обеспечивает поддержку оснастки Docker и поддерживает её для промышленных сценариев.
Установите движок Moby.
sudo apt-get update; \
sudo apt-get install moby-engine
По умолчанию подсистема контейнеров не задает ограничения размера журнала контейнеров. С течением времени эта ситуация может привести к заполнению устройства журналами и нехватке места на диске. Однако вы можете настроить журнал для локального отображения, хотя это необязательно. Дополнительные сведения о настройках логирования см. в разделе Подготовка к развертыванию решения IoT Edge в рабочей среде.
Ниже показано, как настроить контейнер для использования local драйвера ведения журнала в качестве механизма ведения журнала.
Создайте или измените существующий файл конфигурации управляющей программы Docker:
sudo nano /etc/docker/daemon.jsonЗадайте драйвер ведения журнала по умолчанию драйверу
localведения журнала, как показано в примере:{ "log-driver": "local" }Перезапустите обработчик контейнеров, чтобы изменения вступили в силу.
sudo systemctl restart docker
Установка среды выполнения IoT Edge
Служба IoT Edge предоставляет и поддерживает стандарты безопасности на устройстве IoT Edge. Служба запускается при каждом запуске системы и инициирует устройство, запуская остальную часть среды выполнения IoT Edge.
Примечание.
Начиная с версии 1.2 служба удостоверений Azure IoT обрабатывает подготовку и управление удостоверениями для IoT Edge и для других компонентов устройств, которые должны взаимодействовать с Центр Интернета вещей.
Действия, описанные в этом разделе, представляют собой типичный процесс установки последней версии IoT Edge на устройстве с подключением к Интернету. Если необходимо установить определенную версию, например предварительную версию, или необходимо установить в автономном режиме, выполните действия по установке автономной или определенной версии далее в этой статье.
Совет
Если у вас уже есть устройство IoT Edge с более старой версией и хотите обновить до последней версии, выполните действия, описанные в Update IoT Edge. Более поздние версии достаточно отличаются от предыдущих версий IoT Edge что для обновления необходимы конкретные шаги.
Установите последнюю версию IoT Edge и пакет службы идентификации IoT (если вы еще не обновились до последней версии):
-
22.04:
sudo apt-get update; \ sudo apt-get install aziot-edge
Предоставление облачного удостоверения устройству
После установки движка контейнеров и среды выполнения IoT Edge на устройстве настройте устройство с информацией об облачной идентификации и проверке подлинности.
Вы можете настроить устройство IoT Edge с проверкой подлинности симметричного ключа с помощью следующей команды:
sudo iotedge config mp --connection-string 'PASTE_DEVICE_CONNECTION_STRING_HERE'
Примените изменения конфигурации.
sudo iotedge config applyЧтобы просмотреть файл конфигурации, его можно открыть:
sudo nano /etc/aziot/config.toml
Развертывание модулей
Чтобы развернуть модули IoT Edge, перейдите в центр Интернета вещей на портале Azure, а затем:
Выберите Devices в меню Центр Интернета вещей.
Выберите устройство, чтобы открыть страницу.
Перейдите на вкладку "Задать модули ".
Так как мы хотим развернуть модули по умолчанию IoT Edge (edgeAgent и edgeHub), нам не нужно добавлять модули в эту область, поэтому выберите Review + create внизу.
Вы увидите подтверждение JSON для модулей. Выберите "Создать" чтобы развернуть модули.
Дополнительные сведения см. в разделе "Развертывание модуля".
Проверка успешной настройки
Убедитесь, что среда выполнения была успешно установлена и настроена на устройстве IoT Edge.
Совет
Для запуска команд iotedge требуется более высокий уровень привилегий. После выхода из компьютера и входа в первый раз после установки среды выполнения IoT Edge ваши разрешения обновляются автоматически. До этого момента используйте перед командой префикс sudo.
Проверьте, что системная служба IoT Edge запущена.
sudo iotedge system statusУспешный ответ состояния показывает службы как запущенные
aziotили готовые.Если необходимо устранить неполадки со службой, получите журналы службы:
sudo iotedge system logscheckИспользуйте средство для проверки конфигурации и состояния подключения устройства:sudo iotedge checkМожно ожидать диапазон ответов, которые могут включать ОК (зеленый), предупреждение (желтый) или ошибку (красный). Сведения об устранении распространенных ошибок см. в разделе Solutions для распространенных проблем с Azure IoT Edge.
Совет
Всегда используйте
sudoдля запуска средства проверки даже после обновления разрешений. Для проверки состояния конфигурации средству требуются повышенные права доступа к файлу конфигурации.Примечание.
На недавно подготовленном устройстве может появиться ошибка из-за концентратора узла IoT Edge:
× рабочей готовности: каталог хранилища Edge Hub сохраняется в файловой системе узла. Ошибкане удалось проверить текущее состояние контейнера EdgeHub.
Эта ошибка ожидается на недавно подготовленном устройстве, так как модуль центра IoT Edge еще не запущен. Убедитесь, что модули IoT Edge были развернуты на предыдущих шагах. Развертывание устраняет эту ошибку.
Кроме того, можно увидеть код состояния как
417 -- The device's deployment configuration is not set. После развертывания модулей это состояние изменится.После первого запуска службы можно видеть, что работает только модуль edgeAgent. Модуль edgeAgent выполняется по умолчанию и помогает установить и запустить все другие модули, которые развертываются на устройстве.
Убедитесь, что устройство и модули развернуты и запущены, просматривая страницу устройства на портале Azure.
Скриншот развернутых и работающих модулей IoT Edge с подтверждением в портале Azure. После развертывания и запуска модулей выведите их список на устройстве или на виртуальной машине с помощью следующей команды:
sudo iotedge list
Автономная установка или установка определенной версии (необязательно)
Действия, описанные в этом разделе, предназначены для сценариев, не охваченных стандартными шагами по установке. Данные сценарии могут включать:
- Установка IoT Edge в автономном режиме
- Установка версии кандидата выпуска
Выполните действия, описанные в этом разделе, если вы хотите установить версию специфическую версию среды выполнения Azure IoT Edge, которая недоступна через диспетчер пакетов. Список пакетов Майкрософт содержит только ограниченный набор последних версий и их подверсий, поэтому эти действия предназначены для всех, кто хочет установить старую версию или версию кандидата на выпуск.
Если вы используете снэпы Ubuntu, вы можете скачать снэп и установить его в автономном режиме. Для получения дополнительной информации см. Загрузка пакетов snap и установка в автономном режиме.
Непосредственно с помощью команд curl можно нацелиться на файлы компонентов из репозитория IoT Edge на GitHub.
Перейдите к выпускам Azure IoT Edge и найдите версию выпуска, которую вы хотите использовать.
Разверните раздел Ресурсы для этой версии.
Каждый выпуск должен иметь новые файлы для IoT Edge и службы удостоверений. Если вы собираетесь установить IoT Edge на автономном устройстве, скачайте эти файлы заранее. В противном случае используйте следующие команды для обновления этих компонентов.
Найдите файл aziot-identity-service, соответствующий архитектуре устройства IoT Edge. Щелкните правой кнопкой мыши ссылку на файл и скопируйте ее адрес.
Используйте скопированную ссылку в следующей команде, чтобы установить эту версию службы идентификации.
curl -L <identity service link> -o aziot-identity-service.deb && sudo apt-get install ./aziot-identity-service.deb
Найдите файл aziot-edge, соответствующий архитектуре устройства IoT Edge. Щелкните правой кнопкой мыши ссылку на файл и скопируйте ее адрес.
Используйте скопированную ссылку в следующей команде для установки этой версии IoT Edge.
curl -L <iotedge link> -o aziot-edge.deb && sudo apt-get install ./aziot-edge.deb
Удаление IoT Edge
Если вы хотите удалить установку IoT Edge с устройства, используйте следующие команды.
Удалите среду выполнения IoT Edge.
sudo apt-get autoremove --purge aziot-edge
Оставьте флаг --purge, если планируется переустановить IoT Edge и использовать те же сведения о конфигурации в будущем. Флаг --purge удаляет все файлы, связанные с IoT Edge, включая файлы конфигурации.
При удалении среды выполнения IoT Edge все созданные контейнеры остановлены, но по-прежнему существуют на устройстве. Просмотрите все контейнеры, чтобы увидеть, какие из них остаются.
sudo docker ps -a
Удалите контейнеры с устройства, включая два контейнера в среде выполнения.
sudo docker rm -f <container ID>
Наконец, удалите среду выполнения контейнера с устройства.
sudo apt-get autoremove --purge moby-engine
Следующие шаги
Продолжайте развертывать модули IoT Edge, чтобы узнать, как развертывать модули на вашем устройстве.