Início Rápido: Configurar o Serviço de Provisionamento de Dispositivos no Hub IoT com a CLI do Azure

A CLI do Azure é usada para criar e gerenciar recursos do Azure da linha de comando ou em scripts. Esse início rápido detalha o uso da CLI do Azure para criar um hub IoT e uma instância do Serviço de Provisionamento de Dispositivos no Hub IoT e vincular os dois serviços.

Caso você não tenha uma assinatura do Azure, crie uma conta gratuita do Azure antes de começar.

Importante

O Hub IoT e o serviço de provisionamento criado neste início rápido serão detectáveis publicamente como pontos de extremidade DNS. Evite usar informações confidenciais se você decidir alterar os nomes usados nesses recursos.

Pré-requisitos

Criar um grupo de recursos

Crie um grupo de recursos com o comando az group create. Um grupo de recursos do Azure é um contêiner lógico no qual os recursos do Azure são implantados e gerenciados.

O exemplo a seguir cria um grupo de recursos chamado my-sample-resource-group na localização westus.

az group create --name my-sample-resource-group --location westus

Dica

O exemplo cria o grupo de recursos localizado no Oeste dos EUA. Você pode exibir uma lista dos locais disponíveis executando o comando az account list-locations -o table.

Crie um hub IoT

Crie um hub IoT com o comando az iot hub create.

O exemplo a seguir cria um hub IoT denominado my-sample-hub no local westus. Um nome do hub IoT deve ser globalmente exclusivo no Azure, portanto, adicione um prefixo ou sufixo exclusivo ao nome do exemplo ou escolha um nome totalmente novo. Certifique-se de que seu nome siga a convenção de nomenclatura adequada do hub IoT: ele deve ter de 3 a 50 caracteres de comprimento e conter somente caracteres alfanuméricos minúsculos ou hifens ('-').

az iot hub create --name my-sample-hub --resource-group my-sample-resource-group --location westus

Criar uma instância do Serviço de Provisionamento de Dispositivos

Crie uma instância de Serviço de Provisionamento de Dispositivos com o comando az iot dps create.

O exemplo a seguir cria uma instância do Serviço de Provisionamento de Dispositivos chamada my-sample-dps no local westus. Você também deve escolher um nome globalmente exclusivo para a sua própria instância. Certifique-se de que ele siga a convenção de nomenclatura adequada para um Serviço de Provisionamento de Dispositivos no Hub IoT: ele deve ter de 3 a 64 caracteres de comprimento e conter somente caracteres alfanuméricos minúsculos ou hifens ('-').

az iot dps create --name my-sample-dps --resource-group my-sample-resource-group --location westus

Dica

O exemplo cria o serviço de provisionamento no local Oeste dos EUA. Você pode exibir uma lista de locais disponíveis executando o comando az provider show --namespace Microsoft.Devices --query "resourceTypes[?resourceType=='ProvisioningServices'].locations | [0]" --out table ou acessando a página Status do Azure e pesquisando por "Serviço de Provisionamento de Dispositivos". Nos comandos, os locais podem ser especificados em formato de uma ou várias palavras, por exemplo, westus, West US, WEST US, etc. O valor não diferencia maiúsculas de minúsculas. Se você usar o formato de várias palavras para especificar o local, coloque o valor entre aspas, por exemplo, --location "West US".

Para resiliência e confiabilidade, recomendamos implantar em uma das regiões que dão suporte a Zonas de Disponibilidade.

Obter a cadeia de conexão para o hub IoT

Você precisa da cadeia de conexão do seu hub IoT para vinculá-lo ao serviço de provisionamento de dispositivos. Use o comando az iot hub show-connection-string para obter a cadeia de conexão e use sua saída para definir uma variável que será usada posteriormente, quando você vincular os dois recursos.

O exemplo a seguir define a variável hubConnectionString como o valor da cadeia de conexão para a chave primária da política iothubowner do hub (o parâmetro --policy-name pode ser usado para especificar uma política diferente). Troque my-sample-hub pelo nome exclusivo do Hub IoT escolhido anteriormente. O comando usa as opções consulta e saída da CLI do Azure para extrair a cadeia de conexão da saída do comando.

hubConnectionString=$(az iot hub show-connection-string --name my-sample-hub --key primary --query connectionString -o tsv)

Você pode usar o comando echo para ver a cadeia de conexão.

echo $hubConnectionString

Observação

Esses dois comandos são válidos para um host executado em Bash.

Se você estiver usando um shell CMD/Windows local ou um host do PowerShell, modifique os comandos para usar a sintaxe correta do ambiente.

Se você estiver usando o Azure Cloud Shell, verifique se a lista suspensa ambiente no lado esquerdo da janela do shell diz Bash.

Vincule o hub IoT e o serviço de provisionamento ao comando az iot dps linked-hub create.

O exemplo a seguir vincula um hub IoT denominado my-sample-hub na localização westus e um serviço de provisionamento de dispositivos denominado my-sample-dps. Troque esses nomes pelos nomes exclusivos do hub IoT e do Serviço de Provisionamento de Dispositivos escolhidos anteriormente. O comando usa a cadeia de conexão para seu hub IoT que foi armazenada na variável hubConnectionString na etapa anterior.

az iot dps linked-hub create --dps-name my-sample-dps --resource-group my-sample-resource-group --connection-string $hubConnectionString --location westus

O comando pode demorar um pouco para ser concluído.

Verificar o serviço de provisionamento

Obtenha os detalhes do seu serviço de provisionamento com o comando az iot dps show.

O exemplo a seguir obtém os detalhes de um serviço de provisionamento denominado my-sample-dps. Troque esse nome pelo nome de seu Serviço de Provisionamento de Dispositivos.

az iot dps show --name my-sample-dps

O hub IoT vinculado é mostrado na coleção properties.iotHubs.

Verify Provisioning Service

Limpar os recursos

Outros inícios rápidos nessa coleção aproveitam esse início rápido. Se você planeja continuar trabalhando com os inícios rápidos subsequentes ou os tutoriais, não limpe os recursos criados neste início rápido. Caso contrário, use os comandos a seguir para excluir o serviço de provisionamento, o hub IoT ou o grupo de recursos e todos os recursos dele. Substitua os nomes dos recursos incluídos nos comandos a seguir pelos nomes de seus próprios recursos.

Para excluir o serviço de provisionamento, execute o comando az iot dps delete:

az iot dps delete --name my-sample-dps --resource-group my-sample-resource-group

Para excluir o hub IoT, execute o comando az iot hub delete:

az iot hub delete --name my-sample-hub --resource-group my-sample-resource-group

Para excluir um grupo de recursos e todos os seus recursos, execute o comando az group delete:

az group delete --name my-sample-resource-group

Próximas etapas

Neste início rápido, você implantou um hub IoT e uma instância do Serviço de Provisionamento de Dispositivos e vinculou os dois recursos. Para aprender a usar essa configuração a fim de provisionar um dispositivo, prossiga para o Início Rápido de criação de dispositivo.