Share via


Schnellstart: Einrichten des IoT Hub Device Provisioning Service (DPS) mit Bicep

Sie können mithilfe einer Bicep-Datei die Azure-Cloudressourcen programmgesteuert einrichten, die zum Bereitstellen Ihrer Geräte erforderlich sind. In diesen Schritten wird gezeigt, wie Sie mithilfe einer Bicep-Datei einen IoT-Hub und eine neue Instanz von IoT Hub Device Provisioning Service erstellen. Außerdem wird der IoT Hub mithilfe der Bicep-Datei 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.

Bicep ist eine domänenspezifische Sprache (Domain-Specific Language, DSL), die eine deklarative Syntax zur Bereitstellung von Azure-Ressourcen verwendet. Sie bietet eine präzise Syntax, zuverlässige Typsicherheit und Unterstützung für die Wiederverwendung von Code. Bicep bietet die beste Form der Erstellung für Ihre Infrastructure-as-Code-Lösungen in Azure.

In diesem Schnellstart werden Azure PowerShell und die Azure CLI verwendet, um die erforderlichen programmgesteuerten Schritte zum Erstellen einer Ressourcengruppe und Bereitstellen der Bicep-Datei auszuführen. Sie können aber auch problemlos .NET, Ruby oder andere Programmiersprachen verwenden, um diese Schritte auszuführen und Ihre Bicep-Datei bereitzustellen.

Voraussetzungen

Sollten Sie über kein Azure-Abonnement verfügen, können Sie zunächst ein kostenloses Azure-Konto erstellen.

  • Verwenden Sie die Bash-Umgebung in Azure Cloud Shell. Weitere Informationen finden Sie unter Schnellstart für Bash in 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. Informationen zu anderen Anmeldeoptionen finden Sie unter Anmelden mit 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 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 Bicep-Datei

Die in dieser Schnellstartanleitung verwendete Bicep-Datei stammt aus den Azure-Schnellstartvorlagen.

Hinweis

Zurzeit gibt es keine Unterstützung für Bicep-Dateien zum Erstellen von Registrierungen mit neuen DPS-Ressourcen. Dies wird häufig angefragt und ist uns bewusst. Eine entsprechende Implementierung wird derzeit erwogen.

@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
      }
    ]
  }
}

In der vorstehenden Bicep-Datei sind zwei Azure-Ressourcen definiert:

Speichern Sie eine Kopie der Bicep-Datei lokal als main.bicep.

Bereitstellen der Bicep-Datei

Melden Sie sich bei Ihrem Azure-Konto an, und wählen Sie Ihr Abonnement aus.

  1. Melden Sie sich in Azure an der Eingabeaufforderung an:

    az login
    

    Befolgen Sie die Anweisungen zur Authentifizierung mit dem Code, und melden Sie sich in einem Webbrowser bei Ihrem Azure-Konto an.

  2. 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.

    az account list -o table
    

    Mit dem folgenden Befehl können Sie das Abonnement auswählen, das Sie zum Ausführen der Befehle für die Erstellung Ihres IoT-Hubs und Ihrer DPS-Ressourcen verwenden möchten. 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}
    
  3. Stellen Sie die Bicep-Datei mit den folgenden Befehlen bereit.

    Tipp

    Von den Befehlen werden Sie zur Eingabe eines Ressourcengruppenstandorts aufgefordert. Sie können zuerst den folgenden Befehl ausführen, um eine Liste der verfügbaren Standorte anzuzeigen:

    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}
    

    Ersetzen Sie {IoT-Hub-name} durch einen global eindeutigen IoT Hub-Namen und {DPS-name} durch einen global eindeutigen Device Provisioning Service (DPS)-Ressourcennamen.

    Es dauert einen Moment, bis die Ressourcen erstellt sind.

Überprüfen der bereitgestellten Ressourcen

  1. Führen Sie zum Überprüfen der Bereitstellung den folgenden Befehl aus, und suchen Sie in der Ausgabe nach dem neuen Bereitstellungsdienst und dem IoT-Hub:

     az resource list -g exampleRg
    
  2. Führen Sie den folgenden Befehl aus, um sich zu vergewissern, dass der Hub mit der DPS-Ressource bereits verknüpft ist.

    az iot dps show --name <Your provisioningServiceName>
    

Bereinigen von Ressourcen

Andere Schnellstarts in dieser Sammlung bauen auf diesem Schnellstart auf. Wenn Sie mit den nachfolgenden Schnellstarts oder mit den Tutorials weiterarbeiten möchten, bereinigen Sie nicht die in diesem Schnellstart erstellten Ressourcen. Wenn Sie den Vorgang nicht fortsetzen möchten, können Sie die Ressourcengruppe und alle zugehörigen Ressourcen über Azure PowerShell oder die Azure CLI löschen.

Wenn Sie eine Ressourcengruppe und alle zugehörigen Ressourcen über das Azure-Portal löschen möchten, öffnen Sie einfach die Ressourcengruppe, und wählen Sie im oberen Bereich Ressourcengruppe löschen aus.

So löschen Sie die bereitgestellte Ressourcengruppe:

az group delete --name exampleRG

Sie können auch Ressourcengruppen und einzelne Ressourcen über das Azure-Portal, PowerShell oder REST-APIs oder aber mit unterstützten Plattform-SDKs löschen.

Nächste Schritte

In diesem Schnellstart haben Sie einen IoT-Hub und eine Device Provisioning Service-Instanz bereitgestellt sowie die beiden Ressourcen verknüpft. In der Schnellstartanleitung zur Geräteerstellung erfahren Sie, wie Sie diese Einrichtung zum Bereitstellen eines Geräts verwenden.