Criar e excluir rotas e pontos de extremidade usando o Azure PowerShell
Este artigo mostra como criar uma rota e um ponto de extremidade no Hub IoT do Azure e, em seguida, como exclui-los. Saiba como usar o Azure PowerShell para criar rotas e pontos de extremidade para Hubs de Eventos do Azure, filas e tópicos do Barramento de Serviço do Azure e Armazenamento do Azure.
Para saber mais sobre como funciona o encaminhamento no Hub IoT, confira Usar encaminhamento de mensagens do Hub IoT para enviar mensagens do dispositivo para a nuvem para diferentes pontos de extremidade. Para explicar a configuração de uma rota que envia mensagens para armazenar e testar em um dispositivo simulado, confira Tutorial: enviar dados do dispositivo para o Armazenamento do Azure usando o roteamento de mensagens do Hub IoT.
Pré-requisitos
Os procedimentos descritos no artigo usam os seguintes recursos:
- Azure PowerShell
- Um hub IoT
- Um serviço de ponto de extremidade no Azure
Azure PowerShell
Este artigo usa o Azure PowerShell para trabalhar com o Hub IoT e outros serviços do Azure. Para usar o Azure PowerShell localmente, instale o módulo do Azure PowerShell em seu computador. Como alternativa, para usar o Azure PowerShell em um navegador da Web, habilite o Azure Cloud Shell.
Hub IoT
Para criar uma rota do Hub IoT, é necessário obter um Hub IoT que você criou usando o Hub IoT do Azure. As mensagens do dispositivo e os logs de eventos têm origem no hub IoT.
Verifique se você tem o seguinte recurso de hub para usar ao criar a rota do Hub IoT:
- Um Hub IoT do Azure. Se você não tiver um hub IoT, poderá usar o cmdlet New-AzIoTHub para criar um ou seguir as etapas em Criar um hub IoT.
Serviço de ponto de extremidade
Para criar uma rota de hub IoT, você precisa de pelo menos um outro serviço do Azure para usar como um ponto de extremidade para a rota. O ponto de extremidade recebe mensagens do dispositivo e logs de eventos. Você pode escolher qual serviço do Azure usar para conectar um ponto de extremidade com sua rota do hub IoT: Hubs de Eventos, filas ou tópicos do Barramento de Serviço ou Armazenamento do Azure.
Verifique se você tem um dos seguintes recursos para usar ao criar um ponto de extremidade da rota do hub IoT:
Um recurso dos Hubs de Eventos (com contêiner). Se você precisar criar um novo recurso dos Hubs de Eventos, confira Início Rápido: criar um hub de eventos usando o Azure PowerShell.
Um recurso de fila do Barramento de Serviço. Se você precisar criar uma nova fila do Barramento de Serviço, confira Usar Azure PowerShell para criar um namespace e fila do Barramento de Serviço.
Um recurso de tópico do Barramento de Serviço. Se você precisar criar um novo tópico do Barramento de Serviço, confira a referência New-AzServiceBusTopic e a documentação Mensagens do Barramento de Serviço do Azure.
Um recurso do Armazenamento do Azure. Se você precisar criar um novo conta de armazenamento no Azure, confira Criar uma conta de armazenamento.
Criar recursos e pontos de extremidade
No Hub IoT, você pode criar uma rota para enviar mensagens ou capturar eventos. Cada rota tem uma fonte de dados e um ponto de extremidade. A fonte de dados é a origem das mensagens ou dos logs de eventos. O ponto de extremidade é o destino das mensagens ou dos logs de eventos. Você escolhe locais para a fonte de dados e o ponto de extremidade ao criar uma nova rota no Hub IoT. Em seguida, use consultas de roteamento para filtrar mensagens ou eventos, antes delas irem para o ponto de extremidade.
Você pode usar um hub de eventos, uma fila ou um tópico do Barramento de Serviço ou uma conta de armazenamento como ponto de extremidade para a rota do hub IoT. O serviço que você usa para criar seu ponto de extremidade deve existir primeiro em sua conta do Azure.
Observação
Se você usar uma versão local do Azure PowerShell, entre no Azure PowerShell antes de começar.
Os comandos nos procedimentos a seguir usam estas referências:
Criar um Hub de Evento
Para criar um recurso dos Hubs de Eventos que tem uma regra de autorização:
Criar um novo namespace dos Hubs de Eventos. Para
NamespaceName
, use um valor exclusivo.New-AzEventHubNamespace -ResourceGroupName MyResourceGroup -NamespaceName MyNamespace -Location MyLocation
Crie a nova entidade dos Hubs de Eventos. Para
Name
, use um valor exclusivo. ParaNamespaceName
, use o nome do namespace criado na etapa anterior.New-AzEventHub -Name MyEventHub -NamespaceName MyNamespace -ResourceGroupName MyResourceGroup
Cria uma nova regra de autorização. Para
Name
, use o nome da entidade paraEventHubName
. Para o nome da regra de autorização, use um valor exclusivo.New-AzEventHubAuthorizationRule -ResourceGroupName MyResourceGroup -NamespaceName MyNamespace -EventHubName MyEventHub -Name MyAuthRule -Rights @('Manage', 'Send', 'Listen')
Para obter mais informações sobre acesso, confira Autorizar o acesso aos Hubs de Eventos do Azure.
Criar um ponto de extremidade dos Hubs de Eventos
Obter a cadeia de conexão primária do hub de eventos. Copie a cadeia de conexão para usar mais tarde.
Get-AzEventHubKey -ResourceGroupName MyResourceGroup -NamespaceName MyNamespace -EventHubName MyEventHub -Name MyAuthRule
Crie um novo ponto de extremidade do Hub IoT para os Hubs de Eventos. Use a cadeia de conexão primária da etapa anterior. O valor para
EndpointType
deve serEventHub
. Para todos os outros parâmetros, use os valores para seu cenário.Add-AzIotHubRoutingEndpoint -ResourceGroupName MyResourceGroup -Name MyIotHub -EndpointName MyEndpoint -EndpointType EventHub -EndpointResourceGroup MyResourceGroup -EndpointSubscriptionId xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx -ConnectionString "Endpoint=<my connection string>"
Para ver todas as opções de ponto de extremidade de encaminhamento, confira Add-AzIotHubRoutingEndpoint.
Criar uma rota do Hub IoT
Com o novo ponto de extremidade no hub IoT, você pode criar uma nova rota.
A rota de fallback padrão no Hub IoT coleta mensagens de DeviceMessages
. Escolha uma opção diferente para sua rota personalizada, como DeviceConnectionStateEvents
. Para obter mais informações sobre opções de origem, confira Add-AzIotHubRoute. O parâmetro Enabled
é uma opção, portanto, você não precisa usar um valor com o parâmetro.
Add-AzIotHubRoute -ResourceGroupName MyResourceGroup -Name MyIotHub -RouteName MyRoute -Source DeviceLifecycleEvents -EndpointName MyEndpoint -Enabled
O PowerShell exibe uma confirmação semelhante a este exemplo:
RouteName : MyIotHub
DataSource : DeviceLifecycleEvents
EndpointNames : MyEndpoint
Condition : true
IsEnabled : True
Atualizar uma rota do Hub IoT
Para fazer alterações em uma rota existente, use o comando a seguir. Por exemplo, tente alterar o nome da rota usando o comando.
Set-AzIotHubRoute -ResourceGroupName MyResourceGroup -Name MyIotHub -RouteName MyRoute
Use o comando Get-AzIotHubRoute
para confirmar a alteração na rota:
Get-AzIotHubRoute -ResourceGroupName MyResourceGroup -Name MyIotHub
Excluir um ponto de extremidade
Para excluir um ponto de extremidade:
Remove-AzIotHubRoutingEndpoint -ResourceGroupName MyResourceGroup -Name MyIotHub -EndpointName MyEndpoint -PassThru
Excluir uma rota do Hub IoT
Para excluir uma rota do Hub IoT:
Remove-AzIotHubRoute -ResourceGroupName MyResourceGroup -Name MyIotHub -RouteName MyRoute -PassThru
Dica
Excluir uma rota não exclui nenhum ponto de extremidade na conta do Azure. Você deve excluir um ponto de extremidade separadamente da exclusão de uma rota.
Próximas etapas
Neste artigo de instruções, você aprendeu como criar uma rota e um ponto de extremidade para Hubs de Eventos, filas ou tópicos do Barramento de Serviço e Armazenamento do Azure.
Para saber mais sobre o roteamento de mensagens, confira Tutorial: enviar dados do dispositivo para o armazenamento do Azure usando o roteamento de mensagens do Hub IoT. No tutorial, você cria uma rota de armazenamento e a testa com um dispositivo no hub IoT.