Вы можете создавать пользовательские решения Интернета вещей, собирая компоненты Azure PaaS (платформа как услуга), как описано в этой статье. В этой статье и этой схеме описываются компоненты и службы Azure, которые часто используются решениями Интернета вещей, но ни одно решение не использует все эти компоненты.
Архитектура
Скачайте файл Visio этой архитектуры.
Рабочий процесс
К решениям Интернета вещей Azure относятся:
- Обычноустройства , создающие данные.
- Аналитические сведения о данных.
- Действия, выполняемые на основе аналитических сведений.
Например, двигатель отправляет данные температуры. Эти данные используются для оценки того, выполняется ли двигатель должным образом. Вы используете аналитические сведения о производительности двигателя, чтобы определить приоритеты в его расписании обслуживания.
Устройства
Azure IoT поддерживает широкий спектр устройств, от микроконтроллеров под управлением ОСРВ Azure и Azure Sphere до до плат разработчиков, таких как MX Chip и Raspberry Pi. Azure IoT также поддерживает шлюзы смарт-серверов, способные выполнять пользовательский код. Устройства могут выполнять локальную обработку через службу, например Azure IoT Edge, или просто подключаться непосредственно к Azure, чтобы они могли отправлять данные и получать данные из решения Интернета вещей.
При подключении устройств к облаку существует несколько служб, которые помогают приему данных. Центр Интернета вещей Azure — это служба облачного шлюза, которая может безопасно подключать устройства и управлять ими. Центр Интернета вещей Azure служба подготовки устройств (DPS) обеспечивает JIT-подготовку, которая помогает зарегистрировать большое количество устройств в безопасном и масштабируемом режиме. Azure Digital Twins позволяет виртуальным моделям реальных систем.
Аналитика
После подключения устройств к облаку можно обрабатывать и изучать их данные, чтобы получить настраиваемые аналитические сведения об их среде. На высоком уровне существует три способа обработки данных: горячий путь, теплый путь и холодный путь. Пути отличаются своими требованиями к задержке и доступу к данным.
- Горячий путь анализирует данные практически в реальном времени по мере поступления. Данные телеметрии горячего пути должны обрабатываться с очень низкой задержкой. Горячий путь обычно использует обработчик потоковой обработки. Рассмотрите возможность использования таких служб, как Azure Stream Analytics или Azure HDInsight. Выходные данные могут активировать оповещение или записаться в структурированный формат, который можно запросить с помощью аналитических средств.
- Теплый путь анализирует данные, которые могут содержать более длительные задержки для более подробной обработки. Рассмотрите Data Explorer Azure для хранения и анализа больших объемов данных.
- Холодный путь выполняет пакетную обработку через более длительные интервалы, например ежечасно или ежедневно. Холодный путь обычно работает над большими объемами данных, которые могут храниться в 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 или Mac.
- Dynamics 365 объединяет CRM и ERP в облаке.
- Microsoft Power Automate (Microsoft Flow) — это предложение SaaS для автоматизации рабочих процессов в приложениях и других службах SaaS.
- Azure Logic Apps создает и автоматизирует рабочие процессы, которые интегрируют приложения, данные, службы и системы.
Azure также предоставляет несколько служб, помогая отслеживать все решение Интернета вещей и обеспечивать его безопасность. К службам диагностики относятся Azure Monitor. Службы безопасности, такие как Azure Active Directory (Azure AD) и Microsoft Defender для Интернета вещей, помогают управлять параметрами безопасности, а также управлять параметрами безопасности и обнаружением угроз и реагированием на нее.
Компоненты
- ОСРВ Azure
- Azure Sphere
- Azure IoT Edge
- Центр Интернета вещей Azure
- Служба подготовки устройств (DPS) к добавлению в Центр Интернета вещей
- Azure Digital Twins
- Центры событий Azure
- Функции Azure
- Azure Stream Analytics
- Azure HDInsight
- Azure Data Explorer
- Azure Data Lake;
- Машинное обучение Azure
- Azure Databricks
- Power BI
- Azure Maps
- Когнитивный поиск Azure
- Управление API
- служба приложений Azure;
- Мобильные приложения Azure
- Dynamics 365
- Microsoft Power Automate (Microsoft Flow)
- Azure Logic Apps
- Azure Monitor
- Azure AD
- Microsoft Defender для Интернета вещей
Рекомендации
Эти рекомендации реализуют основы Платформы Azure Well-Architected Framework, которая представляет собой набор руководящих принципов, которые можно использовать для повышения качества рабочей нагрузки. Дополнительные сведения см. в статье microsoft Azure Well-Architected Framework.
Управляемость
Azure Digital Twins можно использовать для управления подключенными средами и мониторинга ими. Цифровой двойник — это виртуальная модель реальной среды, которая управляется данными из бизнес-систем и устройств Интернета вещей. Предприятия и организации используют цифровые двойники для включения аналитических сведений и действий. Разработчики и архитекторы используют решения цифровых двойников для реализации интеллектуальных и подключенных сред, таких как:
- Прогнозное обслуживание в производстве.
- Видимость цепочки поставок.
- Интеллектуальные полки для инвентаризации в режиме реального времени.
- Подключенные дома и умные здания.
Надежность
Надежность гарантирует, что ваше приложение позволит вам выполнить ваши обязательства перед клиентами. Дополнительные сведения см. в разделе "Обзор основы надежности".
Ключевыми аспектами отказоустойчивых решений Интернета вещей являются непрерывность бизнес-процессов и аварийное восстановление. Проектирование для обеспечения высокого уровня доступности (HA) и аварийного восстановления (DR) поможет определить и достичь необходимых целей времени доступности для решения.
Различные службы Azure предлагают различные варианты избыточности и отработки отказа, которые помогут вам достичь целей доступности, которые лучше всего подходят для ваших бизнес-целей. Включение любой из этих альтернатив обеспечения высокого уровня доступности и аварийного восстановления в решение для Интернета вещей требует тщательной оценки компромиссов между:
- Необходимый уровень устойчивости.
- Сложность реализации и обслуживания.
- Влияние на стоимость проданных товаров (COGS).
Сведения о производительности конкретной службы можно найти в документации для каждой службы Интернета вещей Azure.
Безопасность
Безопасность обеспечивает гарантии от преднамеренных атак и злоупотребления ценными данными и системами. Дополнительные сведения см. в обзоре основы безопасности. В этом разделе содержатся рекомендации по созданию безопасных решений.
Модель безопасности "Никому не доверяй"
Нулевое доверие — это модель безопасности, которая предполагает, что нарушения будут возникать, и обрабатывает каждую попытку доступа, как если бы она поступила из открытой сети. Нулевое доверие предполагает, что вы реализовали основы, такие как защита удостоверений и ограничение доступа.
Базовая реализация безопасности включает в себя явную проверку пользователей, наличие видимости на своих устройствах и возможность принимать решения о динамическом доступе с помощью обнаружения рисков в режиме реального времени. После работы с основами вы можете перенести фокус на следующие требования нулевого доверия для решений Интернета вещей:
- Используйте надежное удостоверение для проверки подлинности устройств.
- Используйте минимальный привилегированный доступ для устранения радиуса взрыва.
- Отслеживайте работоспособности устройства, чтобы обеспечить доступ или пометить устройства для исправления.
- Выполняйте обновления, чтобы обеспечить работоспособность устройств.
- Мониторинг для обнаружения и реагирования на возникающие угрозы.
Надежный и безопасный обмен данными
Все данные, поступающие с устройства и отправляющиеся на него, должны быть надежными. Если устройство не поддерживает следующие возможности шифрования, оно должно быть ограничено локальными сетями, а все межсетевой обмен данными должны проходить через полевой шлюз:
- Шифрование данных и цифровые подписи с помощью надежно защищенного, публично проанализированного и широко реализованного алгоритма шифрования симметричного ключа.
- Поддержка TLS 1.2 для TCP или других путей связи на основе потока или DTLS 1.2 для путей связи на основе датаграммы. Поддержка обработки сертификатов X.509 является необязательной. Вы можете заменить обработку сертификатов X.509 более эффективным и эффективным режимом предварительного общего ключа для TLS, который можно реализовать с поддержкой алгоритмов AES и SHA-2.
- Обновляемое хранилище ключей и ключи для каждого устройства. Каждое устройство должно иметь уникальный материал ключа или маркеры, которые идентифицируют его в системе. Устройства должны безопасно хранить ключ на устройстве (например, с помощью безопасного хранилища ключей). Устройство должно иметь возможность периодически обновлять ключи или маркеры или мгновенно в аварийных ситуациях, например при нарушении системы безопасности.
- Встроенное ПО и программное обеспечение приложения на устройстве должны позволять применение обновлений для исправления обнаруженных уязвимостей безопасности.
Многие устройства слишком ограничены для поддержки этих требований. В этом случае следует использовать полевой шлюз. Безопасное подключение устройств к полевому шлюзу через локальную сеть и шлюз обеспечивает безопасный обмен данными с облаком.
Физическая проверка наличия незаконных изменений
Рекомендуемый дизайн устройства включает функции, защищающиеся от попыток физического манипулирования, которые помогают обеспечить безопасность, целостность и надежность всей системы.
Пример:
- Выберите микроконтроллеры, микропроцессоры или вспомогательное оборудование, которое обеспечивает безопасное хранение и использование материала криптографического ключа, например интеграцию доверенного платформенного модуля (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
Связанные ресурсы
- Общие сведения о IoT
- Выбор решения Интернета вещей (IoT) в Azure
- Руководство по работе с аналитикой данных промышленного Интернета вещей
- Эталонные архитектуры Интернета вещей Azure для конкретных отраслей
- Создание интеллектуальных пространств с помощью Azure Digital Twins
- Интернет вещей и аналитика данных