Qu’est-ce qu’Azure Event Grid ?

Azure Event Grid est un service de distribution de messages pub sub hautement évolutif et complètement managé qui offre des modèles de consommation de messages flexibles à l’aide des protocoles MQTT et HTTP. Avec Azure Event Grid, vous pouvez créer des pipelines de données avec des données d’appareil, intégrer des applications et générer des architectures serverless pilotées par les événements. Event Grid permet aux clients de publier et de s’abonner à des messages via les protocoles MQTT v3.1.1 et v5.0 pour prendre en charge les solutions Internet des objets (IoT). Via HTTP, Event Grid vous permet de créer des solutions basées sur les événements où un service d’éditeur annonce ses changements d’état système (événements) pour les applications abonnées. Event Grid peut être configuré pour envoyer des événements aux abonnés (livraison push) ou les abonnés peuvent se connecter à Event Grid pour lire les événements (livraison pull). Event Grid prend en charge la spécification CloudEvents 1.0 pour assurer l’interopérabilité entre les systèmes.

Diagramme de haut niveau d’Event Grid montrant les éditeurs et les abonnés utilisant les protocoles MQTT et HTTP.

Azure Event Grid est un service en disponibilité générale déployé dans des zones de disponibilité dans toutes les régions qui les prennent en charge. Pour obtenir la liste des régions prises en charge par Event Grid, consultez Disponibilité des produits par région.

Vue d’ensemble

Azure Event Grid est utilisé à différentes étapes des pipelines de données pour atteindre un ensemble diversifié d’objectifs d’intégration.

Messagerie MQTT. Les appareils et applications IoT peuvent communiquer entre eux via MQTT. Event Grid peut également être utilisé pour acheminer des messages MQTT vers des services Azure ou des points de terminaison personnalisés pour une analyse, une visualisation ou un stockage des données supplémentaires. Cette intégration aux services Azure vous permet de créer des pipelines de données qui commencent par l’ingestion de données à partir de vos appareils IoT.

Distribution des données à l’aide des modes de livraison push et pull. À tout moment d’un pipeline de données, les applications HTTP peuvent consommer des messages à l’aide d’API push ou pull. La source des données peut inclure les données des clients MQTT, mais également les sources de données suivantes qui envoient leurs événements via HTTP :

  • Services Azure
  • Vos applications personnalisées
  • Systèmes partenaires externes (SaaS)

Quand vous utilisez la livraison par envoi (push), Event Grid peut envoyer les données vers des destinations qui incluent vos propres webhooks d’application et services Azure.

Fonctionnalités

Event Grid offre un riche mélange de fonctionnalités. Voici quelques fonctionnalités :

Messagerie MQTT

  • Prise en charge de MQTT v3.1.1 et MQTT v5.0 : utilisez n’importe quelle bibliothèque cliente MQTT open source pour communiquer avec le service.
  • Rubriques personnalisées avec prise en charge des caractères génériques : tirez parti de votre propre structure de rubrique.
  • Modèle de messagerie publication-abonnement : communiquez efficacement à l’aide de modèles de messagerie one-to-many, many-to-one, et one-to-one.
  • Intégration cloud intégrée : acheminez vos messages MQTT vers des services Azure ou des webhooks personnalisés pour un traitement ultérieur.
  • Modèle de contrôle d’accès flexible et affiné : regroupez des clients et une rubrique pour simplifier la gestion du contrôle d’accès, et utilisez la prise en charge des variables dans les modèles de rubrique pour un contrôle d’accès affiné.
  • Authentification par certificat X.509 : authentifiez vos appareils à l’aide du mécanisme standard pour l’authentification dans le secteur IoT.
  • Authentification avec Microsoft Entra ID (anciennement Azure Active Directory) : permet d’authentifier vos applications à l’aide du mécanisme d’authentification standard d’Azure.
  • Prise en charge de TLS 1.2 et TLS 1.3 : sécurisez vos communications client à l’aide de protocoles de chiffrement robustes.
  • Prise en charge multisession : connectez vos applications à plusieurs sessions actives pour garantir la fiabilité et l’extensibilité.
  • MQTT sur WebSockets : activez la connectivité pour les clients dans des environnements restreints par pare-feu.

Messagerie d’événements (HTTP)

  • Modèle de consommation d’événements flexible : lors de l’utilisation de HTTP, consommez les événements à l’aide du mode de livraison pull ou push.
  • Événements système : soyez rapidement opérationnel avec les événements de service Azure intégrés.
  • Vos propres événements d’application : utilisez Event Grid pour router, filtrer et livrer de manière fiable les événements personnalisés dans votre application.
  • Événements de partenaires : abonnez-vous aux événements de votre fournisseur SaaS partenaire et traitez-les sur Azure.
  • Filtrage avancé : filtrez le type d’événement ou d’autres attributs d’événement pour vous assurer que vos gestionnaires d’événements ou applications grand public reçoivent uniquement les événements pertinents.
  • Fiabilité : la livraison push propose un mécanisme de nouvelle tentative 24 heures sur 24 avec backoff exponentiel pour s’assurer que les événements sont remis. À l’aide de la livraison pull, votre application dispose d’un contrôle total sur la consommation des événements.
  • Haut débit : créez des solutions intégrées à volume élevé avec Event Grid.

Cas d’utilisation

Event Grid prend en charge les cas d’utilisation suivants :

Messagerie MQTT

Event Grid permet à vos clients de communiquer sur des noms de rubriques MQTT personnalisés à l’aide d’un modèle de messagerie de publication-abonnement. Event Grid prendre en charge les clients qui publient et s’abonnent à des messages via des MQTT v3.1.1, MQTT v3.1.1 sur WebSockets, MQTT v5 et MQTT v5 sur les protocoles WebSockets. Event Grid vous permet d’envoyer des messages MQTT au cloud pour l’analyse des données, le stockage et les visualisations, entre autres cas d’usage.

Event Grid s’intègre à Azure IoT MQ pour créer un pont entre sa fonctionnalité de répartiteur MQTT en périphérie et la fonctionnalité de répartiteur MQTT d’Event Grid dans le cloud. Azure IoT MQ est un nouveau répartiteur MQTT distribué pour le computing en périphérie, qui s’exécute sur des clusters Kubernetes avec Arc. Il est désormais disponible en préversion publique dans le cadre d’Opérations Azure IoT.

La fonctionnalité MQTT broker dans Azure Event Grid est idéale pour la mise en œuvre de scénarios automobiles et de mobilité, entre autres. Consultez l’architecture de référence pour découvrir comment créer des solutions sécurisées et évolutives pour connecter des millions de véhicules au cloud, à l’aide des services de messagerie et d’analytique des données d’Azure.

Diagramme de haut niveau d’Event Grid qui montre la communication MQTT bidirectionnelle avec les clients d’éditeur et d’abonnés.

La fonctionnalité MQTT broker dans Azure Event Grid vous permet d’accomplir les scénarios suivants.

Ingérer les données de télémétrie IoT

Diagramme de haut niveau d’Event Grid montrant les clients IoT utilisant le protocole MQTT pour envoyer des messages vers une application cloud.

Ingérer la télémétrie à l’aide d’un modèle de messagerie many-to-one. Par exemple, utilisez Event Grid pour envoyer des données de télémétrie de plusieurs appareils IoT à une application cloud. Ce modèle permet à l’application de partager la charge de gestion du nombre élevé de connexions à des appareils à Event Grid.

Commande et contrôle

Diagramme de haut niveau d’Event Grid montrant une application cloud envoyant un message de commande sur MQTT à un appareil en utilisant des rubriques de requête et de réponse.

Contrôler vos clients MQTT à l’aide du modèle de messagerie requête-réponse (one-to-one). Par exemple, utilisez Event Grid pour envoyer une commande à partir d’une application cloud à un appareil IoT.

Alertes de diffusion

Diagramme de haut niveau d’Event Grid montrant une application cloud envoyant un message d’alerte sur MQTT à plusieurs appareils.

Diffusez des alertes à plusieurs clients à l’aide du modèle de messagerie one-to-many. Par exemple, utilisez Event Grid pour envoyer une alerte à partir d’une application cloud à plusieurs appareils IoT. Ce modèle permet à l’application de publier un seul message que le service réplique pour chaque client intéressé.

Intégrer des données MQTT

Diagramme montrant plusieurs appareils IoT qui envoient des données d’intégrité via MQTT vers Event Grid, puis vers Event Hubs, et de ce service vers Azure Stream Analytics.

Intégrez les données de vos clients MQTT en routant les messages MQTT vers les services Azure et les points de terminaison personnalisés via une livraison par envoi (push) ou une livraison par tirage (pull). Par exemple, utilisez Event Grid pour acheminer la télémétrie de vos appareils IoT vers Event Hubs, puis vers Azure Stream Analytics pour obtenir des aperçus à partir de la télémétrie de votre appareil.

Livraison push d’événements discrets

Event Grid peut être configuré pour envoyer des événements à un ensemble diversifié de services Azure ou de webhooks à l’aide de la livraison d’événements push. Les sources d’événements incluent vos applications personnalisées, les services Azure et les services partenaires (SaaS) qui publient des événements annonçant des changements d’état système (également appelés événements « discrets »). À son tour, Event Grid fournit ces événements aux destinations des abonnés configurés.

La livraison push d’Event Grid vous permet de réaliser les cas d’usage suivants.

Remarque

La livraison par envoi (push) d’événements discrets est disponible au niveau de base d’Event Grid et au niveau standard d’Event Grid. Pour en savoir plus sur les différences, consultez Choisir le niveau Event Grid correspondant à votre solution.

Créer des solutions serverless pilotées par les événements

Diagramme montrant Azure Functions publiant des événements vers Event Grid en utilisant HTTP. Event Grid envoie ensuite ces événements à Azure Logic Apps.

Utilisez Event Grid pour créer des solutions serverless avec Azure Functions Apps, Logic Apps et Gestion des API. L’utilisation de services serverless avec Event Grid vous offre un niveau de productivité, d’économie d’effort et d’intégration supérieur à celui des modèles informatiques classiques où vous devez acheter, gérer, sécuriser et gérer toute l’infrastructure déployée.

Recevoir des événements des services Azure

Diagramme montrant que Blob Storage publie des événements dans Event Grid sur HTTP. Event Grid envoie ces événements aux gestionnaires d'événements, qui sont soit des webhooks, soit des services Azure.

Event Grid peut recevoir des événements de plus de 20 services Azure afin que vous puissiez automatiser vos opérations. Par exemple, vous pouvez configurer Event Grid pour recevoir un événement lorsqu’un nouveau blob a été créé sur un compte de stockage Azure afin que votre application en aval puisse lire et traiter son contenu. Pour obtenir la liste de tous les événements et services Azure pris en charge, consultez Rubriques système.

Recevoir des événements de vos applications

Diagramme montrant l’application cliente publiant des événements vers Event Grid en utilisant HTTP. Event Grid envoie ensuite ces événements aux webhooks ou aux services Azure.

Votre propre service ou application publie des événements sur Event Grid que les applications abonnées traitent. Event Grid propose des rubriques personnalisées pour traiter des scénarios d’intégration de base et des domaines pour offrir un modèle de gestion et de routage simple lorsque vous devez distribuer des événements à des centaines ou des milliers de groupes différents.

Recevoir des événements de partenaires (fournisseurs SaaS)

Diagramme illustrant un événement de publication d'application partenaire externe sur Event Grid à l'aide de HTTP. Event Grid envoie ces événements à des webhooks ou à des services Azure.

Une plateforme ou un fournisseur SaaS à plusieurs locataires peut publier ses événements sur Event Grid via une fonctionnalité appelée Événements partenaires. Vous pouvez vous abonner à ces événements et automatiser des tâches, par exemple. Les événements des partenaires suivants sont actuellement disponibles :

Gestionnaires d'événements

Un abonnement aux événements est une ressource de configuration générique qui vous permet de définir le gestionnaire d’événements ou la destination auquel les événements sont envoyés à l’aide de la livraison push. Les gestionnaires d’événements suivants sont pris en charge :

Livraison pull d’événements discrets

Azure Event Grid présente la livraison pull CloudEvents. À l’aide de ce mode de remise, les clients se connectent à Event Grid pour lire les événements. Les cas d’usage suivants peuvent être réalisés à l’aide de la livraison par extraction.

Recevoir des événements à votre propre rythme

Diagramme de haut niveau d'une application éditeur et consommateur. L'éditeur envoie des événements à Event Grid à un rythme supérieur à celui de la consommation d'événements de l'abonné.

Un ou plusieurs clients peuvent se connecter à Azure Event Grid pour lire des messages à leur propre rythme. Event Grid offre aux clients un contrôle total sur la consommation des événements. Votre application peut recevoir des événements à certains moments de la journée, par exemple. Votre solution peut également augmenter le taux de consommation en ajoutant d’autres clients qui lisent à partir d’Event Grid.

Diagramme de haut niveau d’une application cliente dans un réseau virtuel lisant des événements à partir d’Event Grid sur un point de terminaison privé dans le réseau virtuel.

Vous pouvez configurer des liens privés pour vous connecter à Azure Event Grid pour publier et lire CloudEvents via un point de terminaison privé dans votre réseau virtuel. Le trafic entre votre réseau virtuel et Event Grid transite par le réseau principal de Microsoft.

Important

Les liens privés sont disponibles avec la livraison pull, pas avec la livraison push. Vous pouvez utiliser des liens privés lorsque votre application se connecte à Event Grid pour publier ou recevoir des événements, et non lorsqu'Event Grid se connecte à votre webhook ou à votre service Azure pour diffuser des événements.

Régions où l’espace de noms Event Grid est disponible

Voici la liste des régions où les nouvelles fonctionnalités relatives au répartiteur MQTT et aux rubriques d’espace de noms sont disponibles :

  • Australie Est
  • Sud-Est de l’Australie
  • Brésil Sud
  • Brésil Sud-Est
  • Centre du Canada
  • Est du Canada
  • Inde centrale
  • USA Centre
  • Asie Est
  • USA Est
  • USA Est 2
  • France Centre
  • Allemagne Centre-Ouest
  • Israël Central
  • Italie Nord
  • Japon Est
  • OuJapon Est
  • Centre de la Corée
  • Corée du Sud
  • Centre-Nord des États-Unis
  • Europe Nord
  • Norvège Est
  • Pologne Centre
  • Afrique du Sud Ouest
  • États-Unis - partie centrale méridionale
  • Inde Sud
  • Asie Sud-Est
  • Suède Centre
  • Suisse Nord
  • Émirats arabes unis Nord
  • Sud du Royaume-Uni
  • Ouest du Royaume-Uni
  • Europe Ouest
  • USA Ouest 2
  • USA Ouest 3

Étapes suivantes

Messagerie MQTT

Distribution de données à l’aide de la distribution par extraction ou envoi

Voir aussi