Routes en eindpunten maken en verwijderen met behulp van Azure PowerShell

In dit artikel wordt beschreven hoe u een route en eindpunt maakt in uw hub in Azure IoT Hub en vervolgens uw route en eindpunt verwijdert. Meer informatie over het gebruik van Azure PowerShell om routes en eindpunten te maken voor Azure Event Hubs, Azure Service Bus wachtrijen en onderwerpen, en Azure Storage.

Zie Use IoT Hub message routing to send device-to-cloud messages to different endpoints (IoT Hub berichtroutering gebruiken om apparaat-naar-cloud-berichten naar verschillende eindpunten te verzenden) voor meer informatie over de werking van routering in IoT Hub. Zie Zelfstudie: Apparaatgegevens verzenden naar Azure Storage met behulp van IoT Hub berichtroutering voor informatie over het instellen van een route waarmee berichten naar de opslag worden verzonden en vervolgens testen op een gesimuleerd apparaat.

Vereisten

Voor de procedures die in het artikel worden beschreven, worden de volgende resources gebruikt:

  • Azure PowerShell
  • Een IoT-hub
  • Een eindpuntservice in Azure

Azure PowerShell

In dit artikel worden Azure PowerShell gebruikt om te werken met IoT Hub en andere Azure-services. Als u Azure PowerShell lokaal wilt gebruiken, installeert u de module Azure PowerShell op uw computer. Als u Azure PowerShell in een webbrowser wilt gebruiken, schakelt u Azure Cloud Shell in.

IoT-hub

Als u een IoT-hubroute wilt maken, hebt u een IoT-hub nodig die u hebt gemaakt met behulp van Azure IoT Hub. Apparaatberichten en gebeurtenislogboeken zijn afkomstig van uw IoT-hub.

Zorg ervoor dat u de volgende hubresource gebruikt wanneer u uw IoT-hubroute maakt:

Eindpuntservice

Als u een IoT-hubroute wilt maken, moet u ten minste één andere Azure-service gebruiken als eindpunt voor de route. Het eindpunt ontvangt apparaatberichten en gebeurtenislogboeken. U kunt kiezen welke Azure-service u gebruikt voor een eindpunt om verbinding te maken met uw IoT-hubroute: Event Hubs, Service Bus-wachtrijen of -onderwerpen, of Azure Storage.

Zorg ervoor dat u een van de volgende resources hebt om te gebruiken wanneer u een eindpunt maakt voor uw IoT-hubroute:

Resources en eindpunten maken

In IoT Hub kunt u een route maken om berichten te verzenden of gebeurtenissen vast te leggen. Elke route heeft een gegevensbron en een eindpunt. De gegevensbron is waar berichten of gebeurtenislogboeken vandaan komen. Het eindpunt is waar de berichten of gebeurtenislogboeken terechtkomen. U kiest locaties voor de gegevensbron en het eindpunt wanneer u een nieuwe route maakt in uw IoT-hub. Vervolgens gebruikt u routeringsquery's om berichten of gebeurtenissen te filteren voordat ze naar het eindpunt gaan.

U kunt een Event Hub, een Service Bus-wachtrij of -onderwerp of een opslagaccount gebruiken als eindpunt voor uw IoT-hubroute. De service die u gebruikt om uw eindpunt te maken, moet eerst in uw Azure-account bestaan.

Notitie

Als u een lokale versie van Azure PowerShell gebruikt, meldt u zich aan bij Azure PowerShell voordat u begint.

De opdrachten in de volgende procedures gebruiken deze verwijzingen:

Een Event Hub maken

Een nieuwe Event Hubs-resource maken met een autorisatieregel:

  1. Maak een nieuwe Event Hubs-naamruimte. Gebruik NamespaceNamevoor een unieke waarde.

    New-AzEventHubNamespace -ResourceGroupName MyResourceGroup -NamespaceName MyNamespace -Location MyLocation
    
  2. Maak uw nieuwe Event Hubs-entiteit. Gebruik Namevoor een unieke waarde. Voor NamespaceNamegebruikt u de naam van de naamruimte die u in de vorige stap hebt gemaakt.

    New-AzEventHub -Name MyEventHub -NamespaceName MyNamespace -ResourceGroupName MyResourceGroup
    
  3. Maak een nieuwe autorisatieregel. Gebruik voor Namede naam van uw entiteit voor EventHubName. Gebruik een unieke waarde voor de naam van uw autorisatieregel.

    New-AzEventHubAuthorizationRule -ResourceGroupName MyResourceGroup -NamespaceName MyNamespace -EventHubName MyEventHub -Name MyAuthRule -Rights @('Manage', 'Send', 'Listen')
    

    Zie Toegang tot Azure Event Hubs autoriseren voor meer informatie over toegang.

Een Event Hubs-eindpunt maken

  1. Haal de primaire connection string op uit uw Event Hub. Kopieer de connection string voor later gebruik.

    Get-AzEventHubKey -ResourceGroupName MyResourceGroup -NamespaceName MyNamespace -EventHubName MyEventHub -Name MyAuthRule
    
  2. Maak een nieuw IoT-hub-eindpunt voor Event Hubs. Gebruik uw primaire connection string uit de vorige stap. De waarde voor EndpointType moet zijn EventHub. Gebruik voor alle andere parameters de waarden voor uw scenario.

    Add-AzIotHubRoutingEndpoint -ResourceGroupName MyResourceGroup -Name MyIotHub -EndpointName MyEndpoint -EndpointType EventHub -EndpointResourceGroup MyResourceGroup -EndpointSubscriptionId xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx -ConnectionString "Endpoint=<my connection string>"
    

    Zie Add-AzIotHubRoutingEndpoint voor alle opties voor routeringseindpunten.

Een IoT Hub-route maken

Met uw nieuwe eindpunt in uw IoT-hub kunt u een nieuwe route maken.

De standaardroute voor terugval in IoT Hub verzamelt berichten van DeviceMessages. Kies een andere optie voor uw aangepaste route, zoals DeviceConnectionStateEvents. Zie Add-AzIotHubRoute voor meer informatie over bronopties. De Enabled parameter is een schakeloptie, zodat u geen waarde met de parameter hoeft te gebruiken.

Add-AzIotHubRoute -ResourceGroupName MyResourceGroup -Name MyIotHub -RouteName MyRoute -Source DeviceLifecycleEvents -EndpointName MyEndpoint -Enabled

PowerShell geeft een bevestiging weer die lijkt op dit voorbeeld:

RouteName     : MyIotHub 
DataSource    : DeviceLifecycleEvents
EndpointNames : MyEndpoint
Condition     : true
IsEnabled     : True

Een IoT Hub-route bijwerken

Gebruik de volgende opdracht om wijzigingen aan te brengen in een bestaande route. Probeer bijvoorbeeld de naam van uw route te wijzigen met behulp van de opdracht .

Set-AzIotHubRoute -ResourceGroupName MyResourceGroup -Name MyIotHub -RouteName MyRoute

Gebruik de Get-AzIotHubRoute opdracht om de wijziging in uw route te bevestigen:

Get-AzIotHubRoute -ResourceGroupName MyResourceGroup -Name MyIotHub

Een eindpunt verwijderen

Een eindpunt verwijderen:

Remove-AzIotHubRoutingEndpoint -ResourceGroupName MyResourceGroup -Name MyIotHub -EndpointName MyEndpoint -PassThru

Een IoT Hub-route verwijderen

Een IoT Hub-route verwijderen:

Remove-AzIotHubRoute -ResourceGroupName MyResourceGroup -Name MyIotHub -RouteName MyRoute -PassThru

Tip

Als u een route verwijdert, worden er geen eindpunten in uw Azure-account verwijderd. U moet een eindpunt afzonderlijk verwijderen van het verwijderen van een route.

Volgende stappen

In dit instructieartikel hebt u geleerd hoe u een route en eindpunt maakt voor Event Hubs, Service Bus-wachtrijen en -onderwerpen en Azure Storage.

Zie Zelfstudie: Apparaatgegevens verzenden naar Azure Storage met behulp van IoT Hub berichtroutering voor meer informatie over berichtroutering. In de zelfstudie maakt u een opslagroute en test u deze met een apparaat in uw IoT-hub.