Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к:
IoT Edge 1.5
Внимание
IoT Edge 1.5 LTS — это поддерживаемый выпуск. IoT Edge 1.4 LTS достиг срока окончания службы 12 ноября 2024 года. Если вы используете более ранний выпуск, ознакомьтесь с Update IoT Edge.
IoT Edge устройства могут работать в качестве шлюзов, предоставляя подключение между другими устройствами в сети и IoT Hub.
Модуль узла IoT Edge действует как IoT Hub, таким образом он может обрабатывать подключения от других устройств, имеющих идентификатор с тем же IoT Hub. Этот тип шаблона шлюза называется transparent так как сообщения могут передаваться с подчиненных устройств (устройств, которые подключаются через шлюз) в IoT Hub, как будто между ними не было шлюза.
Для устройств, которые не могут подключаться к IoT Hub самостоятельно, IoT Edge шлюзы могут предоставить это подключение. Этот тип шаблона шлюза называется translation так как устройство IoT Edge должен выполнять обработку входящих сообщений нижестоящего устройства, прежде чем он сможет перенаправить их в IoT Hub. В этих сценариях требуются дополнительные модули шлюза IoT Edge для выполнения шагов обработки.
Шаблоны прозрачного и переводного шлюза не являются взаимоисключающими. Одно устройство IoT Edge может работать как прозрачным шлюзом, так и шлюзом перевода.
Все шаблоны шлюза предоставляют следующие преимущества:
- Аналитика на краю — локально используйте службы ИИ для обработки данных, поступающих от конечных устройств, без отправки телеметрии высокой точности в облако. Найдите инсайты и отреагируйте на них локально, и отправьте только подмножество данных в IoT Hub.
- Изоляция подключенных устройств — устройство шлюза экранирует все подключенные устройства от воздействия на Интернет. Он находится между операционной технологией (OT), которая не имеет подключения и сети информационных технологий (ИТ), которая предоставляет доступ к Интернету. Аналогичным образом устройства, которые не имеют возможности подключаться к IoT Hub самостоятельно, могут подключаться к устройству шлюза.
- Мультиплексирование соединений — все устройства, подключающиеся к IoT Hub через шлюз IoT Edge, могут использовать одну и ту же основную связь. Эта возможность мультиплексирования требует, чтобы шлюз IoT Edge использовал AMQP в качестве облачного протокола.
- Traffic smoothing — устройство IoT Edge автоматически реализует экспоненциальную задержку, если IoT Hub ограничивает трафик, при этом сообщения сохраняются локально. Это преимущество сделает ваше решение устойчивым к пикам трафика.
- поддержка Offline — устройство шлюза хранит сообщения и обновления двойников, которые не могут быть доставлены в IoT Hub.
Прозрачные шлюзы
В шаблоне прозрачного шлюза устройства, которые могут подключаться к IoT Hub, вместо этого могут подключаться к устройству шлюза. Эти устройства, называемые устройствами нисходящего потока или дочерними устройствами, имеют собственные удостоверения IoT Hub и подключаются с помощью протоколов MQTT или AMQP. Шлюз просто передает обмен данными между устройствами и IoT Hub. Устройства и пользователи, взаимодействующие с ними через IoT Hub, не знают, что шлюз медиатирует свои коммуникации. Такое отсутствие осведомленности означает, что шлюз можно считать прозрачным.
Дополнительные сведения о том, как центр IoT Edge управляет взаимодействием между подчиненными устройствами и облаком, см. в обзоре среды выполнения и архитектуры Azure IoT Edge.
Начиная с версии 1.2 IoT Edge, прозрачные шлюзы IoT Edge могут обрабатывать подключения от нижестоящих устройств IoT Edge.
Родительско-детские отношения
Вы задаете прозрачные связи шлюза в IoT Hub, указывая шлюз IoT Edge как родителя для нижестоящего устройства дочернего, которое подключается к нему.
Примечание.
Устройство нижнего уровня отправляет данные непосредственно в Интернет или на шлюзовые устройства (с поддержкой IoT Edge или без неё). Дочернее устройство может быть подчиненным устройством или устройством шлюза в вложенной топологии.
Вы устанавливаете отношение "родитель/потомок" в трех точках конфигурации шлюза:
Облачная идентификация
Все устройства в сценарии прозрачного шлюза нуждаются в облачных удостоверениях, чтобы они могли пройти проверку подлинности в IoT Hub. При создании или обновлении удостоверения устройства можно задать для него родительские или дочерние устройства. Такая конфигурация позволяет родительскому устройству шлюза обрабатывать проверку подлинности для его дочерних устройств.
Примечание.
Установка родительского устройства в IoT Hub ранее была необязательным шагом для нижестоящих устройств, использующих аутентификацию с симметричными ключами. Однако начиная с версии 1.1.0 каждое подчиненное устройство должно быть назначено родительскому устройству.
Чтобы вернуться к предыдущему поведению, можно настроить концентратор IoT Edge, задав переменную среды AuthenticationMode значение CloudAndScope.
У каждого дочернего устройства может быть только один родитель. По умолчанию у родителя может быть до 100 потомков. Это ограничение можно изменить, задав переменную среды MaxConnectedClients в модуле edgeHub родительского устройства.
IoT Edge устройства могут быть родителями и дочерними элементами в прозрачных отношениях шлюза. Вы можете создать иерархию из нескольких IoT Edge устройств, обменивающихся данными друг с другом. Верхний узел иерархии шлюзов может охватывать до пяти поколений дочерних элементов. Например, устройство IoT Edge может иметь пять уровней IoT Edge устройств, связанных с дочерними элементами. Но устройство IoT Edge пятого поколения не может иметь дочерние устройства, будь то IoT Edge или другие.
Обнаружение шлюза
Дочернее устройство должно иметь возможность найти свое родительское устройство в локальной сети. Вы настраиваете устройства шлюза с именем узла , полным доменным именем (FQDN) или IP-адресом, используемым его дочерними устройствами для поиска.
На устройствах нижнего уровня Интернета вещей используйте параметр gatewayHostname в строке подключения, чтобы подключить к родительскому устройству.
На подчиненных IoT Edge устройствах используйте параметр parent_hostname в файле конфигурации, чтобы указать родительское устройство.
Безопасное подключение
Родительские и дочерние устройства также должны проходить проверку подлинности при подключениях друг к другу. Копия сертификата корневого удостоверяющего центра (УЦ) требуется для каждого устройства, который используют дочерние устройства, чтобы они могли убедиться, что они подключаются к соответствующему шлюзу.
Если несколько IoT Edge шлюзов подключаются друг к другу в иерархии шлюзов, все устройства в иерархии должны использовать одну цепочку сертификатов.
Функции устройств за прозрачными шлюзами
Все IoT Hub примитивы, которые работают с конвейером обмена сообщениями IoT Edge, также поддерживают сценарии прозрачного шлюза. Каждый шлюз IoT Edge имеет возможности хранения и пересылки сообщений, поступающих через него.
В следующей таблице показано, как поддерживаются различные возможности IoT Hub для устройств по сравнению с устройствами за шлюзами.
| Возможность | Устройство Интернета вещей | Система IoT за шлюзом | устройство IoT Edge | IoT Edge за шлюзом |
|---|---|---|---|---|
| Сообщения с устройства в облако (D2C) |
|
|
|
|
| Сообщения из облака на устройство (C2D) |
|
|
|
|
| Прямые методы |
|
|
|
|
| Двойники устройств и двойники модулей |
|
|
|
|
| Отправка файлов |
|
|
|
|
| Извлечение образа контейнера |
|
|
||
| Отправка BLOB |
|
|
Образы контейнеров можно загружать, хранить и доставлять с родительских устройств на дочерние устройства.
BLOB-объекты, включая пакеты поддержки и журналы, можно передавать с дочерних устройств на родительские.
Шлюзы трансляции
Если подчиненные устройства не могут подключаться к IoT Hub, шлюз IoT Edge должен выступать в качестве переводчика. Этот шаблон часто требуется для устройств, которые не поддерживают протоколы MQTT, AMQP и HTTP. Так как эти устройства не могут подключаться к IoT Hub, они также не могут подключаться к модулю центра IoT Edge без предварительной обработки.
Вам необходимо развернуть пользовательские или не-Microsoft модули, которые часто специфичны для оборудования или протокола нижестоящего устройства в шлюзе IoT Edge. Эти модули перевода принимают входящие сообщения и превратят их в формат, понятный IoT Hub.
Для шлюзов преобразования существует два шаблона: преобразование протоколов и преобразование удостоверений.
Перевод протоколов
В шаблоне шлюза перевода протокола только шлюз IoT Edge имеет удостоверение с IoT Hub. Модуль перевода получает сообщения от подчиненных устройств, преобразует их в поддерживаемый протокол, а затем устройство IoT Edge отправляет сообщения от имени подчиненных устройств. Вся информация выглядит так, будто она поступает с одного устройства, шлюза. Подчиненные устройства должны встраивать больше идентификационной информации в свои сообщения, если облачные приложения хотят анализировать данные для каждого устройства. Кроме того, примитивы IoT Hub, такие как твин и прямые методы, поддерживаются только для устройства шлюза, а не для подчиненных устройств. Шлюзы в этом шаблоне считаются непрозрачными, поскольку в отличие от прозрачных шлюзов, они скрывают идентичности подчиненных устройств.
Преобразование протоколов поддерживает устройства, ограниченные в ресурсах. Многие существующие устройства создают данные, которые могут обеспечить бизнес-аналитику; однако они не были разработаны с учетом облачного подключения. Непрозрачные шлюзы позволяют разблокировать эти данные и использовать их в решении Интернета вещей.
Трансляция идентичности
Шаблон шлюза перевода удостоверений основан на переводе протокола, но шлюз IoT Edge также предоставляет удостоверение устройства IoT Hub от имени подчиненных устройств. Модуль для перевода отвечает за понимание протокола, используемого подчиненными устройствами, обеспечение их идентификации и перевод их сообщений в примитивы IoT Hub. Подчиненные устройства отображаются в IoT Hub как устройства первого класса с двойниками и методами. Пользователь может взаимодействовать с устройствами в IoT Hub и не знает о промежуточном устройстве шлюза.
Перевод идентичности дает те же преимущества, что и преобразование протоколов, и дополнительно позволяет полностью управлять подключёнными устройствами из облака. Все устройства в решении Интернета вещей отображаются в IoT Hub независимо от используемого протокола.
Возможности устройств за шлюзами трансляции
В следующей таблице объясняется, как функции IoT Hub распространяются на конечные устройства в обоих паттернах шлюза трансляции.
| Возможность | Перевод протоколов | Трансляция идентичности |
|---|---|---|
| Идентификации, сохраняемые в реестре идентификационных данных IoT Hub | Только идентификатор устройства шлюза | Идентификаторы всех подключенных устройств |
| Цифровой двойник устройства | Только у шлюза есть цифровые двойники устройства и модуля | У каждого подключенного устройства есть свой собственный двойник устройства |
| Прямые методы и сообщения, передающиеся из облака на устройства | Облако может адресовать только шлюзовое устройство. | Данные могут передаваться из облака на каждое подключенное устройство по отдельности |
| IoT Hub квоты и ограничение скорости | Применяется к устройству шлюза | Применяется к каждому устройству |
Если шлюз использует шаблон перевода протоколов, все устройства, подключающиеся через этот шлюз, используют одну и ту же очередь для облачных устройств, которая может содержать не более 50 сообщений. Используйте этот паттерн, только если немного устройств подключаются через каждый полевой шлюз, и их трафик от облака к устройству низкий.
Среда выполнения IoT Edge не включает возможности перевода протоколов или перевода удостоверений. Для этих шаблонов требуются пользовательские или немайкрософт модули, которые часто зависят от используемого оборудования и протокола. Azure Marketplace содержит несколько модулей перевода протоколов для выбора. Пример, использующий шаблон идентичного перевода, см. в разделе Начальный комплект Azure IoT Edge LoRaWAN.
Следующие шаги
Ознакомьтесь с тремя этапами настройки прозрачного шлюза:
- Настройка устройства IoT Edge для работы в качестве прозрачного шлюза
- Аутентифицировать подчиненное устройство в Azure IoT Hub
- Подключите подчиненное устройство к шлюзу Azure IoT Edge