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:
- Een IoT-hub in uw Azure-abonnement. Als u nog geen hub hebt, kunt u de stappen volgen om een IoT-hub te maken met behulp van de powershell-cmdlet New-AzIotHub.
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:
Een Event Hubs-resource (met container). Als u een nieuwe Event Hubs-resource wilt maken, raadpleegt u Quickstart: Een Event Hub maken met behulp van Azure PowerShell.
Een Service Bus-wachtrijresource. Als u een nieuwe Service Bus-wachtrij wilt maken, raadpleegt u Azure PowerShell gebruiken om een Service Bus-naamruimte en -wachtrij te maken.
Een Service Bus-onderwerpresource. Als u een nieuw Service Bus-onderwerp wilt maken, raadpleegt u de naslaginformatie New-AzServiceBusTopic en de documentatie voor Azure Service Bus messaging.
Een Azure Storage-resource. Zie Een opslagaccount maken als u een nieuw opslagaccount in Azure wilt maken.
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:
Maak een nieuwe Event Hubs-naamruimte. Gebruik
NamespaceName
voor een unieke waarde.New-AzEventHubNamespace -ResourceGroupName MyResourceGroup -NamespaceName MyNamespace -Location MyLocation
Maak uw nieuwe Event Hubs-entiteit. Gebruik
Name
voor een unieke waarde. VoorNamespaceName
gebruikt u de naam van de naamruimte die u in de vorige stap hebt gemaakt.New-AzEventHub -Name MyEventHub -NamespaceName MyNamespace -ResourceGroupName MyResourceGroup
Maak een nieuwe autorisatieregel. Gebruik voor
Name
de naam van uw entiteit voorEventHubName
. 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
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
Maak een nieuw IoT-hub-eindpunt voor Event Hubs. Gebruik uw primaire connection string uit de vorige stap. De waarde voor
EndpointType
moet zijnEventHub
. 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.