Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Sie können eine ARM-Vorlage (Azure Resource Manager) verwenden, um die zum Bereitstellen Ihrer Geräte erforderlichen Azure-Cloudressourcen programmgesteuert einzurichten. Hier erfahren Sie, wie Sie mithilfe einer ARM-Vorlage einen IoT-Hub und eine neue Instanz von IoT Hub Device Provisioning Service erstellen. Der IoT-Hub ist auch mithilfe der Vorlage mit der DPS-Ressource verknüpft. Dank dieser Verknüpfung kann die DPS-Ressource dem Hub auf der Grundlage der von Ihnen konfigurierten Zuordnungsrichtlinien Geräte zuweisen.
Eine Azure Resource Manager-Vorlage ist eine JSON (JavaScript Object Notation)-Datei, welche die Infrastruktur und die Konfiguration für Ihr Projekt definiert. Die Vorlage verwendet eine deklarative Syntax. Sie beschreiben Ihre geplante Bereitstellung, ohne die Abfolge der Programmierbefehle zu schreiben, mit denen die Bereitstellung erstellt wird.
Dieser Schnellstart verwendet das Azure-Portal und die Azure-Befehlszeilenschnittstelle, um die programmgesteuerten Schritte zum Erstellen einer Ressourcengruppe und zum Bereitstellen der Vorlage auszuführen. Sie können jedoch auch PowerShell, .NET, Ruby oder andere Programmiersprachen verwenden, um diese Schritte auszuführen und Ihre Vorlage bereitzustellen.
Wenn Ihre Umgebung die Voraussetzungen erfüllt und Sie bereits mit der Verwendung von ARM-Vorlagen vertraut sind, können Sie die Vorlage durch Auswählen der Schaltfläche In Azure bereitstellen für die Bereitstellung im Azure-Portal öffnen.
Wenn Sie nicht über ein Azure-Konto verfügen, erstellen Sie ein kostenloses Konto , bevor Sie beginnen.
Voraussetzungen
Verwenden Sie die Bash-Umgebung in Azure Cloud Shell. Weitere Informationen finden Sie unter Erste Schritte mit Azure Cloud Shell.
Wenn Sie CLI-Referenzbefehle lieber lokal ausführen, installieren Sie die Azure CLI. Wenn Sie Windows oder macOS ausführen, sollten Sie die Azure CLI in einem Docker-Container ausführen. Weitere Informationen finden Sie unter Ausführen der Azure CLI in einem Docker-Container.
Wenn Sie eine lokale Installation verwenden, melden Sie sich mithilfe des Befehls az login bei der Azure CLI an. Führen Sie die in Ihrem Terminal angezeigten Schritte aus, um den Authentifizierungsprozess abzuschließen. Weitere Anmeldeoptionen finden Sie unter Authentifizieren bei Azure mithilfe der Azure CLI.
Installieren Sie die Azure CLI-Erweiterung beim ersten Einsatz, wenn Sie dazu aufgefordert werden. Weitere Informationen zu Erweiterungen finden Sie unter Verwenden und Verwalten von Erweiterungen mit der Azure CLI.
Führen Sie az version aus, um die installierte Version und die abhängigen Bibliotheken zu ermitteln. Führen Sie az upgrade aus, um das Upgrade auf die aktuelle Version durchzuführen.
Überprüfen der Vorlage
Die in dieser Schnellstartanleitung verwendete Vorlage stammt von der Seite mit den Azure-Schnellstartvorlagen.
Hinweis
Derzeit gibt es keine ARM-Vorlagenunterstützung für das Erstellen von Registrierungen mit neuen DPS-Ressourcen. Dies ist eine häufige und verstandene Anforderung, die für die Implementierung berücksichtigt wird.
{
"$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'))]"
]
}
]
}
In der vorigen Vorlage sind zwei Azure-Ressourcen definiert:
- Microsoft.Devices/IotHubs: Erstellt eine neue Azure IoT Hub-Instanz.
- Microsoft.Devices/provisioningServices: Erstellt eine neue Azure IoT Hub Device Provisioning Service-Instanz mit dem neuen IoT-Hub, der bereits damit verknüpft ist.
Bereitstellen der Vorlage
Bereitstellen über das Portal
Wählen Sie das folgende Bild aus, um sich bei Azure anzumelden und die Vorlage für die Bereitstellung zu öffnen. Die Vorlage erstellt eine neue IoT-Hub- und DPS-Ressource. Der neue IoT-Hub ist mit der DPS-Ressource verknüpft.
Wählen Sie die folgenden Werte aus, oder geben Sie sie ein, und wählen Sie dann Überprüfen + erstellen aus.
Sofern nicht anders für die folgenden Felder angegeben, verwenden Sie den Standardwert, um die IoT-Hub- und DPS-Ressource zu erstellen.
Feld BESCHREIBUNG Abonnement Wählen Sie Ihr Azure-Abonnement. Ressourcengruppe Wählen Sie die Option Neu erstellen aus, und geben Sie einen eindeutigen Namen für die Ressourcengruppe ein. Wählen Sie dann OK aus. Region Wählen Sie eine Region für Ihre Ressourcen aus. Beispiel: USA, Osten Für Resilienz und Zuverlässigkeit empfehlen wir, eine der Regionen zu wählen, die Verfügbarkeitszonen unterstützen. IoT Hub-Name Geben Sie einen Namen für den IoT-Hub ein, der innerhalb des .azure-devices.net-Namespace global eindeutig sein muss. Sie benötigen den Hubnamen im nächsten Abschnitt beim Überprüfen der Bereitstellung. Provisioning Service Name (Name des Bereitstellungsdiensts) Geben Sie einen Namen für die neue DPS-Ressource (Device Provisioning Service) ein. Der Name muss innerhalb des Namespace .azure-devices-provisioning.net global eindeutig sein. Sie benötigen den DPS-Namen im nächsten Abschnitt beim Überprüfen der Bereitstellung. Lesen Sie sich auf dem nächsten Bildschirm die Bedingungen durch. Wenn Sie mit allen Bedingungen einverstanden sind, wählen Sie Erstellen aus.
Die Bereitstellung dauert einige Momente.
Neben dem Azure-Portal können Sie auch Azure PowerShell, die Azure-Befehlszeilenschnittstelle (Azure CLI) und die REST-API verwenden. Weitere Bereitstellungsmethoden finden Sie unter Bereitstellen von Ressourcen mit ARM-Vorlagen und Azure PowerShell.
Bereitstellen mit der Azure-Befehlszeilenschnittstelle (Azure CLI)
Wenn Sie die Azure CLI verwenden möchten, benötigen Sie mindestens die Version 2.6. Falls Sie die Azure CLI lokal ausführen, überprüfen Sie Ihre Version mithilfe des folgenden Befehls: az --version
Melden Sie sich bei Ihrem Azure-Konto an, und wählen Sie Ihr Abonnement aus.
Falls Sie die Azure CLI lokal (statt im Portal) ausführen, müssen Sie sich anmelden. Um sich an der Eingabeaufforderung einzuloggen, führen Sie den Befehl "az login" aus:
az loginBefolgen Sie die Anweisungen zur Authentifizierung mit dem Code, und melden Sie sich in einem Webbrowser bei Ihrem Azure-Konto an.
Wenn Sie über mehrere Azure-Abonnements verfügen, erhalten Sie durch die Anmeldung bei Azure Zugriff auf alle Azure-Konten, die mit Ihren Anmeldeinformationen verknüpft sind. Verwenden Sie den folgenden Befehl " az account list ", um die azure-Konten auflisten, die Sie verwenden können:
az account list -o tableVerwenden Sie den folgenden Befehl "az account set " zum Auswählen des Abonnements, das Sie zum Ausführen der Befehle verwenden möchten, um Ihre IoT-Hub- und DPS-Ressourcen zu erstellen. Sie können entweder den Abonnementnamen oder die ID aus der Ausgabe des vorherigen Befehls verwenden:
az account set --subscription {your subscription name or id}Kopieren Sie die folgenden Befehle, und fügen Sie sie in Ihre CLI-Eingabeaufforderung ein. Führen Sie dann die Befehle aus, indem Sie die EINGABETASTE drücken.
Tipp
Von den Befehlen werden Sie zur Eingabe eines Ressourcengruppenstandorts aufgefordert. Sie können eine Liste der verfügbaren Speicherorte anzeigen, indem Sie zuerst den folgenden Befehl ausführen:
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 ..." && readDie Befehle fordern Sie zur Eingabe folgender Informationen auf. Geben Sie jeden Wert an, und wählen Sie die EINGABETASTE aus.
Parameter BESCHREIBUNG Projektname Der Wert dieses Parameters wird verwendet, um eine Ressourcengruppe für alle Ressourcen zu erstellen. Am Ende des Werts für Ihren Ressourcengruppennamen wird die Zeichenfolge „ rg“ hinzugefügt.Standort. Bei diesem Wert handelt es sich um die Region, in der alle Ressourcen erstellt werden. iotHubName Geben Sie einen Namen für den IoT-Hub ein, der innerhalb des .azure-devices.net-Namespace global eindeutig sein muss. Sie benötigen den Hubnamen im nächsten Abschnitt beim Überprüfen der Bereitstellung. provisioningServiceName Geben Sie einen Namen für die neue DPS-Ressource (Device Provisioning Service) ein. Der Name muss innerhalb des Namespace .azure-devices-provisioning.net global eindeutig sein. Sie benötigen den DPS-Namen im nächsten Abschnitt beim Überprüfen der Bereitstellung. Die Azure-Befehlszeilenschnittstelle wird verwendet, um die Vorlage bereitzustellen. Neben der Azure CLI können Sie auch Azure PowerShell, das Azure-Portal und die REST-API verwenden. Informationen zu anderen Bereitstellungsmethoden finden Sie unter Bereitstellen von Vorlagen.
Überprüfen der bereitgestellten Ressourcen
Um die Bereitstellung zu überprüfen, führen Sie den folgenden Az-Ressourcenlistenbefehl aus, um Ressourcen aufzulisten und in der Ausgabe nach dem neuen Bereitstellungsdienst und dem IoT-Hub zu suchen:
az resource list -g "${projectName}rg"Um zu überprüfen, ob der Hub bereits mit der DPS-Ressource verknüpft ist, führen Sie den folgenden Befehl "az iot dps show " aus.
az iot dps show --name <Your provisioningServiceName>Beachten Sie die Hubs, die mit dem Element
iotHubsverknüpft sind.
Bereinigen von Ressourcen
Andere Schnellstarts in dieser Sammlung bauen auf diesem Schnellstart auf. Wenn Sie mit den nachfolgenden Schnellstarts oder mit den Tutorials fortfahren möchten, löschen Sie nicht die Ressourcen, die in diesem Schnellstart erstellt wurden. Wenn Sie den Vorgang nicht fortsetzen möchten, können Sie die Ressourcengruppe und alle zugehörigen Ressourcen über das Azure-Portal oder die Azure CLI löschen.
Wenn Sie eine Ressourcengruppe und alle zugehörigen Ressourcen aus dem Azure-Portal löschen möchten, öffnen Sie einfach die Ressourcengruppe, und wählen Sie oben " Ressourcengruppe löschen" aus.
Um die mithilfe der Azure CLI bereitgestellte Ressourcengruppe zu löschen, gehen Sie wie folgt vor:
az group delete --name "${projectName}rg"
Sie können auch Ressourcengruppen und einzelne Ressourcen mit einer der folgenden Optionen löschen:
- Azure-Portal
- PowerShell
- REST-APIs
- Unterstützte Plattform-SDKs, die für Azure Resource Manager oder IoT Hub Device Provisioning Service veröffentlicht wurden
Nächste Schritte
In diesem Schnellstart haben Sie einen IoT-Hub und eine Device Provisioning Service-Instanz bereitgestellt sowie die beiden Ressourcen verknüpft. Im Schnellstart zum Erstellen eines Geräts erfahren Sie, wie Sie diese Konfiguration zum Bereitstellen eines Geräts verwenden.