Guia de início rápido: configurar o DPS (Serviço de Provisionamento de Dispositivos) do Hub IoT com o Bicep
Você pode usar um arquivo Bicep para configurar programaticamente os recursos de nuvem do Azure necessários para provisionar seus dispositivos. Estas etapas mostram como criar um hub IoT e uma nova instância do Serviço de Provisionamento de Dispositivo do Hub IoT com um arquivo Bicep. O Hub IoT também está vinculado ao recurso DPS usando o arquivo Bicep. Essa vinculação permite que o recurso DPS atribua dispositivos ao hub com base nas políticas de alocação configuradas.
O Bicep é uma linguagem específica do domínio que utiliza sintaxe declarativa para implementar recursos do Azure. Fornece sintaxe concisa, segurança de tipos fiável e suporte para reutilização de código. O Bicep oferece a melhor experiência de criação para suas soluções de infraestrutura como código no Azure.
Este início rápido usa o Azure PowerShell e a CLI do Azure para executar as etapas programáticas necessárias para criar um grupo de recursos e implantar o arquivo Bicep, mas você pode facilmente usar .NET, Ruby ou outras linguagens de programação para executar essas etapas e implantar seu arquivo Bicep.
Pré-requisitos
Se não tiver uma subscrição do Azure, crie uma conta gratuita do Azure antes de começar.
Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, consulte Guia de início rápido para Bash no Azure Cloud Shell.
Se preferir executar comandos de referência da CLI localmente, instale a CLI do Azure. Se estiver a utilizar o Windows ou macOS, considere executar a CLI do Azure num contentor Docker. Para obter mais informações, consulte Como executar a CLI do Azure em um contêiner do Docker.
Se estiver a utilizar uma instalação local, inicie sessão no CLI do Azure ao utilizar o comando az login. Para concluir o processo de autenticação, siga os passos apresentados no seu terminal. Para outras opções de entrada, consulte Entrar com a CLI do Azure.
Quando solicitado, instale a extensão da CLI do Azure na primeira utilização. Para obter mais informações sobre as extensões, veja Utilizar extensões com o CLI do Azure.
Execute o comando az version para localizar a versão e as bibliotecas dependentes instaladas. Para atualizar para a versão mais recente, execute o comando az upgrade.
- Se você optar por usar o Azure PowerShell localmente:
- Instale a versão mais recente do módulo Az PowerShell.
- Conecte-se à sua conta do Azure usando o cmdlet Connect-AzAccount .
- Se você optar por usar o Azure Cloud Shell:
- Consulte Visão geral do Azure Cloud Shell para obter mais informações.
Revise o arquivo Bicep
O arquivo Bicep usado neste início rápido é de Modelos de Início Rápido do Azure.
Nota
Atualmente, não há suporte a arquivos Bicep para criar inscrições com novos recursos do DPS. Este é um pedido comum e compreendido que está a ser considerado para implementação.
@description('Specify the name of the Iot hub.')
param iotHubName string
@description('Specify the name of the provisioning service.')
param provisioningServiceName string
@description('Specify the location of the resources.')
param location string = resourceGroup().location
@description('The SKU to use for the IoT Hub.')
param skuName string = 'S1'
@description('The number of IoT Hub units.')
param skuUnits int = 1
var iotHubKey = 'iothubowner'
resource iotHub 'Microsoft.Devices/IotHubs@2021-07-02' = {
name: iotHubName
location: location
sku: {
name: skuName
capacity: skuUnits
}
properties: {}
}
resource provisioningService 'Microsoft.Devices/provisioningServices@2022-02-05' = {
name: provisioningServiceName
location: location
sku: {
name: skuName
capacity: skuUnits
}
properties: {
iotHubs: [
{
connectionString: 'HostName=${iotHub.properties.hostName};SharedAccessKeyName=${iotHubKey};SharedAccessKey=${iotHub.listkeys().value[0].primaryKey}'
location: location
}
]
}
}
Dois recursos do Azure são definidos no arquivo Bicep acima:
- Microsoft.Devices/iothubs: cria um novo Hub IoT do Azure.
- Microsoft.Devices/provisioningservices: cria um novo Serviço de Provisionamento de Dispositivo do Hub IoT do Azure com o novo Hub IoT já vinculado a ele.
Salve uma cópia do arquivo Bicep localmente como main.bicep.
Implantar o arquivo Bicep
Inicie sessão na sua conta do Azure e selecione a sua subscrição.
Entre no Azure no prompt de comando:
az login
Siga as instruções para se autenticar com o código e inicie sessão na sua conta do Azure através de um browser.
Se tiver várias subscrições do Azure, iniciar sessão no Azure dá-lhe acesso a todas as contas do Azure associadas às suas credenciais.
az account list -o table
Use o comando a seguir para selecionar a assinatura que você deseja usar para executar os comandos para criar seu hub IoT e recursos DPS. Pode utilizar o nome ou o ID da subscrição da saída do comando anterior:
az account set --subscription {your subscription name or id}
Implante o arquivo Bicep com os seguintes comandos.
Gorjeta
Os comandos solicitarão um local de grupo de recursos. Você pode exibir uma lista de locais disponíveis executando primeiro o comando:
az account list-locations -o table
az group create --name exampleRG --location eastus az deployment group create --resource-group exampleRG --template-file main.bicep --parameters iotHubName={IoT-Hub-name} provisioningServiceName={DPS-name}
Substitua {IoT-Hub-name} por um nome de Hub IoT globalmente exclusivo, substitua {DPS-name} por um nome de recurso DPS (Device Provisioning Service) globalmente exclusivo.
Leva alguns momentos para criar os recursos.
Rever os recursos implementados
Para verificar a implantação, execute o seguinte comando e procure o novo serviço de provisionamento e o hub IoT na saída:
az resource list -g exampleRg
Para verificar se o hub já está vinculado ao recurso DPS, execute o seguinte comando.
az iot dps show --name <Your provisioningServiceName>
Clean up resources (Limpar recursos)
Outros guias de introdução desta coleção têm por base este guia de introdução. Se você planeja continuar a trabalhar com inícios rápidos subsequentes ou com os tutoriais, não limpe os recursos criados neste início rápido. Se você não planeja continuar, pode usar o Azure PowerShell ou a CLI do Azure para excluir o grupo de recursos e todos os seus recursos.
Para excluir um grupo de recursos e todos os seus recursos do portal do Azure, basta abrir o grupo de recursos e selecionar Excluir grupo de recursos e a parte superior.
Para excluir o grupo de recursos implantado:
az group delete --name exampleRG
Você também pode excluir grupos de recursos e recursos individuais usando o portal do Azure, PowerShell ou APIs REST, ou com SDKs de plataforma suportados.
Próximos passos
Neste início rápido, você implantou um hub IoT e uma instância do Serviço de Provisionamento de Dispositivo e vinculou os dois recursos. Para saber como usar essa configuração para provisionar um dispositivo, continue para o início rápido para criar um dispositivo.