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.
Gilt für: IoT Edge 1.5
Wichtig
IoT Edge 1.5 LTS ist das unterstützte Release. IoT Edge 1.4 LTS wurde am 12. November 2024 eingestellt. Wenn Sie ein früheres Release verwenden, finden Sie weitere Informationen unter Aktualisieren von IoT Edge.
Nachdem Sie Azure IoT Edge-Module mit Ihrer Geschäftslogik erstellt haben, stellen Sie sie auf Ihren Geräten bereit, um am Edge zu arbeiten. Wenn mehrere Module zusammenarbeiten, um Daten zu sammeln und zu verarbeiten, stellen Sie sie alle gleichzeitig bereit. Deklarieren Sie auch die Routingregeln, die sie verbinden.
Azure CLI ist ein plattformübergreifendes Open Source-Befehlszeilentool zum Verwalten von Azure-Ressourcen wie IoT Edge. Sie können Azure IoT Hub-Ressourcen, Gerätebereitstellungsdienstinstanzen und verknüpfte Hubs sofort verwalten. Die neue IoT-Erweiterung erweitert Azure CLI mit Features wie Geräteverwaltung und vollständigen IoT Edge-Funktionen.
In diesem Artikel wird erläutert, wie Sie ein JSON-Bereitstellungsmanifest erstellen und diese Datei verwenden, um die Bereitstellung an ein IoT Edge-Gerät zu übertragen. Informationen zum Erstellen einer Bereitstellung für mehrere Geräte – basierend auf deren freigegebenen Tags – finden Sie unter Deploy and monitor IoT Edge modules at scale (Bereitstellen und Überwachen von IoT Edge-Modulen im großen Maßstab).
Voraussetzungen
Ein IoT Hub in Ihrem Azure-Abonnement.
Ein IoT Edge Gerät
Wenn Sie kein IoT Edge-Gerät eingerichtet haben, erstellen Sie ein Gerät auf einem virtuellen Azure-Computer. Führen Sie die Schritte in einem der Schnellstartartikel aus, um ein virtuelles Linux-Gerät zu erstellen oder ein virtuelles Windows-Gerät zu erstellen.
Die Azure CLI ist in Ihrer Umgebung vorhanden. Ihre Azure CLI-Version muss 2.0.70 oder höher sein. Verwenden Sie
az --version
, um zu überprüfen. Diese Version unterstützt az-Erweiterungsbefehle und verwendet das Knack-Befehlsframework.
Konfigurieren eines Bereitstellungsmanifests
Ein Bereitstellungsmanifest ist ein JSON-Dokument, das beschreibt, welche Module bereitgestellt werden sollen, wie Daten zwischen den Modulen übermittelt werden und welche Eigenschaften die Modulzwillinge aufweisen sollen. Weitere Informationen zur Funktionsweise von Bereitstellungsmanifesten und deren Erstellung finden Sie unter "Verstehen, wie IoT Edge-Module verwendet, konfiguriert und wiederverwendet werden können".
Wenn Sie Module mithilfe der Azure CLI bereitstellen möchten, speichern Sie das Bereitstellungsmanifest lokal als JSON-Datei. Verwenden Sie den Dateipfad im nächsten Abschnitt, um den Befehl auszuführen und die Konfiguration auf Ihr Gerät anzuwenden.
Hier ist ein einfaches Bereitstellungsmanifest mit einem Modul als Beispiel:
Hinweis
In diesem Beispielbereitstellungsmanifest wird die Schemaversion 1.1 für den IoT Edge-Agent und den Hub verwendet. Schemaversion 1.1 ist in IoT Edge Version 1.0.10 enthalten und ermöglicht Features wie Modulstartreihenfolge und Routenpriorisierung.
{
"content": {
"modulesContent": {
"$edgeAgent": {
"properties.desired": {
"schemaVersion": "1.1",
"runtime": {
"type": "docker",
"settings": {
"minDockerVersion": "v1.25",
"loggingOptions": "",
"registryCredentials": {}
}
},
"systemModules": {
"edgeAgent": {
"type": "docker",
"settings": {
"image": "mcr.microsoft.com/azureiotedge-agent:1.5",
"createOptions": "{}"
}
},
"edgeHub": {
"type": "docker",
"status": "running",
"restartPolicy": "always",
"settings": {
"image": "mcr.microsoft.com/azureiotedge-hub:1.5",
"createOptions": "{\"HostConfig\":{\"PortBindings\":{\"5671/tcp\":[{\"HostPort\":\"5671\"}],\"8883/tcp\":[{\"HostPort\":\"8883\"}],\"443/tcp\":[{\"HostPort\":\"443\"}]}}}"
}
}
},
"modules": {
"SimulatedTemperatureSensor": {
"version": "1.0",
"type": "docker",
"status": "running",
"restartPolicy": "always",
"settings": {
"image": "mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:1.5",
"createOptions": "{}"
}
}
}
}
},
"$edgeHub": {
"properties.desired": {
"schemaVersion": "1.1",
"routes": {
"upstream": "FROM /messages/* INTO $upstream"
},
"storeAndForwardConfiguration": {
"timeToLiveSecs": 7200
}
}
},
"SimulatedTemperatureSensor": {
"properties.desired": {
"SendData": true,
"SendInterval": 5
}
}
}
}
}
Bereitstellen auf Ihrem Gerät
Zur Bereitstellung von Modulen auf Ihrem Gerät wenden Sie das Bereitstellungsmanifest an, das Sie mit den Modulinformationen konfiguriert haben.
Wechseln Sie in den Ordner, in dem Sie das Bereitstellungsmanifest gespeichert haben. Wenn Sie eine der IoT Edge-Vorlagen für Visual Studio Code verwendet haben, verwenden Sie die Datei deployment.json
im Ordner config im Projektmappenverzeichnis und nicht die Datei deployment.template.json
.
Wenden Sie die Konfiguration mit dem folgenden Befehl auf ein IoT Edge-Gerät an:
az iot edge set-modules --device-id [device id] --hub-name [hub name] --content [file path]
Beim Parameter für die Geräte-ID wird die Groß-/Kleinschreibung berücksichtigt. Der content-Parameter verweist auf die gespeicherte Bereitstellungsmanifestdatei.
Anzeigen von Modulen auf dem Gerät
Nachdem Sie die Module auf Ihrem Gerät bereitgestellt haben, können Sie sie mit dem folgenden Befehl anzeigen:
Zeigen Sie die Module auf Ihrem IoT Edge-Gerät an:
az iot hub module-identity list --device-id [device id] --hub-name [hub name]
Beim Parameter für die Geräte-ID wird die Groß-/Kleinschreibung berücksichtigt.
Nächste Schritte
Erfahren Sie, wie Sie IoT Edge-Module im großen Maßstab bereitstellen und überwachen.