Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения: IoT Edge 1.5
Внимание
IoT Edge 1.5 LTS является поддерживаемым выпуском. IoT Edge 1.4 LTS снимается с эксплуатации с 12 ноября 2024 года. Если вы используете более ранний выпуск, см. статью Обновление IoT Edge.
Azure IoT Edge позволяет развертывать бизнес-логику на пограничных устройствах и управлять ими с помощью модулей. Модуль Azure IoT Edge представляет собой наименьшую единицу вычислительных ресурсов, которыми управляет IoT Edge. Эти модули могут содержать службы Azure (например, Azure Stream Analytics) или пользовательский код для конкретного решения. Чтобы понять, как разрабатываются, развертываются и обслуживаются модули, мы рассмотрим четыре концептуальных элемента.
- Образ модуля — это пакет с программным обеспечением для модуля.
- Экземпляр модуля — это единица вычислительных ресурсов, выполняющая образ модуля на устройстве IoT Edge. Экземпляр модуля запускается средой выполнения IoT Edge.
- Идентификатор модуля — это часть сведений (включая учетные данные безопасности), хранящаяся в Центре Интернета вещей, связанных с каждым экземпляром модуля.
- Близнец модуля — это документ JSON, хранящийся в Центре Интернета вещей, который содержит информацию о состоянии экземпляра модуля, включая метаданные, конфигурации и условия.
Изображения и экземпляры модулей
Образы модулей IoT Edge содержат приложения, в которых используются функции управления, безопасности и обмена данными среды выполнения IoT Edge. Вы можете создавать собственные образы модулей или экспортировать их из поддерживаемых служб Azure, таких как Azure Stream Analytics. Образы существуют в облаке, и вы можете обновлять, изменять и развертывать их в различных решениях. Например, модуль, использующий машинное обучение для прогнозирования выходных данных производственной линии, является отдельным изображением модуля, использующим компьютерное зрение для управления дроном.
При каждом развертывании среды выполнения IoT Edge и запуске образа модуля на устройстве он создает новый экземпляр этого модуля. Два устройства в разных частях света могут использовать тот же образ модуля. Тем не менее каждое устройство будет иметь свой собственный экземпляр модуля при запуске модуля на устройстве.
На практике образы модулей существуют как контейнерные образы в репозитории, а экземпляры модулей являются контейнерами на устройствах.
Идентичности модулей
Когда среда выполнения IoT Edge создает новый экземпляр модуля, он назначает соответствующее удостоверение модуля. Узел Интернета вещей хранит удостоверение модуля, которое определяет область адресации и безопасности для всех взаимодействий между локальными и облачными системами экземпляра модуля.
Удостоверение экземпляра модуля зависит от удостоверения устройства и имени, которое вы назначаете модулю в решении. Например, если вы назовете модуль insight
и развернете его на устройстве Hannover01
, среда выполнения IoT Edge создает соответствующее удостоверение /devices/Hannover01/modules/insight
модуля.
В сценариях, где необходимо развернуть один образ модуля несколько раз на одном устройстве, его можно развернуть с различными именами.
Двойники модулей
У каждого экземпляра модуля есть соответствующий модульный близнец, с помощью которого его настраивают. Удостоверение модуля связывает экземпляр и двойник.
Двойник модуля представляет собой документ JSON, в котором собраны сведения о модуле и параметры его конфигурации. Эта концепция соответствует концепции двойника устройства из IoT Hub. Структура двойника модуля совпадает со структурой двойника устройства. ИНТЕРФЕЙСы API для взаимодействия с обоими типами двойников одинаковы. Единственное различие между ними — идентификатор, который применяется для создания экземпляра клиентского пакета SDK.
// Create a ModuleClient object. This ModuleClient will act on behalf of a
// module since it is created with a module's connection string instead
// of a device connection string.
ModuleClient client = new ModuleClient.CreateFromEnvironmentAsync(settings);
await client.OpenAsync();
// Get the module twin
Twin twin = await client.GetTwinAsync();
Возможности автономной работы
Модули Azure IoT Edge работают в автономном режиме без ограничений после синхронизации с Центром Интернета вещей один раз. Устройства IoT Edge также могут расширять автономные возможности других IoT-устройств. Дополнительные сведения см. в статье "Общие сведения о расширенных автономных возможностях для устройств IoT Edge, модулей и подчиненных устройств".