Что такое сетка событий Azure?
Сетка событий Azure — это полностью масштабируемая полностью управляемая служба распространения сообщений Pub Sub, которая предлагает гибкие шаблоны потребления сообщений с помощью протоколов MQTT и HTTP. С помощью Сетка событий Azure можно создавать конвейеры данных с данными устройства, интегрировать приложения и создавать бессерверные архитектуры на основе событий. Сетка событий позволяет клиентам публиковать и подписываться на сообщения по протоколам MQTT версии 3.1.1 и версии 5.0 для поддержки решений Интернета вещей (IoT). С помощью ПРОТОКОЛА HTTP сетка событий позволяет создавать решения на основе событий, в которых служба издателя объявляет об изменениях состояния системы (события) для приложений подписчиков. Сетка событий может быть настроена для отправки событий подписчикам (принудительной доставке) или подписчикам можно подключиться к сетке событий для чтения событий (доставки по запросу). Служба "Сетка событий" поддерживает спецификацию CloudEvents 1.0 для обеспечения взаимодействия между системами.
Сетка событий Azure — это общедоступная служба, развернутая в зонах доступности во всех регионах, поддерживающих их. Список регионов, поддерживаемых сеткой событий, см. в разделе "Продукты", доступные по регионам.
Обзор
Сетка событий Azure используется на разных этапах конвейеров данных для достижения разнообразных целей интеграции.
Обмен сообщениями MQTT. Устройства и приложения Интернета вещей могут взаимодействовать друг с другом по протоколу MQTT. Сетка событий также может использоваться для маршрутизации сообщений MQTT в службы Azure или пользовательские конечные точки для дальнейшего анализа данных, визуализации или хранилища. Эта интеграция со службами Azure позволяет создавать конвейеры данных, начинающиеся с приема данных с устройств Интернета вещей.
Распределение данных с помощью режимов отправки и извлечения. В любой момент в конвейере данных HTTP-приложения могут использовать сообщения с помощью API отправки или извлечения. Источник данных может включать данные клиентов MQTT, но также включает следующие источники данных, которые отправляют события по протоколу HTTP:
- Службы Azure;
- Пользовательские приложения
- Системы внешнего партнера (SaaS)
Механизм принудительной доставки Сетки событий отправляет данные в места назначения, которые включают собственные веб-перехватчики приложений и службы Azure.
Возможности
Сетка событий предлагает богатую смесь функций. К этим функциям относятся:
Обмен сообщениями MQTT
- Поддержка MQTT версии 3.1.1 и MQTT версии 5.0. Используйте любую клиентную библиотеку MQTT открытый код для взаимодействия со службой.
- Пользовательские разделы с поддержкой подстановочных знаков— использование собственной структуры тем.
- Модель обмена сообщениями о публикации и подписке. Эффективное взаимодействие с использованием шаблонов обмена сообщениями "один ко многим", "многие ко многим" и "один к одному".
- Встроенная облачная интеграция. Маршрутизация сообщений MQTT в службы Azure или пользовательские веб-перехватчики для дальнейшей обработки.
- Гибкая и детализированная модель управления доступом — группирование клиентов и разделов для упрощения управления доступом и использование поддержки переменных в шаблонах разделов для точного управления доступом.
- Методы - проверки подлинности брокера MQTT X.509 — это стандарт проверки подлинности в отрасли на устройствах Интернета вещей, Microsoft Entra IDauthentication — это стандарт проверки подлинности Azure для приложений и проверки подлинности OAuth 2.0 (JSON Web Token) — это упрощенный, безопасный и гибкий вариант для клиентов MQTT, которые не подготовлены в Azure.
- Поддержка TLS 1.2 и TLS 1.3 . Защита взаимодействия клиента с помощью надежных протоколов шифрования.
- Поддержка нескольких сеансов— подключение приложений к нескольким активным сеансам для обеспечения надежности и масштабируемости.
- MQTT через WebSockets — включение подключения для клиентов в средах, ограниченных брандмауэром.
- Пользовательские доменные имена . Позволяет пользователям назначать собственные доменные имена конечным точкам пространства имен Сетки событий MQTT, повышая безопасность и упрощая настройку клиента.
- События жизненного цикла клиента— позволяют приложениям реагировать на события о состоянии подключения клиента или операциях ресурсов клиента.
Обмен сообщениями о событиях (HTTP)
- Гибкая модель потребления событий — при использовании HTTP используют события с помощью режима извлечения или отправки.
- Системные события — быстрое выполнение со встроенными событиями службы Azure.
- Собственные события приложения— используйте сетку событий для маршрутизации, фильтрации и надежной доставки пользовательских событий из приложения.
- События партнеров— подписываться на события поставщика SaaS партнера и обрабатывать их в Azure.
- Расширенная фильтрация— фильтрация по типу события или другим атрибутам события, чтобы убедиться, что обработчики событий или приложения-получатели получают только соответствующие события.
- Надежность — функция принудительной доставки обеспечивает механизм повторных попыток в 24 часа с экспоненциальным обратным выходом, чтобы убедиться, что события доставляются. Если вы используете доставку по запросу, приложение имеет полный контроль над потреблением событий.
- Высокая пропускная способность — создание интегрированных решений с помощью сетки событий.
- Пользовательские доменные имена — позволяет пользователям назначать собственные доменные имена конечным точкам пространства имен Сетки событий, повышая безопасность и упрощая настройку клиента.
Примечание.
Что касается tls 1.0/ 1.1, нерекомендуемого: для системных разделов необходимо принять меры только для доставки событий в назначения веб-перехватчика. Если назначение поддерживает TLS 1.2, доставка событий происходит с помощью версии 1.2. Если назначение не поддерживает TLS 1.2, доставка событий автоматически возвращается к версии 1.0 и 1.1. После 1 марта 2025 г. доставка событий с использованием версии 1.0 и 1.1 не будет поддерживаться. Убедитесь, что назначения веб-перехватчика поддерживают TLS 1.2. Одним из простых способов проверки поддержки TLS 1.2 является использование Лабораторий SSL Qualys. Если в отчете показано, что протокол TLS 1.2 поддерживается, действие не требуется. Дополнительные сведения см. в следующей записи блога: Выход на пенсию: предстоящие изменения TLS для Сетка событий Azure
Случаи использования
Сетка событий поддерживает следующие варианты использования:
Обмен сообщениями MQTT
Сетка событий позволяет клиентам взаимодействовать с пользовательскими именами разделов MQTT с помощью модели обмена сообщениями публикации и подписки. Сетка событий поддерживает клиенты, которые публикуют и подписываются на сообщения через MQTT версии 3.1.1, MQTT версии 3.1.1 через WebSockets, MQTT v5 и MQTT версии 5 по webSockets. Сетка событий позволяет отправлять сообщения MQTT в облако для анализа данных, хранения и визуализаций, среди прочего.
Служба "Сетка событий" интегрируется с Azure IoT MQ для моста с возможностями брокера MQTT MQTT в пограничном регионе с возможностями брокера MQTT сетки событий в облаке. Azure IoT MQ — это новый распределенный брокер MQTT для пограничных вычислений, работающий в кластерах Kubernetes с поддержкой Arc. Теперь она доступна в общедоступной предварительной версии в рамках операций Интернета вещей Azure.
Функция брокера MQTT в Сетка событий Azure идеально подходит для реализации автомобильных и мобильных сценариев, среди прочего. См . эталонную архитектуру , чтобы узнать, как создавать безопасные и масштабируемые решения для подключения миллионов транспортных средств к облаку с помощью служб обмена сообщениями и аналитики данных Azure.
компонент брокера MQTT Сетка событий Azure позволяет выполнять следующие сценарии.
Прием данных телеметрии Интернета вещей
Прием данных телеметрии с помощью шаблона обмена сообщениями "многие ко одному". Например, используйте сетку событий для отправки данных телеметрии с нескольких устройств Интернета вещей в облачное приложение. Этот шаблон позволяет приложению выгрузить нагрузку на управление большим количеством подключений с устройствами в Сетку событий.
Команды и управление
Управляйте клиентами MQTT с помощью шаблона сообщения "один к одному". Например, используйте сетку событий для отправки команды из облачного приложения на устройство Интернета вещей.
Широковещательные оповещения
Трансляция оповещений в парк клиентов с помощью шаблона обмена сообщениями "один ко многим ". Например, используйте сетку событий для отправки оповещений из облачного приложения на несколько устройств Интернета вещей. Этот шаблон позволяет приложению публиковать только одно сообщение, которое служба реплицирует для каждого интересующего клиента.
Интеграция данных MQTT
Интеграция данных из клиентов MQTT путем маршрутизации сообщений MQTT в службы Azure и пользовательские конечные точки через отправку или доставку по запросу. Например, используйте сетку событий для маршрутизации данных телеметрии с устройств Интернета вещей в Центры событий, а затем в Azure Stream Analytics, чтобы получить аналитические сведения из телеметрии устройства.
Отправка событий
Сетка событий может быть настроена для отправки событий в разнообразный набор служб Azure или веб-перехватчиков с помощью доставки событий push-уведомлений. Источники событий включают пользовательские приложения, службы Azure и службы партнеров (SaaS), которые публикуют события, объявляющие изменения состояния системы (также известные как дискретные события). В свою очередь, Служба "Сетка событий" предоставляет эти события для настроенных назначений подписчиков.
Отправка push-уведомлений сетки событий позволяет реализовать следующие варианты использования.
Примечание.
Отправка push-уведомлений доступна на базовом уровне сетки событий и стандартном уровне сетки событий, чтобы узнать больше о различиях, чтобы узнать, как выбрать нужный уровень сетки событий для вашего решения.
Создание бессерверных решений на основе событий
Используйте сетку событий для создания бессерверных решений с помощью приложений Функции Azure, Logic Apps и Управление API. Использование бессерверных служб с сеткой событий обеспечивает уровень производительности, экономии усилий и интеграции выше классических моделей вычислений, где необходимо приобретать, управлять, защищать и поддерживать всю инфраструктуру, развернутую.
Получение событий из служб Azure
Сетка событий может получать события из 20 служб Azure, чтобы автоматизировать операции. Например, вы можете настроить сетку событий для получения события при создании нового большого двоичного объекта в учетной записи служба хранилища Azure, чтобы подчиненное приложение могло считывать и обрабатывать его содержимое. Список всех поддерживаемых служб и событий Azure см. в разделе "Системные разделы".
Получение событий из приложений
Ваша собственная служба или приложение публикует события в сетке событий, которая обрабатывает приложения подписчиков. Сетка событий содержит разделы пространства имен для решения требований к интеграции и маршрутизации в масштабе с помощью простой модели ресурсов. Вы также можете использовать пользовательские разделы для удовлетворения основных требований интеграции и доменов для простой модели управления и маршрутизации, когда необходимо распределить события в сотни или тысячи различных групп.
Получение событий от партнера (поставщиков SaaS)
Мультитенантный поставщик или платформа SaaS может публиковать свои события в Сетке событий с помощью функции" с именем "События партнеров". Вы можете подписаться на эти события и автоматизировать задачи, например. Сейчас доступны события следующих партнеров:
- Auth0
- API Microsoft Graph. С помощью API Microsoft Graph можно получить события из идентификатора Microsoft Entra, Microsoft Outlook, Teams, бесед, оповещений системы безопасности и универсальной печати.
- Племенная группа
- SAP
Обработчики событий
Подписка на события — это универсальный ресурс конфигурации, позволяющий определить обработчик событий или назначение, в которые отправляются события с помощью принудительной доставки. Например, можно отправлять данные в веб-перехватчик, функцию Azure или Центры событий. Полный список поддерживаемых обработчиков событий см. в следующих статье:
- Обработчики событий, поддерживаемые в разделах пространства имен.
- Обработчики событий, поддерживаемые в пользовательских, системных, доменных и партнерских разделах .
Доставка дискретных событий
Сетка событий Azure функции извлечения доставки CloudEvents. С помощью этого режима доставки клиенты подключаются к сетке событий для чтения событий. Следующие варианты использования можно реализовать с помощью доставки по запросу.
Получение событий в собственном темпе
Один или несколько клиентов могут подключаться к Сетка событий Azure для чтения сообщений в собственном темпе. Служба "Сетка событий" обеспечивает клиентам полный контроль над потреблением событий. Ваше приложение может получать события в определенное время суток, например. Ваше решение также может увеличить скорость потребления, добавив больше клиентов, которые считываются из сетки событий.
Использование событий по приватной ссылке
Вы можете настроить частные ссылки для подключения к Сетка событий Azure для публикации и чтения CloudEvents через частную конечную точку в виртуальной сети. Трафик между виртуальной сетью и сеткой событий передает магистральную сеть Майкрософт.
Внимание
Приватные каналы доступны с доставкой по запросу, а не с доставкой push-уведомлений. При подключении приложения к сетке событий можно использовать частные ссылки для публикации событий или получения событий, а не при подключении сетки событий к веб-перехватчику или службе Azure для доставки событий.
Регионы, в которых доступно пространство имен Сетки событий
Ниже приведен список регионов, где доступны новые функции брокера MQTT и пространства имен:
Region | Region | Region | Region |
---|---|---|---|
Восточная Австралия | Юго-восточная часть Австралии | Центральная Австралия | Центральная Австралия 2 |
Южная Бразилия | Юго-Восточная Бразилия | Центральная Канада | Восточная Канада |
Центральная Индия | Центральная часть США | Восточная Азия | Восточная часть США |
Восточная часть США 2 | Западная часть США | Центральная Франция | Южная Франция |
Северная Германия | Центрально-Западная Германия | Израиль, центральный регион | Северная Италия |
Восточная Япония | Западная Япония | Республика Корея, центральный регион | Республика Корея, южный регион |
Центральная Мексика | Центрально-северная часть США | Северная Европа | Восточная Норвегия; |
Центральная Польша | Западная часть ЮАР | Северная часть ЮАР | Центрально-южная часть США |
Южная Индия | Юго-Восточная Азия | Центральная Испания | Центральная Швеция |
Южная Швеция | Северная Швейцария | Западная Швейцария | Северная часть ОАЭ; |
Центральная часть ОАЭ | южная часть Соединенного Королевства | западная часть Соединенного Королевства | Западная Европа |
западная часть США 2 | Западная часть США — 3 | Центрально-западная часть США |
Следующие шаги
Обмен сообщениями MQTT
- Обзор
- Публикация и подписка на сообщения MQTT
- Руководство. Маршрутизация сообщений MQTT в Центры событий Azure с помощью разделов пространства имен
- Руководство. Маршрутизация сообщений MQTT в Функции Azure с помощью пользовательских разделов
Распределение данных с помощью доставки по запросу или отправке
- Обзор доставки по запросу.
- Общие сведения о доставке отправки.
- Основные понятия
- Краткое руководство . Публикация и подписка на события приложения с помощью разделов пространства имен.