Quickstart: IoT Hub Device Provisioning Service (DPS) instellen met Bicep
U kunt een Bicep-bestand gebruiken om programmatisch de Azure-cloudresources in te stellen die nodig zijn voor het inrichten van uw apparaten. Deze stappen laten zien hoe u een IoT-hub en een nieuw IoT Hub Device Provisioning Service-exemplaar maakt met een Bicep-bestand. De IoT Hub is ook gekoppeld aan de DPS-resource met behulp van het Bicep-bestand. Met deze koppeling kan de DPS-resource apparaten toewijzen aan de hub op basis van het toewijzingsbeleid dat u configureert.
Bicep is een domeinspecifieke taal (DSL) die declaratieve syntaxis gebruikt om Azure-resources te implementeren. Deze taal voorziet in een beknopte syntaxis, betrouwbare typeveiligheid en ondersteuning voor hergebruik van code. Bicep biedt de beste ontwerpervaring voor uw infrastructuur als code-oplossingen in Azure.
In deze quickstart worden Azure PowerShell en de Azure CLI gebruikt om de programmatische stappen uit te voeren die nodig zijn om een resourcegroep te maken en het Bicep-bestand te implementeren, maar u kunt eenvoudig .NET, Ruby of andere programmeertalen gebruiken om deze stappen uit te voeren en uw Bicep-bestand te implementeren.
Vereisten
Als u geen Azure-abonnement hebt, kunt u een gratis Azure-account maken voordat u begint.
Gebruik de Bash-omgeving in Azure Cloud Shell. Zie quickstart voor Bash in Azure Cloud Shell voor meer informatie.
Installeer de Azure CLI, indien gewenst, om CLI-referentieopdrachten uit te voeren. Als u in Windows of macOS werkt, kunt u Azure CLI uitvoeren in een Docker-container. Zie De Azure CLI uitvoeren in een Docker-container voor meer informatie.
Als u een lokale installatie gebruikt, meldt u zich aan bij Azure CLI met behulp van de opdracht az login. Volg de stappen die worden weergegeven in de terminal, om het verificatieproces te voltooien. Raadpleeg Aanmelden bij Azure CLI voor aanvullende aanmeldingsopties.
Installeer de Azure CLI-extensie bij het eerste gebruik, wanneer u hierom wordt gevraagd. Raadpleeg Extensies gebruiken met Azure CLI voor meer informatie over extensies.
Voer az version uit om de geïnstalleerde versie en afhankelijke bibliotheken te vinden. Voer az upgrade uit om te upgraden naar de nieuwste versie.
- Als u ervoor kiest om Azure PowerShell lokaal te gebruiken:
- Installeer de nieuwste versie van de Az PowerShell-module.
- Maak verbinding met uw Azure-account met de cmdlet Connect-AzAccount.
- Als u ervoor kiest om Azure Cloud Shell te gebruiken:
- Raadpleeg Overzicht van Azure Cloud Shell voor meer informatie.
Het Bicep-bestand controleren
Het Bicep-bestand dat in deze quickstart wordt gebruikt, is afkomstig van Azure-quickstartsjablonen.
Notitie
Er is momenteel geen Ondersteuning voor Bicep-bestanden voor het maken van inschrijvingen met nieuwe DPS-resources. Dit is een gemeenschappelijk en begrepen verzoek dat wordt overwogen voor implementatie.
@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
}
]
}
}
Er worden twee Azure-resources gedefinieerd in het Bicep-bestand hierboven:
- Microsoft.Devices/iothubs: Hiermee maakt u een nieuwe Azure IoT Hub.
- Microsoft.Devices/provisioningservices: Hiermee maakt u een nieuwe Azure IoT Hub Device Provisioning Service met de nieuwe IoT Hub die eraan al is gekoppeld.
Sla een kopie van het Bicep-bestand lokaal op als main.bicep.
Het Bicep-bestand implementeren
Meld u aan bij uw Azure-account en selecteer uw abonnement.
Meld u aan bij Azure bij de opdrachtprompt:
az login
Volg de instructies om te verifiëren met de code en meld u aan bij uw Azure-account via een webbrowser.
Als u meerdere Azure-abonnementen hebt en u zich aanmeldt bij Azure, hebt u toegang tot alle Azure accounts die zijn gekoppeld aan uw referenties.
az account list -o table
Gebruik de volgende opdracht om het abonnement te selecteren dat u wilt gebruiken om de opdrachten uit te voeren om uw IoT-hub- en DPS-resources te maken. U kunt de naam van het abonnement of de id van de uitvoer van de vorige opdracht gebruiken:
az account set --subscription {your subscription name or id}
Implementeer het Bicep-bestand met de volgende opdrachten.
Tip
De opdrachten vragen om een resourcegroeplocatie. U kunt een lijst met beschikbare locaties weergeven door eerst de volgende opdracht uit te voeren:
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}
Vervang {IoT-Hub-name} door een wereldwijd unieke IoT Hub-naam, vervang {DPS-name} door een DPS-resourcenaam (Globally Unique Device Provisioning Service).
Het duurt even voordat de resources zijn gemaakt.
Geïmplementeerde resources bekijken
Als u de implementatie wilt controleren, voert u de volgende opdracht uit en zoekt u in de uitvoer naar de nieuwe inrichtingsservice en IoT-hub:
az resource list -g exampleRg
Voer de volgende opdracht uit om te controleren of de hub al is gekoppeld aan de DPS-resource.
az iot dps show --name <Your provisioningServiceName>
Resources opschonen
Andere Quick Starts in deze verzameling zijn op deze Quick Start gebaseerd. Als u van plan bent om door te gaan met de volgende quickstarts of met de zelfstudies, moet u de resources die in deze quickstart zijn gemaakt, niet opschonen. Als u niet van plan bent om door te gaan, kunt u Azure PowerShell of Azure CLI gebruiken om de resourcegroep en alle bijbehorende resources te verwijderen.
Als u een resourcegroep en alle bijbehorende resources uit Azure Portal wilt verwijderen, opent u de resourcegroep en selecteert u Resourcegroep verwijderen en bovenaan.
De geïmplementeerde resourcegroep verwijderen:
az group delete --name exampleRG
U kunt ook resourcegroepen en afzonderlijke resources verwijderen met behulp van Azure Portal, PowerShell of REST API's, of met ondersteunde platform-SDK's.
Volgende stappen
In deze quickstart hebt u een IoT-hub en een Device Provisioning Service-exemplaar geïmplementeerd en de twee resources gekoppeld. Als u wilt weten hoe u deze instellingen gebruikt voor het inrichten van een apparaat, gaat u verder met de rest van de quickstart voor het maken van een apparaat.