Freigeben über


Tutorial: Device Update for Azure IoT Hub mit dem Paket-Agent unter Ubuntu Server 22.04 x64

Device Update for Azure IoT Hub unterstützt image-, paket- und skriptbasierte Updates.

Paketbasierte Updates sind gezielte Updates, die nur eine bestimmte Komponente oder Anwendung auf dem Gerät ändern. Dies führt zu einem geringeren Verbrauch an Bandbreite und verkürzt die Zeit zum Herunterladen und Installieren des Updates. Paketbasierte Updates ermöglichen normalerweise auch eine geringere Ausfallzeit von Geräten, wenn Sie ein Update anwenden, und sie vermeiden den Mehraufwand beim Erstellen von Images. Sie verwenden ein APT-Manifest, das dem Device Update-Agent die Informationen liefert, die er benötigt, um die in der APT-Manifestdatei angegebenen Pakete (und deren Abhängigkeiten) aus einem bestimmten Repository herunterzuladen und zu installieren.

In diesem Tutorial werden Sie durch das Aktualisieren von Azure IoT Edge unter Ubuntu Server 22.04 x64 mithilfe des Device Update-Paket-Agents geführt. Obwohl das Lernprogramm die Installation von Microsoft Defender für IoT veranschaulicht, können Sie mit ähnlichen Schritten andere Pakete aktualisieren, z. B. das IoT Edge selbst oder das verwendete Containermodul.

Die Tools und Konzepte in diesem Tutorial gelten weiterhin, auch wenn Sie beabsichtigen, eine andere Konfiguration der Betriebssystemplattform zu verwenden. Schließen Sie diese Einführung in einen End-to-End-Updateprozess ab. Wählen Sie dann Ihre bevorzugte Form der Aktualisierung einer Betriebssystemplattform aus, um die Details zu erfahren.

In diesem Tutorial lernen Sie Folgendes:

  • Herunterladen und Installieren des Device Update-Agents und seiner Abhängigkeiten
  • Hinzufügen eines Tags zu Ihrem Gerät
  • Importieren eines Updates
  • Bereitstellen eines Paketupdates
  • Überwachen der Updatebereitstellung

Voraussetzungen

Vorbereiten eines Geräts

Verwenden der Schaltfläche „Automatisierte Bereitstellung in Azure“

Der Einfachheit halber wird in diesem Tutorial eine Cloud-Init-basierte Azure Resource Manager-Vorlage verwendet, mit der Sie schnell einen virtuellen Computer mit Ubuntu 22.04 LTS einrichten können. Sie installiert sowohl die Azure IoT Edge-Runtime als auch den Device Update-Paket-Agent. Anschließend konfiguriert sie das Gerät automatisch mit Bereitstellungsinformationen, wobei sie die Geräteverbindungszeichenfolge für ein von Ihnen angegebenes IoT Edge-Gerät (Voraussetzung) verwendet. Bei Verwendung der Resource Manager-Vorlage muss außerdem keine SSH-Sitzung gestartet werden, um das Setup abzuschließen.

  1. Wählen Sie zuerst die Schaltfläche aus:

    Schaltfläche „In Azure bereitstellen“ für „iotedge-vm-deploy“.

  2. Füllen Sie die verfügbaren Textfelder aus:

    • Abonnement: Das aktive Azure-Abonnement, in dem der virtuelle Computer bereitgestellt werden soll.
    • Ressourcengruppe: Eine vorhandene oder neu erstellte Ressourcengruppe, die den virtuellen Computer und die ihm zugeordneten Ressourcen enthalten soll.
    • Region: Die geografische Region, in der der virtuelle Computer bereitgestellt werden soll. Dieser Wert ist standardmäßig der Speicherort der ausgewählten Ressourcengruppe.
    • Präfix der DNS-Bezeichnung: Ein erforderlicher Wert Ihrer Wahl, der dem Hostnamen des virtuellen Computers vorangestellt wird.
    • Administratorbenutzername: Ein Benutzername, der Rootberechtigungen für die Bereitstellung erhält.
    • Geräte-Verbindungszeichenfolge: Eine Geräte-Verbindungszeichenfolge für ein Gerät, das in Ihrem vorgesehenen IoT-Hub erstellt wurde.
    • VM-Größe: Die Größe des bereitzustellenden virtuellen Computers.
    • Ubuntu-Betriebssystemversion: Die Version des Ubuntu-Betriebssystems, die auf dem virtuellen Basiscomputer installiert werden soll. Behalten Sie den Standardwert bei, weil er bereits auf „Ubuntu 22.04-LTS“ festgelegt wurde.
    • Authentifizierungstyp: Wählen Sie sshPublicKey oder ein Kennwort entsprechend Ihren Anforderungen aus.
    • Administratorkennwort oder Schlüssel: Der Wert des öffentlichen SSH-Schlüssels oder der Wert des Kennworts, basierend auf der Wahl des Authentifizierungstyps.

    Nachdem alle Felder ausgefüllt wurden, aktivieren Sie das Kontrollkästchen unten auf der Seite, um die Bedingungen zu akzeptieren. Wählen Sie Kaufen aus, um mit der Bereitstellung zu beginnen.

  3. Überprüfen Sie, ob die Bereitstellung erfolgreich abgeschlossen wurde. Warten Sie nach Beendigung der Bereitstellung einige Minuten, bis die Nachinstallation und die Konfiguration abgeschlossen sind, bevor Sie IoT Edge und den Device Update-Paket-Agent installieren.

    In der ausgewählten Ressourcengruppe sollte eine VM-Ressource bereitgestellt sein. Notieren Sie sich den Computernamen, der das Format vm-0000000000000 hat. Notieren Sie sich auch den zugeordneten DNS-Namen, der das Format „<dnsLabelPrefix>.<location>.cloudapp.azure.com“ hat.

    Sie können den DNS-Namen im Azure-Portal aus dem Abschnitt Übersicht des neu bereitgestellten virtuellen Computers abrufen.

    Screenshot mit dem DNS-Namen der IoT Edge-VM

    Tipp

    Wenn Sie nach dem Setup eine SSH-Verbindung mit dieser VM herstellen möchten, verwenden Sie den zugeordneten DNS-Namen mit folgendem Befehl: ssh <adminUsername>@<DNS_Name>.

  4. Installieren Sie den Device Update-Agent auf dem Gerät.

    sudo apt-get install deviceupdate-agent
    
  5. Öffnen Sie die Konfigurationsdetails (Weitere Informationen zum Einrichten der Konfigurationsdatei finden Sie hier mit dem folgenden Befehl. Legen Sie Ihren connectionType als "AIS" und "connectionData" als leere Zeichenfolge fest. Bitte beachten Sie, dass alle Werte mit dem Tag „Wert hier platzieren“ festgelegt werden müssen. Siehe Konfigurieren eines Geräteupdate-Agents.

    sudo nano /etc/adu/du-config.json
    
  6. Starten Sie den Device Update-Agent neu.

    sudo systemctl restart deviceupdate-agent
    

Softwarepakete von Device Update for Azure IoT Hub unterliegen den folgenden Lizenzbedingungen:

Lesen Sie die Lizenzbedingungen, bevor Sie ein Paket verwenden. Durch Ihre Installation und Verwendung eines Pakets erklären Sie Ihre Zustimmung zu diesen Bedingungen. Wenn Sie den Lizenzbedingungen nicht zustimmen, verwenden Sie das Paket nicht.

Hinzufügen eines Tags zu Ihrem Gerät

  1. Melden Sie sich beim Azure-Portal an, und navigieren Sie zum IoT-Hub.

  2. Suchen Sie im linken Bereich unter Geräte nach Ihrem IoT Edge-Gerät, und wechseln Sie zum Geräte- oder Modulzwilling.

  3. Löschen Sie im Modulzwilling des Device Update-Agent-Moduls alle vorhandenen Device Update-Tagwerte, indem Sie sie auf „NULL“ festlegen. Wenn Sie beim Device Update-Agent die Geräteidentität verwenden, nehmen Sie diese Änderungen im Gerätezwilling vor.

  4. Fügen Sie wie hier gezeigt einen neuen Device Update-Tagwert hinzu:

        "tags": {
            "ADUGroup": "<CustomTagValue>"
        },
    

    Screenshot eines digitalen Zwillings mit Taginformationen

    Dieser Screenshot zeigt den Abschnitt, in dem das Tag dem Zwilling hinzugefügt werden muss.

Importieren des Updates

  1. Wechseln Sie in GitHub zu Device Update-Releases, und wählen Sie die Dropdownliste Ressourcen aus. Laden Sie die Datei Tutorial_IoTEdge_PackageUpdate.zip herunter, indem Sie sie auswählen. Extrahieren Sie den Inhalt des Ordners, um ein APT-Beispielmanifest (sample-defender-iot-apt-manifest.json) und das entsprechende Importmanifest (sample-defender-iot--importManifest.json) zu ermitteln.

  2. Melden Sie sich beim Azure-Portal an, und navigieren Sie zu Ihrem IoT-Hub mit Device Update. Wählen Sie im linken Bereich unter Automatische Geräteverwaltung die Option Updates aus.

  3. Wählen Sie die Registerkarte Updates aus.

  4. Wählen Sie + Neues Update importieren aus.

  5. Klicken Sie auf + Aus Speichercontainer auswählen. Wählen Sie ein vorhandenes Konto aus, oder erstellen Sie über die Option + Speicherkonto ein neues. Wählen Sie dann einen vorhandenen Container aus, oder erstellen Sie mithilfe von + Container einen neuen. Dieser Container wird zum Stagen Ihrer Updatedateien für den Import verwendet.

    Hinweis

    Es wird empfohlen, bei jedem Import eines Updates einen neuen Container zu verwenden, um zu vermeiden, dass versehentlich Dateien aus früheren Updates importiert werden. Wenn Sie keinen neuen Container verwenden, müssen Sie vor diesem Schritt alle Dateien aus dem vorhandenen Container löschen.

    Screenshot: Seite „Speicherkonto“.

  6. Wählen Sie in Ihrem Container Hochladen aus, und wechseln Sie zu den in Schritt 1 heruntergeladenen Dateien. Nachdem Sie alle Updatedateien ausgewählt haben, wählen Sie Hochladen aus. Klicken Sie dann auf die Schaltfläche Auswählen, um zur Seite Update importieren zurückzukehren.

    Screenshot: Auswählen hochgeladener Dateien.

    Dieser Screenshot veranschaulicht den Importschritt. Dateinamen stimmen möglicherweise nicht mit denen überein, die im Beispiel verwendet werden.

  7. Überprüfen Sie auf der Seite Update importieren die zu importierenden Dateien. Klicken Sie dann auf Update importieren, um den Importvorgang zu starten.

    Screenshot: Starten der Wiederherstellung.

  8. Der Importvorgang beginnt, und auf dem Bildschirm wird der Abschnitt Importverlauf angezeigt. Wenn in der Spalte Status angezeigt wird, dass der Import erfolgreich war, wählen Sie den Header Verfügbare Updates aus. Ihr importiertes Update sollte nun in der Liste angezeigt werden.

    Screenshot des Auftragsstatus.

Weitere Informationen zum Importvorgang finden Sie unter Importieren eines Updates in Device Update.

Anzeigen von Gerätegruppen

Device Update verwendet Gruppen, um Geräte zu organisieren. Device Update ordnet Geräte basierend auf den zugewiesenen Tags und Kompatibilitätseigenschaften automatisch in Gruppen ein. Jedes Gerät gehört nur zu einer Gruppe, aber Gruppen können mehrere Untergruppen haben, um unterschiedliche Geräteklassen zu sortieren.

  1. Navigieren Sie oben auf der Seite zur Registerkarte Gruppen und Bereitstellungen.

    Screenshot: ungruppierte Geräte.

  2. Zeigen Sie die Liste der Gruppen und das Updatekonformitätsdiagramm an. Das Updatekonformitätsdiagramm zeigt die Anzahl von Geräten in verschiedenen Konformitätszuständen: Mit neuestem Update, Neue Updates verfügbar und Updates werden ausgeführt. Informieren Sie sich weiter über die Updatekonformität.

    Screenshot: Updatekonformitätsansicht.

  3. Sie sollten eine Gerätegruppe sehen, die das simulierte Gerät, das Sie in diesem Tutorial eingerichtet haben, sowie alle verfügbaren Updates für die Geräte in der neuen Gruppe enthält. Wenn Geräte vorhanden sind, die die Geräteklassenanforderungen der Gruppe nicht erfüllen, werden sie in einer entsprechenden Gruppe ungültiger Geräte angezeigt. Klicken Sie neben der Gruppe auf Bereitstellen, um das beste verfügbare Update für die neue benutzerdefinierte Gruppe aus dieser Ansicht bereitzustellen.

Weitere Informationen zu Tags und Gruppen finden Sie unter Verwalten von Gerätegruppen.

Bereitstellen des Updates

  1. Nachdem die Gruppe erstellt wurde, sollte unter Bestes Update ein neues Update für Ihre Gerätegruppe mit dem entsprechenden Link angezeigt werden. Möglicherweise müssen Sie den Browser einmal aktualisieren.

    Weitere Informationen zur Kompatibilität finden Sie unter Device Update-Konformität.

  2. Wählen Sie die Zielgruppe aus, indem Sie den Gruppennamen auswählen. Sie werden zu den Gruppendetails unter Allgemeine Informationen zu Gruppen weitergeleitet.

    Screenshot: Gruppendetails.

  3. Um die Bereitstellung einzuleiten, wechseln Sie zur Registerkarte Aktuelle Bereitstellung. Wählen Sie im Abschnitt Verfügbare Updates neben dem gewünschten Update den Link Bereitstellen aus. Das beste verfügbare Update für eine bestimmte Gruppe wird mit Beste hervorgehoben.

    Screenshot: Auswählen eines Updates.

  4. Planen Sie den Start Ihrer Bereitstellung unverzüglich oder in der Zukunft. Klicken Sie anschließend auf Erstellen.

    Tipp

    Das Startdatum und die Uhrzeit sind standardmäßig auf Werte festgelegt, die vom aktuellen Zeitpunkt aus 24 Stunden in der Zukunft liegen. Wählen Sie unbedingt ein anderes Datum und eine andere Uhrzeit aus, wenn die Bereitstellung früher beginnen soll.

    Screenshot: Erstellen einer Bereitstellung.

  5. Unter Bereitstellungsdetails wird der Status in Aktiv geändert. Das Bereitstellungsupdate ist mit (Wird bereitgestellt) gekennzeichnet.

    Screenshot: Bereitstellungsstatus.

  6. Zeigen Sie das Kompatibilitätsdiagramm an, um herauszufinden, ob das Update jetzt in Bearbeitung ist.

  7. Nachdem Ihr Gerät erfolgreich aktualisiert wurde, sehen Sie, dass Ihr Konformitätsdiagramm und die Bereitstellungsdetails so aktualisiert wurden, dass sie übereinstimmen.

    Screenshot: Update erfolgreich.

Überwachen der Updatebereitstellung

  1. Klicken Sie oben auf der Seite auf die Registerkarte Bereitstellungsverlauf.

    Screenshot: „Bereitstellungsverlauf“.

  2. Wählen Sie neben der von Ihnen erstellten Bereitstellung den Link Details aus.

    Screenshot: Bereitstellungsdetails.

  3. Wählen Sie Aktualisieren aus, um die neuesten Statusdetails anzuzeigen.

Sie haben jetzt mithilfe von Device Update for IoT Hub ein erfolgreiches End-to-End-Paketupdate auf einem Ubuntu Server 22.04 x64-Gerät abgeschlossen.

Bereinigen von Ressourcen

Bereinigen Sie Ihr Konto, die Instanz und den IoT-Hub für Device Update, wenn Sie diese Komponenten nicht mehr benötigten. Bereinigen Sie außerdem das IoT Edge-Gerät, wenn Sie die VM über die Schaltfläche In Azure bereitstellen erstellt haben. Wechseln Sie zum Bereinigen von Ressourcen zu jeder einzelnen Ressource, und wählen Sie Löschen aus. Bereinigen Sie eine Device Update-Instanz, bevor Sie das Device Update-Konto bereinigen.

Nächste Schritte