Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Azure Event Grid est un service d’abonnement à publication hautement évolutif et entièrement managé pour la distribution de messages. Event Grid offre des modèles de consommation de messages flexibles et utilise les protocoles MQTT (Message Queuing Telemetry Transport) et HTTP. Avec 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, vous pouvez utiliser Event Grid pour créer des solutions basées sur des événements où un service d’éditeur annonce ses modifications d’état système (événements) aux applications abonnées. Vous pouvez configurer Event Grid pour envoyer des événements aux abonnés (remise par envoi (push)), ou les abonnés peuvent se connecter à Event Grid pour lire les événements (remise par tirage (pull)). Event Grid prend en charge la Spécification CloudEvents 1.0 pour assurer l’interopérabilité entre les systèmes.
Fonctionnalités de base
Event Grid a deux fonctionnalités principales :
Messagerie MQTT : les appareils et applications IoT peuvent communiquer entre eux via MQTT. Vous pouvez également utiliser Event Grid pour acheminer des messages MQTT vers des services Azure ou des points de terminaison personnalisés pour une analyse, une visualisation ou un stockage supplémentaires des données. En utilisant cette intégration aux services Azure, vous pouvez créer des pipelines de données qui commencent par l’ingestion des données de vos appareils IoT.
Distribution de données utilisant les modes de remise par envoi (push) et par tirage (pull) : à tout point d’un pipeline de données, les applications HTTP peuvent consommer des messages à l’aide d’API d’envoi (push) ou de tirage (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 de partenaire externe (logiciel en tant que service)
Le mécanisme de remise par envoi (push) d’Event Grid envoie des données vers des destinations qui incluent vos propres webhooks d’application et services Azure. Voici un aperçu de ces deux fonctionnalités.
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 publication-abonnement. Event Grid prendre en charge les clients qui publient et s’abonnent à des messages via MQTT v3.1.1, MQTT v3.1.1 sur WebSocket, MQTT v5 et MQTT v5 sur WebSocket.
Event Grid prend également en charge les appareils et services qui envoient des messages MQTT via HTTPS, ce qui simplifie l’intégration avec les clients non-MQTT. 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. Cette fonctionnalité est actuellement en préversion.
Event Grid s’intègre à Opérations Azure IoT pour créer un pont entre sa fonctionnalité d’Agent MQTT en périphérie et la fonctionnalité d’Agent MQTT d’Event Grid dans le cloud. L’Agent MQTT Azure IoT est un nouvel Agent MQTT distribué pour le computing en périphérie, qui s’exécute sur des clusters Kubernetes avec Azure Arc. Il est désormais disponible en tant qu’élément d’Opérations Azure IoT.
La fonctionnalité Agent MQTT dans Event Grid est idéale pour les scénarios des secteurs automobile, mobilité et fabrication, entre autres. Pour savoir comment créer des solutions sécurisées et évolutives pour connecter des millions de clients MQTT au cloud à l’aide des services de messagerie et d’analytique données Azure, consultez les architectures de référence des secteurs automobile et fabrication.
Points forts de la prise en charge de la messagerie MQTT dans Event Grid :
- Prise en charge de MQTT v3.1.1 et MQTT v5.0 : utilise n’importe quelle bibliothèque de client MQTT open source pour communiquer avec le service.
- Rubriques personnalisées avec prise en charge des caractères génériques : utilise votre propre structure de rubrique.
- Modèle de messagerie publication-abonnement : communique efficacement en utilisant les modèles de messagerie un-à-plusieurs, plusieurs-à-un et un-à-un.
- Intégration cloud prédéfinie : achemine vos messages MQTT vers des services Azure ou des webhooks personnalisés pour traitement avancé.
- Modèle de contrôle d’accèsflexible et affiné : regroupe les clients et les rubriques pour simplifier la gestion du contrôle d’accès. Utilise la prise en charge des variables dans les modèles de rubrique pour le contrôle d’accès affiné.
- Méthodes d’authentification de l’agent MQTT : utilise l’Authentification par certificat X.509, une norme d’authentification du secteur pour les appareils IoT. Utilise l’Authentification Microsoft Entra ID, une norme d’authentification Azure pour les applications. Utilise des modèles d’authentification flexibles comme l’Authentification JWT (JSON Web Token) OAuth 2.0, qui est légère et sécurisée pour les clients MQTT qui ne sont pas approvisionnés dans Azure. Utilise l’Authentification webhook personnalisée, qui permet aux points de terminaison HTTP externes (webhooks) d’authentifier dynamiquement les connexions MQTT. Cette méthode utilise la validation JWT de l’ID Entra pour garantir l’accès sécurisé.
- Prise en charge de TLS 1.2 et TLS 1.3 : sécurise vos communications client à l’aide de protocoles de chiffrement robustes.
- Prise en charge multisession : connecte vos applications à plusieurs sessions actives pour assurer la fiabilité et la scalabilité.
- MQTT sur WebSocket : active la connectivité pour les clients dans des environnements restreints par pare-feu.
- Noms de domaine personnalisés : permet aux utilisateurs d’attribuer leurs propres noms de domaine aux points de terminaison MQTT de l’espace de noms Event Grid, ce qui améliore la sécurité et simplifie la configuration du client.
- Événements du cycle de vie client : permet aux applications de réagir aux événements concernant l’état de connexion du client ou les opérations sur les ressources du client.
- HTTP Publish : permet aux appareils et aux services d’envoyer des messages MQTT à Event Grid via HTTPS, ce qui simplifie l’intégration avec les clients non-MQTT.
- MQTT Conserver : garantit que le dernier message connu d’une rubrique est remis automatiquement aux nouveaux abonnés, ce qui permet la synchronisation instantanée de l’état.
Pour plus d’informations sur l’Agent MQTT, consultez les articles suivants :
- Vue d'ensemble
- Publier et s’abonner aux messages MQTT
- Tutoriel : acheminer les messages MQTT vers Azure Event Hubs en utilisant les rubriques d’espace de noms
- Tutoriel : acheminer des messages MQTT vers Azure Functions en utilisant les rubriques personnalisées
Messagerie d’événements (HTTP)
Event Grid prend en charge la remise d’événements par envoi (push) et par tirage (pull) en utilisant HTTP. Avec la transmission de type push, vous définissez une destination dans un abonnement aux événements auquel Event Grid envoie des événements. Avec la livraison pull, les applications abonnées se connectent à Event Grid pour consommer des événements. La remise pull est prise en charge pour les rubriques d’un espace de noms Event Grid.
Gestionnaires d’événements
Dans la remise par envoi (push), un abonnement aux événements est une ressource de configuration générique que vous pouvez utiliser pour définir le gestionnaire d’événements ou la destination auquel les événements sont envoyés en utilisant la remise par envoi (push). Par exemple, vous pouvez envoyer des données à un webhook, à une fonction Azure ou à des hubs d’événements. Pour obtenir la liste complète des gestionnaires d’événements pris en charge, consultez :
- Gestionnaires d’événements pris en charge sur es rubriques d’espace de noms.
- Gestionnaires d’événements pris en charge sur les rubriques personnalisées, système, domaine et partenaire.
Transmission de type envoi (push) par rapport à transmission de type tirage (pull)
Les instructions générales suivantes vous aident à décider quand utiliser la remise par envoi (push) ou par tirage (pull).
Livraison par extraction
- Vous avez besoin d’un contrôle total quant au moment où recevoir des événements. Par exemple, votre application peut ne pas fonctionner tout le temps ou peut ne pas être assez stable. Vous pouvez également ne traiter des données qu’à certains moments.
- Vous avez besoin d’un contrôle total sur la consommation des événements. Par exemple, un service ou une couche en aval dans votre application grand public peut avoir un problème qui vous empêche de traiter les événements. Dans ce cas, l’API de remise par tirage (pull) permet à l’application grand public de libérer un événement déjà lu sur l’agent afin qu’il puisse être remis ultérieurement.
- Vous souhaitez utiliser des liaisons privées lors de la réception d’événements, ce qui n’est possible qu’avec la remise par tirage (pull), et non avec la remise par envoi (push).
- Vous n’avez pas la possibilité d’exposer un point de terminaison et d’utiliser la livraison push, mais vous pouvez vous connecter à Event Grid pour consommer des événements.
Livraison push
- Vous souhaitez éviter l’interrogation constante pour déterminer si un changement d’état système s’est produit. Au lieu de cela, vous souhaitez utiliser Event Grid pour qu’il vous envoie des événements lorsque des modifications d’état se produisent.
- Vous disposez d’une application qui ne peut pas effectuer d’appels sortants. Par exemple, l’exfiltration des données peut préoccuper votre organisation. Toutefois, votre application peut recevoir des événements via un point de terminaison public.
Points forts du modèle HTTP :
- Modèle de consommation d’événements flexible : consommez des événements à l’aide du mode de remise par envoi (push) ou par tirage (pull) lorsque vous utilisez HTTP.
- Événements système : soyez rapidement opérationnel grâce aux é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 des é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 remise par envoi (push) propose un mécanisme de nouvelle tentative 24 heures sur 24 avec backoff exponentiel pour assurer la remise des événements. Si vous utilisez la livraison par tirage (pull), votre application dispose d’un contrôle total sur la consommation des événements.
- Débit élevé : générez des solutions intégrées à volume élevé avec Event Grid.
- Noms de domaine personnalisés : permettez aux utilisateurs d’attribuer leurs propres noms de domaine aux points de terminaison HTTP de l’espace de noms Event Grid, ce qui améliore la sécurité et simplifie la configuration du client.
Pour plus d’informations, consultez les articles suivants :
- Vue d’ensemble de la livraison tirage (pull)
- Vue d’ensemble de la livraison envoi (push)
- Concepts
- Démarrage rapide : publiez et abonnez-vous à des événements d’application à l’aide de rubriques d’espace de noms
Cas d'utilisation
Pour obtenir la liste des cas d’utilisation dans lesquels vous pouvez utiliser Azure Event Grid, consultez Cas d’utilisation.
Régions prises en charge
Les nouvelles fonctionnalités de l’agent et de l’espace de noms MQTT sont disponibles dans les régions suivantes.
| Région | Région | Région | Région |
|---|---|---|---|
| Australie Est | Sud-Est de l’Australie | Centre de l’Australie | Centre de l’Australie 2 |
| Brésil Sud | Brésil Sud-Est | Canada Centre | Canada Est |
| Inde centrale | USA Centre | Asie Est | USA Est |
| USA Est 2 | USA Ouest | France Centre | France Sud |
| Allemagne Nord | Allemagne Centre-Ouest | Israël Central | Italie Nord |
| Japon Est | OuJapon Est | Centre de la Corée | Corée Sud |
| Mexique Centre | Centre-Nord des États-Unis | Europe Nord | Norvège Est |
| Pologne Centre | Afrique du Sud Ouest | Afrique du Sud Nord | États-Unis - partie centrale méridionale |
| Inde Sud | Asie Sud-Est | Espagne Centre | Suède Centre |
| Suède Sud | Suisse Nord | Suisse Ouest | Émirats arabes unis Nord |
| Émirats arabes unis Centre | Sud du Royaume-Uni | Ouest du Royaume-Uni | Europe Ouest |
| USA Ouest 2 | USA Ouest 3 | Centre-USA Ouest |