Вы можете создавать пользовательские решения Интернета вещей, собирая компоненты платформы Azure как услуги (PaaS), как описано в этой статье. В этой статье описаны компоненты и службы Azure, которые часто используют решения Интернета вещей, но ни одно решение не использует все эти компоненты.
Архитектура
Скачайте файл Visio для этой архитектуры.
Рабочий процесс
Следующий рабочий процесс соответствует предыдущей схеме:
- Обычно устройства, создающие данные.
- Аналитические сведения о данных.
- Действия, выполняемые на основе аналитических сведений .
Например, двигатель отправляет данные температуры. Эти данные используются для оценки того, выполняется ли двигатель должным образом. Вы используете аналитические сведения о производительности двигателя для определения приоритета его расписания обслуживания.
.
Azure IoT поддерживает широкий спектр устройств, от микроконтроллеров под управлением Azure Sphere до до доски разработчиков, такие как MXCHIP и Raspberry Pi. Azure IoT также поддерживает шлюзы смарт-серверов, способные выполнять пользовательский код. Устройства могут выполнять локальную обработку через службу, например Azure IoT Edge, или просто подключаться непосредственно к Azure, чтобы они могли отправлять данные и получать данные из решения Интернета вещей.
При подключении устройств к облаку существует несколько служб, которые помогают приему данных. Центр Интернета вещей Azure — это служба облачного шлюза, которая может безопасно подключать устройства и управлять ими. Центр Интернета вещей Azure служба подготовки устройств обеспечивает JIT-подготовку, которая помогает зарегистрировать большое количество устройств в безопасном и масштабируемом режиме. Azure Digital Twins позволяет виртуальным моделям реальных систем.
Аналитические выводы (Insights)
После подключения устройств к облаку можно обработать и просмотреть данные, чтобы получить настраиваемые аналитические сведения об их среде. На высоком уровне существует три способа обработки данных: горячий путь, теплый путь и холодный путь. Пути отличаются в своих требованиях к задержке и доступу к данным.
- Горячий путь анализирует данные практически в режиме реального времени по мере поступления. Данные телеметрии горячего пути должны обрабатываться с низкой задержкой. Горячий путь обычно использует обработчик потоковой обработки. Рассмотрите возможность использования таких служб, как Azure Stream Analytics или Azure HDInsight. Выходные данные могут активировать оповещение или записываться в структурированный формат, который можно запрашивать с помощью аналитических средств.
- Теплый путь анализирует данные, которые могут содержать более длительные задержки для более подробной обработки. Рассмотрим Azure Data Explorer для хранения и анализа больших объемов данных.
- Холодный путь выполняет пакетную обработку с более длинными интервалами, например почасовой или ежедневной. Холодный путь обычно работает над большими объемами данных, которые могут храниться в Azure Data Lake Storage. Результаты не должны быть так своевременно, как в горячих или теплых путях. Рекомендуется использовать Машинное обучение Azure или Azure Databricks для анализа холодных данных.
Действия
Вы можете использовать аналитические сведения, собранные для управления и управления средой. Действия бизнес-интеграции могут включать:
- Хранение информационных сообщений
- Повышение тревоги
- Отправка сообщений электронной почты или SMS
- Интеграция с бизнес-приложениями, такими как управление отношениями клиентов (CRM) и решения по планированию корпоративных ресурсов (ERP)
Для управления и бизнес-интеграции можно использовать следующие службы:
- Power BI подключается к данным, модели и визуализирует данные. Power BI можно использовать для совместной работы с данными и использования искусственного интеллекта для принятия решений на основе данных.
- Azure Maps создает веб-приложения с поддержкой расположения и мобильных приложений с помощью геопространственных API, пакетов SDK и служб, таких как поиск, карты, маршрутизация, отслеживание и трафик.
- Поиск ИИ Azure обеспечивает безопасное получение информации в большом масштабе по сравнению с пользовательским содержимым в традиционных и генеривных приложениях поиска ИИ. Поиск ИИ имеет возможности индексирования, обогащения ИИ и запросов.
- Azure Управление API предоставляет единое место для управления всеми API-интерфейсами.
- служба приложение Azure развертывает веб-приложения, масштабируемые в организации.
- Мобильные приложения Azure создают кроссплатформенные и собственные приложения для iOS, Android, Windows или macOS.
- Dynamics 365 объединяет решения ПО CRM и ERP в облаке.
- Microsoft Power Automate — это программное обеспечение как услуга (Saas) для автоматизации рабочих процессов в приложениях и других службах SaaS.
- Azure Logic Apps создает и автоматизирует рабочие процессы, которые интегрируют приложения, данные, службы и системы.
Azure также предоставляет несколько служб для мониторинга всего решения Интернета вещей и обеспечения безопасности. К службам диагностики относятся Azure Monitor. Службы безопасности, такие как Идентификатор Microsoft Entra и Microsoft Defender для Интернета вещей , помогают управлять параметрами безопасности, а также управлять ими, а также выявлять угрозы и реагировать на нее.
Компоненты
- Управление API
- Поиск по искусственному интеллекту Azure
- Служба приложений Azure
- Обозреватель данных Azure
- Azure Data Lake
- Azure Databricks
- Azure Digital Twins
- Центры событий Azure
- Функции Azure
- Azure HDInsight
- Azure IoT Edge
- Служба подготовки устройств для Центра Интернета вещей Azure
- Центр Интернета вещей Azure
- Приложения логики Azure
- Машинное обучение Azure
- Azure Maps
- Мобильные приложения Azure
- Azure Monitor
- Azure Sphere
- Azure Stream Analytics
- Dynamics 365
- Microsoft Defender для Интернета вещей
- Microsoft Entra ID
- Microsoft Power Automate
- Power BI
Рекомендации
Эти рекомендации реализуют основные принципы платформы Azure Well-Architected Framework, которая является набором руководящих принципов, которые можно использовать для улучшения качества рабочей нагрузки. Дополнительные сведения см. в статье Microsoft Azure Well-Architected Framework.
Управляемость
Azure Digital Twins можно использовать для управления подключенными средами и мониторинга. Цифровой двойник — это виртуальная модель реальной среды, которая управляется данными из бизнес-систем и устройств Интернета вещей. Предприятия и организации используют цифровые двойники для включения аналитических сведений и действий. Разработчики и архитекторы используют решения цифровых двойников для реализации интеллектуальных и подключенных сред, таких как:
- Прогнозное обслуживание в производстве.
- Видимость цепочки поставок.
- Смарт-полки для инвентаризации в режиме реального времени.
- Подключенные дома и умные здания.
Надежность
Надежность гарантирует, что ваше приложение позволит вам выполнить ваши обязательства перед клиентами. Дополнительные сведения см . в контрольном списке проверки конструктора для обеспечения надежности.
Ключевыми аспектами отказоустойчивых решений Интернета вещей являются непрерывность бизнес-процессов и аварийное восстановление. Проектирование высокого уровня доступности (HA) и аварийного восстановления (АВАРИЙНОе восстановление) поможет вам определить и достичь необходимых целей простоя для решения.
Различные службы Azure предлагают различные варианты избыточности и отработки отказа, чтобы помочь вам достичь целей простоя, которые лучше всего подходят для ваших бизнес-целей. Включение любой из этих альтернатив обеспечения высокого уровня доступности и аварийного восстановления в решение для Интернета вещей требует тщательной оценки компромиссов между:
- Требуется уровень устойчивости.
- Сложность реализации и обслуживания.
- Влияние стоимости товаров, проданных (COGS).
Сведения о производительности для конкретной службы можно найти в документации для каждой службы Интернета вещей Azure.
Безопасность
Безопасность обеспечивает гарантии от преднамеренного нападения и злоупотребления ценными данными и системами. Дополнительные сведения см. в контрольном списке проверки конструктора для безопасности.
Модель безопасности нулевого доверия
Нулевое доверие — это модель безопасности, предполагающая, что нарушения будут происходить, и обрабатывает каждую попытку доступа, как если бы она возникла из открытой сети. Нулевое доверие предполагает, что вы реализовали основы, такие как защита удостоверений и ограничение доступа.
Базовая реализация безопасности включает явное подтверждение пользователей, наличие видимости на своих устройствах и возможность принятия решений динамического доступа с помощью обнаружения рисков в режиме реального времени. После выполнения основных действий вы можете переключить фокус на следующие требования нулевого доверия для решений Интернета вещей:
- Используйте строгое удостоверение для проверки подлинности устройств.
- Используйте наименее привилегированный доступ для устранения радиуса взрыва.
- Отслеживайте работоспособности устройства, чтобы включить доступ или пометить устройства для исправления.
- Выполняйте обновления, чтобы обеспечить работоспособность устройств.
- Отслеживайте обнаружение и реагирование на возникающие угрозы.
Надежный и безопасный обмен данными
Все данные, поступающие с устройства и отправляющиеся на него, должны быть надежными. Если устройство не поддерживает следующие возможности шифрования, оно должно быть ограничено локальными сетями, а все межсетевой обмен данными должны проходить через шлюз полей:
- Шифрование данных и цифровые подписи с помощью надежно защищенного, публично проанализированного и широко реализованного алгоритма шифрования симметричного ключа.
- Поддержка TLS 1.2 для TCP или других путей обмена данными на основе потока или DTLS 1.2 для путей связи на основе диаграммы данных. Поддержка обработки сертификатов X.509 является необязательной. Вы можете заменить обработку сертификатов X.509 более эффективным и эффективным режимом предварительного общего ключа для TLS, который можно реализовать с поддержкой алгоритмов AES и SHA-2.
- Обновляемое хранилище ключей и ключи для каждого устройства. Каждое устройство должно иметь уникальный материал ключа или маркеры, которые идентифицируют его в системе. Устройства должны безопасно хранить ключ на устройстве (например, с помощью безопасного хранилища ключей). Устройство должно иметь возможность периодически обновлять ключи или маркеры или мгновенно в аварийных ситуациях, например при нарушении системы безопасности.
- Встроенное ПО и программное обеспечение приложения на устройстве должны позволять применение обновлений для исправления обнаруженных уязвимостей безопасности.
Многие устройства слишком ограничены для поддержки этих требований. В этом случае следует использовать шлюз полей. Безопасное подключение устройств к полевому шлюзу через локальную сеть и шлюз обеспечивает безопасный обмен данными с облаком.
Физическая проверка наличия незаконных изменений
Рекомендуемый дизайн устройств включает функции, которые защищаются от попыток физической манипуляции, чтобы обеспечить безопасность, целостность и надежность всей системы.
Например:
- Выберите микроконтроллеры, микропроцессоры или вспомогательное оборудование, которое предоставляет безопасное хранилище и использует интеграцию криптографического материала ключа, например доверенного платформенного модуля (TPM).
- Привязка безопасного загрузчика и безопасной загрузки программного обеспечения в TPM.
- Используйте датчики для обнаружения попыток вторжений и попыток управления средой устройства с оповещениями и потенциальными "цифровыми саморазрушениями" устройства.
Оптимизация затрат
Оптимизация затрат заключается в поиске способов уменьшения ненужных расходов и повышения эффективности работы. Дополнительные сведения см . в контрольном списке проверки конструктора для оптимизации затрат.
В общих случаях для оценки затрат используйте калькулятор цен Azure. Другие рекомендации описаны в разделе "Затраты" в Microsoft Azure Well-Architected Framework.
Оптимизация производительности
Уровень производительности — это способность вашей рабочей нагрузки эффективно масштабироваться в соответствии с требованиями, предъявляемыми к ней пользователями. Дополнительные сведения см . в контрольном списке проверки конструктора для повышения эффективности.
Создайте решение для развертывания в глобальном масштабе. Для оптимальной масштабируемости создайте приложение Интернета вещей с дискретными службами, которые могут масштабироваться независимо. В этом разделе описываются рекомендации по масштабируемости для нескольких служб Azure.
Центр Интернета вещей
Каждый центр Интернета вещей подготавливается с определенным количеством единиц в определенном ценовом и масштабируемом уровне. Уровень и число единиц определяют максимальную дневную квоту сообщений, которые вы можете отправить в центр. Дополнительные сведения см. в разделе о квотах и регулировании Центра Интернета вещей. Вы можете увеличить масштаб, не прерывая имеющиеся операции.
Для Центра Интернета вещей необходимо учитывать следующие факторы масштабирования:
- максимальная дневная квота сообщений в Центре Интернета вещей;
- квота на число подключенных устройств в экземпляре Центра Интернета вещей;
- Пропускная способность приема: как быстро Центр Интернета вещей может получать сообщения.
- Пропускная способность обработки: как быстро обрабатываются входящие сообщения.
Центр Интернета вещей автоматически разбивает сообщения устройств на основе идентификатора устройства. Все сообщения с определенного устройства будут всегда доставляться в тот же раздел, однако в одном разделе всегда будут сообщения с нескольких устройств. Таким образом, единицей измерения параллелизации является идентификатор раздела.
Функции Azure
Если Функции Azure считывается из конечной точки Центры событий Azure, на секцию концентратора событий имеется максимальное количество экземпляров функций. Максимальная скорость обработки определяется тем, как быстро один экземпляр функции может обрабатывать события из одного раздела. Функция должна обрабатывать сообщения в пакетах.
Stream Analytics
Задания Stream Analytics лучше всего масштабируются, если они параллельны во всех точках в конвейере Stream Analytics, от входных данных до запроса к выходным данным. Полностью параллельные задания позволяют Stream Analytics разделить работу между несколькими вычислительными узлами. Дополнительные сведения см. в статье Использование параллелизации запросов в Azure Stream Analytics.
Соавторы
Эта статья поддерживается корпорацией Майкрософт. Первоначально он был написан следующими участниками.
Автор субъекта:
- Мэтью Коснер | Главный менеджер по разработке программного обеспечения
Другой участник:
- Армандо Бланко Гарсия | Старший менеджер по программам
Чтобы просмотреть недоступные профили LinkedIn, войдите в LinkedIn.
Следующие шаги
- Эталонная архитектура Microsoft Azure IoT
- Архитектура безопасности Интернета вещей
- Нулевое доверие кибербезопасности для Интернета вещей
- Техническое руководство по непрерывности бизнес-процессов Azure
- Аварийное восстановление и высокий уровень доступности для приложений Azure