Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
É possível usar o modelo do ARM (Azure Resource Manager) para configurar programaticamente os recursos de nuvem do Azure necessários para o provisionamento dos dispositivos. Essas etapas mostram como criar um hub IoT e um Serviço de Provisionamento de Dispositivos no Hub IoT com um modelo do ARM. O hub IoT também está vinculado ao recurso DPS usando o modelo. Essa vinculação permite que o recurso de DPS atribua dispositivos ao hub com base nas políticas de alocação que você configura.
Um modelo do Azure Resource Manager é um arquivo em JavaScript Object Notation (JSON) que define a infraestrutura e a configuração do seu projeto. O modelo usa a sintaxe declarativa. Você descreve a implantação pretendida sem escrever a sequência de comandos de programação para criar a implantação.
Esse início rápido usa o portal do Azure e a CLI do Azure para executar as etapas programáticas necessárias para criar um grupo de recursos e implantar o modelo. No entanto, você também pode usar oPowerShell, o .NET, o Ruby ou outras linguagens de programação para executar essas etapas e implantar seu modelo.
Se o seu ambiente atender aos pré-requisitos e você já estiver familiarizado com o uso de modelos do ARM, selecionar o botão Implantar no Azure abaixo abrirá o modelo para implantação no portal do Azure.
Se você ainda não tiver uma conta do Azure, crie uma conta gratuita antes de começar.
Pré-requisitos
Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, confira Introdução ao Azure Cloud Shell.
Se preferir executar os comandos de referência da CLI localmente, instale a CLI do Azure. Para execuções no Windows ou no macOS, considere executar a CLI do Azure em um contêiner do Docker. Para obter mais informações, confira Como executar a CLI do Azure em um contêiner do Docker.
Se estiver usando uma instalação local, entre com a CLI do Azure usando o comando az login. Para concluir o processo de autenticação, siga as etapas exibidas no terminal. Para obter outras opções de entrada, consulte Autenticar no Azure usando a CLI do Azure.
Quando solicitado, instale a extensão da CLI do Azure no primeiro uso. Para obter mais informações sobre extensões, confira Usar e gerenciar extensões com a CLI do Azure.
Execute az version para localizar a versão e as bibliotecas dependentes que estão instaladas. Para fazer a atualização para a versão mais recente, execute az upgrade.
Examinar o modelo
O modelo usado neste início rápido é proveniente dos Modelos de Início Rápido do Azure.
Observação
Atualmente, não há suporte para modelo ARM para criar inscrições com novos recursos de DPS. Essa é uma solicitação comum e compreendida que está sendo considerada para implementação.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.12.40.16777",
"templateHash": "13184692430416822033"
}
},
"parameters": {
"iotHubName": {
"type": "string",
"metadata": {
"description": "Specify the name of the Iot hub."
}
},
"provisioningServiceName": {
"type": "string",
"metadata": {
"description": "Specify the name of the provisioning service."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Specify the location of the resources."
}
},
"skuName": {
"type": "string",
"defaultValue": "S1",
"metadata": {
"description": "The SKU to use for the IoT Hub."
}
},
"skuUnits": {
"type": "int",
"defaultValue": 1,
"metadata": {
"description": "The number of IoT Hub units."
}
}
},
"variables": {
"iotHubKey": "iothubowner"
},
"resources": [
{
"type": "Microsoft.Devices/IotHubs",
"apiVersion": "2021-07-02",
"name": "[parameters('iotHubName')]",
"location": "[parameters('location')]",
"sku": {
"name": "[parameters('skuName')]",
"capacity": "[parameters('skuUnits')]"
},
"properties": {}
},
{
"type": "Microsoft.Devices/provisioningServices",
"apiVersion": "2022-02-05",
"name": "[parameters('provisioningServiceName')]",
"location": "[parameters('location')]",
"sku": {
"name": "[parameters('skuName')]",
"capacity": "[parameters('skuUnits')]"
},
"properties": {
"iotHubs": [
{
"connectionString": "[format('HostName={0};SharedAccessKeyName={1};SharedAccessKey={2}', reference(resourceId('Microsoft.Devices/IotHubs', parameters('iotHubName')), '2021-07-02').hostName, variables('iotHubKey'), listkeys(resourceId('Microsoft.Devices/IotHubs', parameters('iotHubName')), '2021-07-02').value[0].primaryKey)]",
"location": "[parameters('location')]"
}
]
},
"dependsOn": [
"[resourceId('Microsoft.Devices/IotHubs', parameters('iotHubName'))]"
]
}
]
}
Há dois recursos do Azure definidos no modelo acima:
- Microsoft.Devices/iothubs: cria um Hub IoT do Azure.
- Microsoft.Devices/provisioningServices: cria uma nova instância do Serviço de Provisionamento de Dispositivos do Hub IoT do Azure com o novo hub IoT já vinculado a ele.
Implantar o modelo
Implantar com o Portal
Selecione a imagem a seguir para entrar no Azure e abrir o modelo para implantação. O modelo cria um novo hub IoT e um recurso DPS. O novo hub IoT está vinculado ao recurso de DPS.
Selecione ou insira os valores a seguir e escolha Examinar + criar.
A menos que especificado de outra forma para os campos a seguir, use o valor padrão para criar o hub IoT e o recurso DPS.
Campo Descrição Assinatura Selecione sua assinatura do Azure. Grupo de recursos Selecione Criar, insira um nome exclusivo para o grupo de recursos e clique em OK. Região Selecione uma região para seus recursos. Por exemplo, Leste dos EUA. Para resiliência e confiabilidade, recomendamos implantar em uma das regiões que dão suporte a Zonas de Disponibilidade. Nome do Hub IoT Insira um nome para o hub IoT que deve ser globalmente exclusivo no namespace .azure-devices.net . Você precisará do nome do hub na próxima seção ao validar a implantação. Nome do Serviço de Provisionamento Insira um nome para o novo recurso DPS (Serviço de Provisionamento de Dispositivos). O nome precisa ser globalmente exclusivo no namespace .azure-devices-provisioning.net. Você precisará do nome DPS na próxima seção quando validar a implantação. Na próxima tela, leia os termos. Se você concordar com todos os termos, clique em Criar.
A implantação levará alguns instantes para ser concluída.
Além do portal do Azure, você também pode usar o Azure PowerShell, a CLI do Azure e a API REST. Para saber outros métodos de implantação, consulte Implantar recursos com modelos do ARM e o Azure PowerShell.
Implantar com a CLI do Azure
O uso da CLI do Azure requer a versão 2.6 ou posterior. Se você estiver executando a CLI do Azure localmente, verifique a versão executando: az --version
Entre na sua conta do Azure e selecione sua assinatura.
Se você estiver executando a CLI do Azure localmente em vez de no portal, será necessário fazer logon. Para entrar no prompt de comando, execute o comando az login :
az loginSiga as instruções de autenticação usando o código e entre em sua conta do Azure por meio de um navegador da Web.
Se você tiver várias assinaturas do Azure, entrar o Azure lhe dará acesso a todas as contas do Azure associadas às suas credenciais. Use o seguinte comando az account list para listar as contas do Azure disponíveis para você usar:
az account list -o tableUse o comando az account set a seguir para selecionar a assinatura que você deseja usar para executar os comandos para criar o hub IoT e os recursos DPS. Você pode usar a ID ou nome da assinatura da saída do comando anterior:
az account set --subscription {your subscription name or id}Copie e cole os comandos a seguir no prompt da CLI. Em seguida, execute os comandos pressionando Enter.
Dica
Os comandos solicitarão uma localização do grupo de recursos. Você pode exibir uma lista de locais disponíveis primeiro executando o seguinte comando:
az account list-locations -o tableread -p "Enter a project name that is used for generating resource names:" projectName && read -p "Enter the location (i.e. centralus):" location && templateUri="https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.devices/iothub-device-provisioning/azuredeploy.json" && resourceGroupName="${projectName}rg" && az group create --name $resourceGroupName --location "$location" && az deployment group create --resource-group $resourceGroupName --template-uri $templateUri && echo "Press [ENTER] to continue ..." && readOs comandos solicitarão que você insira as informações a seguir. Forneça cada valor e pressione Enter.
Parâmetro Descrição Nome do projeto O valor desse parâmetro será usado para criar um grupo de recursos para armazenar todos os recursos. A cadeia de caracteres rgserá adicionada ao final do valor para o nome do grupo de recursos.local Esse valor é a região em que todos os recursos residirão. iotHubName Insira um nome para o hub IoT que deve ser globalmente exclusivo no namespace .azure-devices.net . Você precisará do nome do hub na próxima seção ao validar a implantação. provisioningServiceName Insira um nome para o novo recurso DPS (Serviço de Provisionamento de Dispositivos). O nome precisa ser globalmente exclusivo no namespace .azure-devices-provisioning.net. Você precisará do nome DPS na próxima seção quando validar a implantação. A CLI do Azure é usada para implantar o modelo. Além da CLI do Azure, você também pode usar o Azure PowerShell, o portal do Azure e a API REST. Para saber mais sobre outros métodos de implantação, confira Implantar modelos.
Examinar os recursos implantados
Para verificar a implantação, execute o seguinte comando az resource list para listar recursos e procure o novo serviço de provisionamento e o hub IoT na saída:
az resource list -g "${projectName}rg"Para verificar se o hub já está vinculado ao recurso DPS, execute o comando az iot dps show a seguir .
az iot dps show --name <Your provisioningServiceName>Observe os hubs que estão vinculados ao membro
iotHubs.
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 o portal do Azure ou a CLI do Azure para excluir o grupo de recursos e todos os recursos dele.
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 na parte superior.
Para excluir o grupo de recursos implantado usando a CLI do Azure:
az group delete --name "${projectName}rg"
Você também pode excluir grupos de recursos e recursos individuais usando qualquer uma das seguintes opções:
- portal do Azure
- PowerShell
- APIs REST
- SDKs de plataforma com suporte publicados para o Azure Resource Manager ou Hub IoT Serviço de Provisionamento de Dispositivos
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.