Aktualisieren von IoT Edge
Gilt für: IoT Edge 1.5 IoT Edge 1.4
Wichtig
IoT Edge 1.5 LTS und IoT Edge 1.4 LTS sind unterstützte Releases. Das Ende der Lebensdauer von IoT Edge 1.4 LTS wird am 12. November 2024 erreicht.
Wenn neue Versionen des IoT Edge-Diensts veröffentlicht werden, aktualisieren Sie Ihre IoT Edge-Geräte, damit sie über die neuesten Funktionen und Sicherheitsverbesserungen verfügen. Dieser Artikel enthält Informationen zum Aktualisieren Ihrer IoT Edge-Geräte, wenn eine neue Version verfügbar ist.
Zwei logische Komponenten eines IoT Edge-Geräts müssen bei der Umstellung auf eine neuere Version aktualisiert werden.
Sicherheitssubsystem: Es wird auf dem Gerät ausgeführt, verarbeitet sicherheitsbasierte Aufgaben und startet die Module, wenn das Gerät gestartet wird. Das Sicherheitssubsystem kann nur vom Gerät selbst aktualisiert werden.
IoT Edge-Runtime: Die IoT Edge-Runtime besteht aus dem IoT Edge-Hub-Modul (
edgeHub
) und dem IoT Edge-Agent-Modul (edgeAgent
). Je nachdem, wie Ihre Bereitstellung strukturiert ist, kann die Runtime vom Gerät oder remote aktualisiert werden.
Durchführen der Aktualisierung
Verwenden Sie die Abschnitte dieses Artikels, um sowohl das Sicherheitssubsystem als auch die Runtimecontainer auf einem Gerät zu aktualisieren.
Patchreleases
Wenn Sie ein Upgrade zwischen Patchreleases durchführen, z. B. von 1.4.1 auf 1.4.2, ist die Updatereihenfolge nicht wichtig. Sie können das Sicherheitssubsystem oder die Runtimecontainer vor oder nach der jeweils anderen Komponente aktualisieren. So aktualisieren Sie zwischen Patchreleases
- Aktualisieren des Sicherheitssubsystems
- Aktualisieren der Runtimecontainer
- Überprüfen der Versionsübereinstimmung
Sie können jederzeit eine Problembehandlung für den Upgradevorgang durchführen.
Haupt- oder Nebenversionen
Wenn Sie ein Upgrade zwischen Haupt- oder Nebenversionen durchführen, z. B. von 1.4 auf 1.5, aktualisieren Sie sowohl das Sicherheitssubsystem als auch die Runtimecontainer. Vor einem Release testen wir die Kombination aus Sicherheitssubsystem und Runtimecontainer. So führen Sie eine Aktualisierung zwischen Haupt- oder Nebenversionen von Produkten aus
Beenden Sie IoT Edge auf dem Gerät mithilfe des Befehls
sudo systemctl stop iotedge
, und deinstallieren Sie den Dienst.Aktualisieren Sie auf dem Gerät die Containerengine, entweder Docker oder Moby.
Installieren Sie IoT Edge auf dem Gerät.
Wenn Sie eine alte Konfiguration mit
iotedge config import
importieren, ändern Sie das Image [agent.config] der generierten Datei/etc/aziot/config.toml
, um das 1.4-Image für edgeAgent zu verwenden.Weitere Informationen finden Sie unter Konfigurieren der IoT Edge-Geräteeinstellungen.
Aktualisieren Sie in IoT Hub die Modulbereitstellung, um auf die neuesten Systemmodule zu verweisen.
Starten Sie auf dem Gerät IoT Edge mithilfe von
sudo iotedge config apply
.
Sie können jederzeit eine Problembehandlung für den Upgradevorgang durchführen.
Aktualisieren des Sicherheitssubsystems
Das IoT Edge-Sicherheitssubsystem enthält eine Gruppe von nativen Komponenten, die auf dem IoT Edge-Gerät mithilfe des Paket-Managers aktualisiert werden müssen.
Überprüfen Sie die Version des auf Ihrem Gerät ausgeführten Sicherheitssubsystems mithilfe des Befehls iotedge version
. Wenn Sie IoT Edge für Linux unter Windows verwenden, müssen Sie eine SSH-Verbindung mit dem virtuellen Linux-Computer erstellen, um die Version zu überprüfen.
Verwenden Sie auf Linux x64-Geräten apt-get
oder einen geeigneten Paket-Manager, um das Sicherheitssubsystem auf die neueste Version zu aktualisieren.
Aktualisieren Sie apt
:
sudo apt-get update
Hinweis
Anleitungen zum Herunterladen der neuesten Repositorykonfiguration von Microsoft finden Sie in den vorbereitenden Schritten zum Installieren von IoT Edge.
Überprüfen Sie, welche IoT Edge-Versionen verfügbar sind:
apt list -a aziot-edge
Aktualisieren Sie IoT Edge:
sudo apt-get install aziot-edge
Durch das Ausführen von apt-get install aziot-edge
wird das Sicherheitssubsystem aktualisiert und der Identitätsdienst (aziot-identity-service
) als erforderliche Abhängigkeit installiert.
Wenden Sie dann die Konfiguration erneut an, um sicherzustellen, dass das System vollständig aktualisiert wird.
sudo iotedge config apply
Aktualisieren der Runtimecontainer
Die Art, auf die Sie die IoT Edge-Agent- und IoT Edge-Hubcontainer aktualisieren, hängt davon ab, ob Sie bei der Bereitstellung fortlaufende Versionstags (wie 1.5) oder spezifische Versionstags (wie 1.5.1) verwenden.
Überprüfen Sie die Version der aktuell auf Ihrem Gerät ausgeführten IoT Edge-Agent- und IoT Edge-Hubmodule mithilfe der Befehle iotedge logs edgeAgent
und iotedge logs edgeHub
. Wenn Sie IoT Edge für Linux unter Windows verwenden, müssen Sie eine SSH-Verbindung mit dem virtuellen Linux-Computer erstellen, um die Versionen des Runtimemoduls zu überprüfen.
Grundlagen von IoT Edge-Tags
Die IoT Edge-Agent- und IoT Edge-Hubimages sind im Tag mit der IoT Edge-Version gekennzeichnet, der sie zugeordnet sind. Es gibt zwei Möglichkeiten zum Verwenden von Tags mit den Runtime-Images:
Fortlaufende Tags: Verwenden Sie nur die ersten zwei Stellen der Versionsnummer, um zum neuesten Image zu gelangen, das mit diesen Stellen übereinstimmt. Sobald eine neue Version veröffentlicht wird, wird 1.5 beispielsweise immer so aktualisiert, dass auf die neueste 1.5.x-Version verwiesen wird. Wenn die Containerruntime auf Ihrem IoT Edge-Gerät das Image erneut per Pull herunterlädt, werden die Laufzeitmodule auf die neueste Version aktualisiert. Bereitstellungen aus dem Azure-Portal weisen standardmäßig fortlaufende Tags auf. Dieses Vorgehen wird für Entwicklungszwecke vorgeschlagen.
Spezifische Tags: Verwenden Sie alle drei Stellen der Versionsnummer, um die Imageversion explizit festzulegen. Beispielsweise ändert sich 1.5.0 nach dem ersten Release nicht. Sie können im Bereitstellungsmanifest eine neue Versionsnummer deklarieren, wenn Sie zur Aktualisierung bereit sind. Dieses Vorgehen wird für Produktionszwecke vorgeschlagen.
Aktualisieren eines Images mit fortlaufendem Tag
Wenn Sie in Ihrer Bereitstellung fortlaufende Tags verwenden (Beispiel: mcr.microsoft.com/azureiotedge-hub:1.5), müssen Sie die Containerruntime auf Ihrem Gerät dazu zwingen, per Pull die neueste Version des Images zu laden.
Löschen Sie die lokale Version des Images von Ihrem IoT Edge-Gerät. Auf Windows-Computern werden bei der Deinstallation des Sicherheitssubsystems auch die Runtimeimages entfernt, sodass Sie diesen Schritt nicht erneut ausführen müssen.
docker rmi mcr.microsoft.com/azureiotedge-hub:1.5
docker rmi mcr.microsoft.com/azureiotedge-agent:1.5
Möglicherweise müssen Sie das force-Flag -f
verwenden, um die Images zu entfernen.
Der IoT Edge-Dienst pullt die neuesten Versionen der Runtimeimages und startet sie automatisch wieder auf Ihrem Gerät.
Aktualisieren eines Images mit spezifischem Tag
Wenn Sie bei der Bereitstellung spezifische Tags verwenden (z. B. mcr.microsoft.com/azureiotedge-hub:1.4), müssen Sie lediglich das Tag in Ihrem Bereitstellungsmanifest aktualisieren und die Änderungen auf Ihr Gerät anwenden.
Wählen Sie Ihr IoT Edge-Gerät im IoT-Hub im Azure-Portal aus, und klicken Sie dann auf Module festlegen.
Wählen Sie auf der Registerkarte Module die Option Laufzeiteinstellungen aus.
Ändern Sie in den Laufzeiteinstellungen den Wert Image-URI im Abschnitt Edge-Agent in die gewünschte Version. Beispiel:
mcr.microsoft.com/azureiotedge-agent:1.5
. Wählen Sie noch nicht Übernehmen aus.Wählen Sie die Registerkarte Edge-Hub aus, und aktualisieren Sie den Wert Image-URI mit derselben gewünschten Version. Beispiel:
mcr.microsoft.com/azureiotedge-hub:1.5
.Wählen Sie Übernehmen aus, um Änderungen zu speichern.
Wählen Sie Überprüfen und erstellen aus, überprüfen Sie die Bereitstellung, wie in der JSON-Datei gezeigt, und wählen Sie Erstellen aus.
Aktualisieren von Partnermodul-URIs
Wenn Sie Partnermodule verwenden, aktualisieren Sie Ihre Modulbereitstellungen mit den von den Partnern bereitgestellten Image-URIs. Wenden Sie sich an den Herausgeber des IoT Edge-Moduls, um den aktualisierten Containerimage-URI zu erhalten. Aktualisieren Sie die Gerätekonfigurationen mit dem neuen Image-URI vom Herausgeber.
- Melden Sie sich beim Azure-Portal an, und navigieren Sie zu Ihrer IoT Hub-Instanz.
- Wählen Sie im linken Bereich unter dem Geräteverwaltung-Menü die Option Geräte aus.
- Wählen Sie in der Liste das IoT Edge-Gerät aus, das das Partnermodul verwendet.
- Wählen Sie in der oberen Leiste Module festlegen aus.
- Wählen Sie das IoT Edge-Partnermodul aus, das Sie mit dem neuen Image-URI aktualisieren möchten.
- Aktualisieren Sie den Wert Image-URI mit dem neuen Image-URI vom Herausgeber.
- Wählen Sie Übernehmen aus, um Änderungen zu speichern.
- Wählen Sie Überprüfen und erstellen aus, überprüfen Sie die Bereitstellung, wie in der JSON-Datei gezeigt, und wählen Sie Erstellen aus.
Überprüfen der Versionsübereinstimmung
Verwenden Sie
iotedge version
auf Ihrem Gerät, um die Version des Sicherheitssubsystems zu überprüfen. Die Ausgabe enthält die Nummern der Haupt-, Neben- und Revisionsversion. Beispiel: iotedge 1.4.2.Überprüfen Sie in den Runtimeeinstellungen der Gerätebereitstellung, ob Image-URI-Versionen edgeHub und edgeAgent mit der Haupt- und Nebenversion des Sicherheitssubsystems übereinstimmen. Wenn die Version des Sicherheitssubsystems 1.4.2 lautet, wird für die Imageversionen 1.4 verwenden. Beispiel: mcr.microsoft.com/azureiotedge-hub:1.4 und mcr.microsoft.com/azureiotedge-agent:1.4.
Hinweis
Aktualisieren Sie das IoT Edge-Sicherheitssubsystem und die Runtimecontainer auf dieselbe unterstützte Releaseversion. Obwohl nicht übereinstimmende Versionen unterstützt werden, haben wir nicht alle Versionskombinationen getestet.
Informationen zur neuesten Version von Azure IoT Edge finden Sie unter Azure IoT Edge releases (Azure IoT Edge-Versionen).
Problembehandlung
Sie können Protokolle Ihres Systems jederzeit anzeigen, indem Sie die folgenden Befehle auf Ihrem Gerät aus ausführen.
Beginnen Sie mithilfe des check-Befehls mit der Problembehandlung. Er führt verschiedene Konfigurations- und Verbindungstests für allgemeine Probleme aus.
sudo iotedge check --verbose
Führen Sie zum Anzeigen des Status des IoT Edge-Systems Folgendes aus:
sudo iotedge system status
Führen Sie Folgendes aus, um Hostkomponentenprotokolle anzuzeigen:
sudo iotedge system logs
Führen Sie Folgendes aus, um nach wiederkehrenden Problemen mit edgeAgent und edgeHub zu suchen:
Ersetzen Sie
<module>
unbedingt durch Ihren eigenen Modulnamen. Wenn keine Probleme auftreten, wird keine Ausgabe angezeigt.sudo iotedge logs <module>
Weitere Informationen finden Sie unter Behandeln von Problemen bei Ihrem IoT Edge-Gerät.
Nächste Schritte
Zeigen Sie die neuesten Azure IoT Edge releases (Azure IoT Edge-Versionen) an.
Bleiben Sie mit den neuesten Updates und Ankündigungen im Internet of Things-Blog auf dem Laufenden.