Leggere in inglese

Condividi tramite


Creare ed eliminare route ed endpoint usando Azure PowerShell

Questo articolo illustra come creare una route e un endpoint nell'hub IoT di Azure e quindi eliminare la route e l'endpoint. Informazioni su come usare Azure PowerShell per creare route ed endpoint per Hub eventi di Azure, code e argomenti del Bus di servizio di Azure e Archiviazione di Azure.

Per altre informazioni sul funzionamento del routing nell'hub IoT, vedere Usare il routing dei messaggi dell'hub IoT per inviare messaggi da dispositivo a cloud a endpoint differenti. Per informazioni dettagliate sulla configurazione di una route che invia messaggi all'archiviazione e quindi sui test in un dispositivo simulato, vedere Esercitazione: Inviare i dati dei dispositivi ad Archiviazione di Azure usando il routing dei messaggi dell'hub IoT.

Nota

Attualmente PowerShell non supporta i tipi di autenticazione dell'identità gestita per la creazione di endpoint. Se non è possibile usare l'autenticazione sas nello scenario, usare uno degli altri strumenti di gestione per creare endpoint.

Inoltre, PowerShell attualmente non supporta la creazione di endpoint Cosmos DB.

Prerequisiti

Esaminare i prerequisiti per questo articolo in base al tipo di endpoint a cui si vuole indirizzare i messaggi.

Creare endpoint

Nell'hub IoT è possibile creare una route per inviare messaggi o acquisire eventi. Ogni route ha un'origine dati e un endpoint. L'origine dati è la posizione in cui hanno origine i messaggi o i log eventi. L'endpoint è la posizione in cui finiscono i messaggi o i log eventi. È possibile scegliere le posizioni per l'origine dati e l'endpoint quando si crea una nuova route nell'hub IoT. Successivamente, è possibile usare le query di routing per filtrare i messaggi o gli eventi prima del passaggio agli all'endpoint.

Il servizio usato per creare l'endpoint deve prima esistere nell'account Azure.

Nota

Se si usa una versione locale di Azure PowerShell, accedere ad Azure PowerShell prima di iniziare.

I comandi nelle procedure seguenti usano questi riferimenti:

  1. Ottenere la stringa di connessione primaria dall'hub eventi. Copiare la stringa di connessione da usare in un secondo momento.

    Get-AzEventHubKey -ResourceGroupName MyResourceGroup -NamespaceName MyNamespace -EventHubName MyEventHub -Name MyAuthRule
    
  2. Creare un nuovo endpoint dell'hub IoT in Hub eventi. Usare la stringa di connessione primaria del passaggio precedente. Il valore per EndpointType deve essere EventHub. Per tutti gli altri parametri, usare i valori per il proprio scenario.

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

    Per visualizzare tutte le opzioni dell'endpoint di routing, vedere Add-AzIotHubRoutingEndpoint.

Creare una route dell'hub IoT

Con il nuovo endpoint nell'hub IoT, è possibile creare una nuova route.

La route di fallback predefinita nell'hub IoT raccoglie i messaggi da DeviceMessages. Scegliere un'opzione differente per la route personalizzata, ad esempio DeviceConnectionStateEvents. Per altre informazioni sulle opzioni di origine, vedere Add-AzIotHubRoute. Il parametro Enabled è un'opzione, quindi non è necessario usare un valore con il parametro.

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

PowerShell visualizza una conferma simile all'esempio seguente:

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

Aggiornare una route dell'hub IoT

Per apportare modifiche a una route esistente, usare il comando seguente. Provare ad esempio a modificare il nome della route usando il comando.

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

Usare il comando Get-AzIotHubRoute per confermare la modifica nella route:

Get-AzIotHubRoute -ResourceGroupName MyResourceGroup -Name MyIotHub

Eliminare un endpoint

Per eliminare un endpoint:

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

Eliminare una route dell'hub IoT

Per eliminare una route dell'hub IoT:

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

Suggerimento

L'eliminazione di una route non comporta l'eliminazione di endpoint nell'account Azure. È necessario eliminare un endpoint separatamente dall'eliminazione di una route.

Passaggi successivi

In questo articolo di istruzioni si è appreso come creare una route e un endpoint per Hub eventi, code e argomenti del Bus di servizio e Archiviazione di Azure.

Per altre informazioni sul routing dei messaggi, vedere Esercitazione: Inviare dati dei dispositivi ad Archiviazione di Azure usando il routing dei messaggi dell'hub IoT. Nell'esercitazione viene creata una route di archiviazione che viene testata con un dispositivo nell'hub IoT.