Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
U kunt een Azure Resource Manager-sjabloon (ARM-sjabloon) gebruiken om de Azure-cloudresources die nodig zijn voor het inrichten van uw apparaten programmatisch in te stellen. Deze stappen laten zien hoe u een IoT-hub en een nieuwe IoT Hub Device Provisioning Service maakt met een ARM-sjabloon. De IoT Hub is ook gekoppeld aan de DPS-resource met behulp van de sjabloon. Met deze koppeling kan de DPS-resource apparaten toewijzen aan de hub op basis van het toewijzingsbeleid dat u configureert.
Een Azure Resource Manager-sjabloon is een JSON-bestand (JavaScript Object Notation) dat de infrastructuur en configuratie voor uw project definieert. De sjabloon maakt gebruik van declaratieve syntaxis. U beschrijft de beoogde implementatie zonder de reeks programmeeropdrachten te schrijven om de implementatie te maken.
In deze quickstart worden Azure Portal en de Azure CLI gebruikt om de programmatische stappen uit te voeren die nodig zijn om een resourcegroep te maken en de sjabloon te implementeren. U kunt echter ook PowerShell, .NET, Ruby of andere programmeertalen gebruiken om deze stappen uit te voeren en uw sjabloon te implementeren.
Als uw omgeving voldoet aan de vereisten en u al bekend bent met het gebruik van ARM-sjablonen, wordt de sjabloon voor implementatie in Azure Portal geopend wanneer u de knop Implementeren in Azure selecteert.
Als u geen Azure-account hebt, maak dan een gratis account aan voordat u begint.
Vereiste voorwaarden
Gebruik de Bash-omgeving in Azure Cloud Shell. Zie Aan de slag met Azure Cloud Shell voor meer informatie.
Als je de voorkeur geeft aan het lokaal uitvoeren van CLI-referentiecommando's, installeer dan de Azure CLI. Als je op Windows of macOS werkt, overweeg dan om Azure CLI in een Docker-container te draaien. Voor meer informatie, zie Hoe u de Azure CLI in een Docker-container kunt uitvoeren.
Als u een lokale installatie gebruikt, meldt u zich aan bij Azure CLI met de opdracht az login. Om het authenticatieproces te voltooien, volgt u de stappen die op uw terminal worden weergegeven. Zie Verifiëren bij Azure met behulp van Azure CLI voor andere aanmeldingsopties.
Wanneer u daarom wordt gevraagd, installeer de Azure CLI-extensie bij het eerste gebruik. Zie Extensies gebruiken en beheren met de Azure CLIvoor meer informatie over extensies.
Voer az version uit om de geïnstalleerde versie en de afhankelijke bibliotheken te vinden. Voer az upgrade uit om naar de nieuwste versie te upgraden.
De sjabloon controleren
De sjabloon die in deze quickstart wordt gebruikt, komt uit Azure-snelstartsjablonen.
Opmerking
Er is momenteel geen ARM-sjabloonondersteuning voor het maken van inschrijvingen met nieuwe DPS-resources. Dit is een gemeenschappelijk en begrepen verzoek dat wordt overwogen voor implementatie.
{
"$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'))]"
]
}
]
}
Er zijn twee Azure-resources gedefinieerd in de vorige sjabloon:
- 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.
De sjabloon implementeren
Implementeren met de portal
Selecteer de volgende afbeelding om u aan te melden bij Azure en de sjabloon voor implementatie te openen. Met de sjabloon maakt u een nieuwe IoT-hub en DPS-resource. De nieuwe IoT-hub is gekoppeld aan de DPS-resource.
Selecteer of voer de volgende waarden in en selecteer Beoordelen en maken.
Tenzij anders is opgegeven voor de volgende velden, gebruikt u de standaardwaarde om de IoT Hub- en DPS-resource te maken.
Veld Beschrijving Abonnement Selecteer uw Azure-abonnement. Resourcegroep Selecteer Nieuwe maken en voer een unieke naam in voor de resourcegroep en selecteer VERVOLGENS OK. Regio Selecteer een regio voor uw resources. Bijvoorbeeld VS - Oost. Voor tolerantie en betrouwbaarheid raden we u aan om te implementeren in een van de regio's die beschikbaarheidszones ondersteunen. IoT Hub-naam Voer een naam in voor de IoT Hub die wereldwijd uniek moet zijn binnen de .azure-devices.net-naamruimte . U hebt de hubnaam nodig in de volgende sectie wanneer u de implementatie valideert. Naam van provisioningdienst Voer een naam in voor de nieuwe DPS-resource (Device Provisioning Service). De naam moet globaal uniek zijn binnen de .azure-devices-provisioning.net-naamruimte . U hebt de DPS-naam in de volgende sectie nodig wanneer u de implementatie valideert. Lees de termen in het volgende scherm. Als u akkoord gaat met alle voorwaarden, selecteert u Maken.
Het duurt even voordat de implementatie is voltooid.
Naast Azure Portal kunt u ook de Azure PowerShell, Azure CLI en REST API gebruiken. Zie Sjablonen implementeren voor meer informatie over andere implementatiemethoden.
Implementeren met de Azure CLI
Voor het gebruik van Azure CLI is versie 2.6 of hoger vereist. Als u de Azure CLI lokaal uitvoert, controleert u uw versie door het volgende uit te voeren: az --version
Meld u aan bij uw Azure-account en selecteer uw abonnement.
Als u de Azure CLI lokaal uitvoert in plaats van deze uit te voeren in de portal, moet u zich aanmelden. Voer de aanmeldingsopdracht uit om u aan te melden 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. Gebruik de volgende opdracht om de Azure-accounts weer te geven die u kunt gebruiken:
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}
Kopieer en plak de volgende opdrachten in de CLI-prompt. Voer vervolgens de opdrachten uit door de Enter-toets te selecteren.
Aanbeveling
De opdrachten vragen naar de locatie van een resourcegroep. U kunt een lijst met beschikbare locaties weergeven door eerst de volgende opdracht uit te voeren:
az account list-locations -o table
read -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 ..." && read
De opdrachten vragen u om de volgende informatie. Geef elke waarde op en selecteer de Enter-toets.
Kenmerk Beschrijving Projectnaam De waarde van deze parameter wordt gebruikt om een resourcegroep te maken voor het opslaan van alle resources. De tekenreeks rg
wordt toegevoegd aan het einde van de naam van uw resourcegroep.plaats Deze waarde is de regio waarin alle middelen worden gemaakt. iotHubName Voer een naam in voor de IoT Hub die wereldwijd uniek moet zijn binnen de .azure-devices.net-naamruimte . U hebt de hubnaam nodig in de volgende sectie wanneer u de implementatie valideert. provisioningServiceName Voer een naam in voor de nieuwe DPS-resource (Device Provisioning Service). De naam moet globaal uniek zijn binnen de .azure-devices-provisioning.net-naamruimte . U hebt de DPS-naam in de volgende sectie nodig wanneer u de implementatie valideert. De Azure CLI wordt gebruikt om de sjabloon te implementeren. Naast de Azure CLI kunt u ook azure PowerShell, Azure Portal en REST API gebruiken. Zie Sjablonen implementeren voor meer informatie over andere implementatiemethoden.
Geïmplementeerde middelen beoordelen
nl-NL: Als u de implementatie wilt controleren, voert u de volgende opdracht uit om resources weer te geven als lijst en zoekt u in de uitvoer naar de nieuwe inrichtingsservice en IoT-hub.
az resource list -g "${projectName}rg"
Als u wilt controleren of de hub al is gekoppeld aan de DPS-resource, voert u de volgende opdracht voor de DPS-extensie weergeven uit.
az iot dps show --name <Your provisioningServiceName>
Let op de hubs die zijn gekoppeld aan het
iotHubs
-lid.
De hulpbronnen 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 Portal 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.
Ga als volgt te werk om de resourcegroep te verwijderen die is geïmplementeerd met behulp van de Azure CLI:
az group delete --name "${projectName}rg"
U kunt ook resourcegroepen en afzonderlijke resources verwijderen met een van de volgende opties:
- Azure Portal
- PowerShell
- REST API's
- Ondersteunde platform-SDK's die zijn gepubliceerd voor Azure Resource Manager of IoT Hub Device Provisioning Service
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.