Share via


Wat is Azure Event Grid?

Azure Event Grid is een zeer schaalbare, volledig beheerde Pub Sub-berichtendistributieservice die flexibele berichtverbruikspatronen biedt met behulp van de MQTT- en HTTP-protocollen. Met Azure Event Grid kunt u gegevenspijplijnen bouwen met apparaatgegevens, toepassingen integreren en serverloze architecturen bouwen op basis van gebeurtenissen. Met Event Grid kunnen clients berichten publiceren en abonneren op berichten via de MQTT v3.1.1- en v5.0-protocollen ter ondersteuning van IoT-oplossingen (Internet of Things). Met Behulp van HTTP kunt u met Event Grid gebeurtenisgestuurde oplossingen bouwen, waarbij een uitgeverservice wijzigingen (gebeurtenissen) in de systeemstatus aankondigt aan abonneetoepassingen. Event Grid kan worden geconfigureerd voor het verzenden van gebeurtenissen naar abonnees (pushlevering) of abonnees kunnen verbinding maken met Event Grid om gebeurtenissen te lezen (pull-levering). Event Grid ondersteunt CloudEvents 1.0-specificatie om interoperabiliteit tussen systemen te bieden.

Diagram op hoog niveau van Event Grid waarin uitgevers en abonnees worden weergegeven met behulp van MQTT- en HTTP-protocollen.

Azure Event Grid is een algemeen beschikbare service die is geïmplementeerd in beschikbaarheidszones in alle regio's die deze ondersteunen. Zie Producten die beschikbaar zijn per regio voor een lijst met regio's die worden ondersteund door Event Grid.

Overzicht

Azure Event Grid wordt gebruikt in verschillende fasen van gegevenspijplijnen om een diverse set integratiedoelen te bereiken.

MQTT-berichten. IoT-apparaten en -toepassingen kunnen met elkaar communiceren via MQTT. Event Grid kan ook worden gebruikt om MQTT-berichten te routeren naar Azure-services of aangepaste eindpunten voor verdere gegevensanalyse, visualisatie of opslag. Met deze integratie met Azure-services kunt u gegevenspijplijnen bouwen die beginnen met gegevensopname van uw IoT-apparaten.

Gegevensdistributie met behulp van push- en pull-leveringsmodi. Op elk moment in een gegevenspijplijn kunnen HTTP-toepassingen berichten gebruiken met behulp van push- of pull-API's. De bron van de gegevens kan gegevens van MQTT-clients bevatten, maar bevat ook de volgende gegevensbronnen die hun gebeurtenissen via HTTP verzenden:

  • Azure-services
  • Uw aangepaste toepassingen
  • SaaS-systemen (Externe partner)

Het pushleveringsmechanisme van Event Grid verzendt gegevens naar bestemmingen met uw eigen toepassingswebhooks en Azure-services.

Functies

Event Grid biedt een uitgebreid combinatie van functies. Deze functies zijn onder andere:

MQTT-berichten

  • Ondersteuning voor MQTT v3.1.1 en MQTT v5.0 : gebruik een opensource-MQTT-clientbibliotheek om met de service te communiceren.
  • Aangepaste onderwerpen met ondersteuning voor jokertekens- Maak gebruik van uw eigen onderwerpstructuur.
  • Berichtenmodel publiceren-abonneren: efficiënt communiceren met behulp van één-op-veel-, veel-op-een- en een-op-een-berichtpatronen.
  • Ingebouwde cloudintegratie : routeer uw MQTT-berichten naar Azure-services of aangepaste webhooks voor verdere verwerking.
  • Flexibel en gedetailleerd toegangsbeheermodel : groepeer clients en onderwerpen om het beheer van toegangsbeheer te vereenvoudigen en gebruik de variabeleondersteuning in onderwerpsjablonen voor een gedetailleerd toegangsbeheer.
  • MQTT Broker-verificatiemethoden X.509-certificaatverificatie is de industrieverificatiestandaard in IoT-apparaten, Microsoft Entra IDauthentication is de verificatiestandaard van Azure voor toepassingen en OAuth 2.0-verificatie (JSON Web Token) biedt een lichtgewicht, veilige en flexibele optie voor MQTT-clients die niet zijn ingericht in Azure. -
  • TLS 1.2- en TLS 1.3-ondersteuning : beveilig uw clientcommunicatie met behulp van robuuste versleutelingsprotocollen.
  • Ondersteuning voor meerdere sessies: verbind uw toepassingen met meerdere actieve sessies om betrouwbaarheid en schaalbaarheid te garanderen.
  • MQTT via WebSockets : connectiviteit inschakelen voor clients in firewall-beperkte omgevingen.
  • Aangepaste domeinnamen : hiermee kunnen gebruikers hun eigen domeinnamen toewijzen aan de MQTT-eindpunten van de Event Grid-naamruimte, waardoor de beveiliging wordt verbeterd en de clientconfiguratie wordt vereenvoudigd.
  • Gebeurtenissen in de levenscyclus van de client: hiermee kunnen toepassingen reageren op gebeurtenissen over de clientverbindingsstatus of de clientresourcebewerkingen.

Gebeurtenisberichten (HTTP)

  • Flexibel model voor gebeurtenisverbruik : wanneer u HTTP gebruikt, gebruikt u gebeurtenissen met behulp van de pull- of pushleveringsmodus.
  • Systeemgebeurtenissen : snel aan de slag met ingebouwde Azure-servicegebeurtenissen.
  • Uw eigen toepassingsgebeurtenissen : Gebruik Event Grid om aangepaste gebeurtenissen van uw app te routeren, filteren en betrouwbaar te leveren.
  • Partner-gebeurtenissen : abonneer u op gebeurtenissen van uw Partner SaaS-provider en verwerkt deze in Azure.
  • Geavanceerd filteren : filter op gebeurtenistype of andere gebeurteniskenmerken om ervoor te zorgen dat uw gebeurtenis-handlers of consumenten-apps alleen relevante gebeurtenissen ontvangen.
  • Betrouwbaarheid : pushlevering biedt een mechanisme voor opnieuw proberen van 24 uur met exponentieel uitstel om ervoor te zorgen dat gebeurtenissen worden geleverd. Als u pull-levering gebruikt, heeft uw toepassing volledige controle over het verbruik van gebeurtenissen.
  • Hoge doorvoer : bouw geïntegreerde oplossingen met een hoog volume met Event Grid.
  • Aangepaste domeinnamen : hiermee kunnen gebruikers hun eigen domeinnamen toewijzen aan de HTTP-eindpunten van de Event Grid-naamruimte, waardoor de beveiliging wordt verbeterd en de clientconfiguratie wordt vereenvoudigd.

Notitie

Met betrekking tot afschaffing van TLS 1.0/1.1: Voor systeemonderwerpen moet u alleen actie ondernemen voor de levering van gebeurtenissen aan webhookbestemmingen. Als de bestemming TLS 1.2 ondersteunt, wordt de gebeurtenislevering uitgevoerd met 1.2. Als de bestemming TLS 1.2 niet ondersteunt, valt de levering van gebeurtenissen automatisch terug op 1.0 en 1.1. Na 1 maart 2025 wordt levering van gebeurtenissen met 1.0 en 1.1 niet ondersteund. Zorg ervoor dat uw webhookbestemmingen TLS 1.2 ondersteunen. Een eenvoudige manier om te controleren op TLS 1.2-ondersteuning is door Qualys SSL Labs te gebruiken. Als in het rapport wordt aangegeven dat TLS 1.2 wordt ondersteund, is er geen actie vereist. Zie de volgende blogpost: Buitengebruikstelling: Geplande TLS-wijzigingen voor Azure Event Grid voor meer informatie

Gebruiksgevallen

Event Grid ondersteunt de volgende use cases:

MQTT-berichten

Met Event Grid kunnen uw clients communiceren over aangepaste MQTT-onderwerpnamen met behulp van een berichtenmodel voor publiceren/abonneren. Event Grid ondersteunt clients die berichten publiceren en abonneren op berichten via MQTT v3.1.1, MQTT v3.1.1 via WebSockets, MQTT v5 en MQTT v5 via WebSockets. Met Event Grid kunt u MQTT-berichten verzenden naar de cloud voor gegevensanalyse, opslag en visualisaties, onder andere gebruiksvoorbeelden.

Event Grid kan worden geïntegreerd met Azure IoT MQ om de MQTT-brokermogelijkheden aan de rand te overbruggingen met de MQTT-brokermogelijkheid van Event Grid in de cloud. Azure IoT MQ is een nieuwe gedistribueerde MQTT-broker voor edge-computing, die wordt uitgevoerd op Kubernetes-clusters met Arc. Het is nu beschikbaar in openbare preview als onderdeel van Azure IoT Operations.

De MQTT-brokerfunctie in Azure Event Grid is ideaal voor de implementatie van auto- en mobiliteitsscenario's, onder andere. Zie de referentiearchitectuur voor meer informatie over het bouwen van veilige en schaalbare oplossingen voor het verbinden van miljoenen voertuigen met de cloud, met behulp van de berichten- en gegevensanalyseservices van Azure.

Diagram op hoog niveau van Event Grid met bidirectionele MQTT-communicatie met uitgevers- en abonneeclients.

Met de MQTT-brokerfunctie van Azure Event Grid kunt u de volgende scenario's uitvoeren.

IoT-telemetrie opnemen

Diagram op hoog niveau van Event Grid waarin IoT-clients worden weergegeven met behulp van het MQTT-protocol voor het verzenden van berichten naar een cloud-app.

Telemetrie opnemen met behulp van een veel-op-een-berichtenpatroon . Gebruik bijvoorbeeld Event Grid om telemetrie van meerdere IoT-apparaten naar een cloudtoepassing te verzenden. Met dit patroon kan de toepassing de last van het beheer van het grote aantal verbindingen met apparaten met Event Grid offloaden.

Opdracht en controle

Diagram op hoog niveau van Event Grid waarin een cloudtoepassing een opdrachtbericht via MQTT naar een apparaat verzendt met behulp van aanvraag- en antwoordonderwerpen.

Beheer uw MQTT-clients met behulp van het berichtpatroon aanvraag-antwoord (een-op-een). Gebruik bijvoorbeeld Event Grid om een opdracht vanuit een cloudtoepassing naar een IoT-apparaat te verzenden.

Broadcast-waarschuwingen

Diagram op hoog niveau van Event Grid waarin een cloudtoepassing een waarschuwingsbericht via MQTT naar verschillende apparaten verzendt.

Verzend waarschuwingen naar een vloot van clients met behulp van het één-op-veel-berichtenpatroon . Gebruik bijvoorbeeld Event Grid om een waarschuwing van een cloudtoepassing naar meerdere IoT-apparaten te verzenden. Met dit patroon kan de toepassing slechts één bericht publiceren dat de service repliceert voor elke geïnteresseerde client.

MQTT-gegevens integreren

Diagram met verschillende IoT-apparaten die statusgegevens verzenden via MQTT naar Event Grid, vervolgens naar Event Hubs en van deze service naar Azure Stream Analytics.

Integreer gegevens van uw MQTT-clients door MQTT-berichten te routeren naar Azure-services en aangepaste eindpunten via pushlevering of pull-levering. Gebruik Event Grid bijvoorbeeld om telemetrie van uw IoT-apparaten te routeren naar Event Hubs en vervolgens naar Azure Stream Analytics om inzicht te krijgen in de telemetrie van uw apparaat.

Push-levering van gebeurtenissen

Event Grid kan worden geconfigureerd voor het verzenden van gebeurtenissen naar een diverse set Azure-services of -webhooks met behulp van pushgebeurtenislevering. Gebeurtenisbronnen omvatten uw aangepaste toepassingen, Azure-services en SaaS-services (Partner) die gebeurtenissen publiceren die wijzigingen in de systeemstatus aankondigen (ook wel 'discrete' gebeurtenissen genoemd). Op zijn beurt levert Event Grid deze gebeurtenissen aan geconfigureerde bestemmingen van abonnees.

Met de pushlevering van Event Grid kunt u de volgende use cases realiseren.

Notitie

Pushlevering is beschikbaar in de Basic-laag van Event Grid en de Standard-laag van Event Grid voor meer informatie over de verschillen. Zie de juiste Event Grid-laag kiezen voor uw oplossing.

Gebeurtenisgestuurde serverloze oplossingen bouwen

Diagram met Azure Functions-publicatie-gebeurtenissen naar Event Grid met behulp van HTTP. Event Grid verzendt deze gebeurtenissen vervolgens naar Azure Logic Apps.

Gebruik Event Grid om serverloze oplossingen te bouwen met Azure Functions Apps, Logic Apps en API Management. Het gebruik van serverloze services met Event Grid biedt u een niveau van productiviteit, inspanningseconomie en integratie die beter is dan die van klassieke computingmodellen waar u alle geïmplementeerde infrastructuur moet aanschaffen, beheren, beveiligen en onderhouden.

Gebeurtenissen ontvangen van Azure-services

Diagram met Blob Storage-publicatiegebeurtenissen naar Event Grid via HTTP. Event Grid verzendt deze gebeurtenissen naar gebeurtenis-handlers, die webhooks of Azure-services zijn.

Event Grid kan gebeurtenissen ontvangen van 20+ Azure-services, zodat u uw bewerkingen kunt automatiseren. U kunt bijvoorbeeld Event Grid zo configureren dat er een gebeurtenis wordt ontvangen wanneer er een nieuwe blob is gemaakt in een Azure Storage-account, zodat uw downstreamtoepassing de inhoud ervan kan lezen en verwerken. Zie Systeemonderwerpen voor een lijst met alle ondersteunde Azure-services en -gebeurtenissen.

Gebeurtenissen ontvangen van uw toepassingen

Diagram van het publiceren van gebeurtenissen van klantentoepassingen naar Event Grid met behulp van HTTP. Event Grid verzendt deze gebeurtenissen naar webhooks of Azure-services.

Uw eigen service of toepassing publiceert gebeurtenissen naar Event Grid die toepassingen van abonnees verwerken. Event Grid bevat naamruimteonderwerpen om te voldoen aan de integratie- en routeringsvereisten op schaal met een eenvoudig resourcemodel. U kunt aangepaste onderwerpen ook gebruiken om te voldoen aan basisintegratievereisten en -domeinen voor een eenvoudig beheer- en routeringsmodel wanneer u gebeurtenissen wilt distribueren naar honderden of duizenden verschillende groepen.

Gebeurtenissen ontvangen van partner (SaaS-providers)

Diagram met een publicatie-gebeurtenis van een externe partnertoepassing naar Event Grid met behulp van HTTP. Event Grid verzendt deze gebeurtenissen naar webhooks of Azure-services.

Een SaaS-provider of -platform met meerdere tenants kan hun gebeurtenissen publiceren naar Event Grid via een functie met de naam Partner events. U kunt zich abonneren op deze gebeurtenissen en taken automatiseren, bijvoorbeeld. Gebeurtenissen van de volgende partners zijn momenteel beschikbaar:

Gebeurtenishandlers

Een gebeurtenisabonnement is een algemene configuratieresource waarmee u de gebeurtenis-handler of bestemming kunt definiëren waarnaar gebeurtenissen worden verzonden met behulp van pushlevering. U kunt bijvoorbeeld gegevens verzenden naar een webhook, Azure-functie of Event Hubs. Zie voor een volledige lijst met ondersteunde gebeurtenis-handlers:

Pull-levering van discrete gebeurtenissen

Azure Event Grid biedt pull CloudEvents-levering. Met deze leveringsmodus maken clients verbinding met Event Grid om gebeurtenissen te lezen. De volgende gebruiksvoorbeelden kunnen worden gerealiseerd met behulp van pull-levering.

Gebeurtenissen ontvangen in uw eigen tempo

Diagram op hoog niveau van een uitgever en consumententoepassing. De uitgever verzendt gebeurtenissen naar Event Grid in een hoger tempo dan het verbruikspercentage van de abonnee.

Een of meer clients kunnen verbinding maken met Azure Event Grid om berichten in hun eigen tempo te lezen. Event Grid biedt clients volledige controle over het verbruik van gebeurtenissen. Uw toepassing kan bijvoorbeeld gebeurtenissen ontvangen op bepaalde tijdstippen van de dag. Uw oplossing kan ook het verbruik verhogen door meer clients toe te voegen die lezen uit Event Grid.

Diagram op hoog niveau van een consumenten-app in een VNET-leesgebeurtenissen van Event Grid via een privé-eindpunt in het VNET.

U kunt privékoppelingen configureren om verbinding te maken met Azure Event Grid om CloudEvents te publiceren en te lezen via een privé-eindpunt in uw virtuele netwerk. Verkeer tussen uw virtuele netwerk en Event Grid reist via het Microsoft-backbonenetwerk.

Belangrijk

Privékoppelingen zijn beschikbaar met pull-levering, niet met pushlevering. U kunt privékoppelingen gebruiken wanneer uw toepassing verbinding maakt met Event Grid om gebeurtenissen te publiceren of gebeurtenissen te ontvangen, niet wanneer Event Grid verbinding maakt met uw webhook of Azure-service om gebeurtenissen te leveren.

Regio's waar Event Grid-naamruimte beschikbaar is

Hier volgt de lijst met regio's waar de nieuwe functies voor MQTT-broker- en naamruimteonderwerpen beschikbaar zijn:

Region Region Region Region
Australië - oost Australië - zuidoost Australië - centraal Australië - centraal 2
Brazilië - zuid Brazilië - zuidoost Canada - midden Canada - oost
India - centraal Central US Azië - oost VS - oost
VS - oost 2 VS - west Frankrijk - centraal Frankrijk - zuid
Duitsland - noord Duitsland - west-centraal Israël - centraal Italië - noord
Japan - oost Japan - west Korea - centraal Korea - zuid
Mexico - centraal VS - noord-centraal Europa - noord Noorwegen - oost
Polen - centraal Zuid-Afrika - west Zuid-Afrika - noord VS - zuid-centraal
India - zuid Azië - zuidoost Centraal Spanje Zweden - centraal
Zweden - zuid Zwitserland - noord Zwitserland - west VAE - noord
UAE - centraal Verenigd Koninkrijk Zuid Verenigd Koninkrijk West Europa -west
VS - west 2 US - west 3 VS - west-centraal

Volgende stappen

MQTT-berichten

Gegevensdistributie met behulp van pull- of pushlevering

Zie ook