Freigeben über


Schnellstart: Bereitstellen Ihres ersten IoT Edge Moduls auf einem Windows Gerät

Gilt für:IoT Edge 1,5 Häkchen IoT Edge 1,5

Wichtig

IoT Edge 1.5 LTS ist die unterstützte Version. IoT Edge 1.4 LTS erreichte am 12. November 2024 das Ende des Lebens. Wenn Sie eine frühere Version verwenden, lesen Sie Update IoT Edge.

Probieren Sie in dieser Schnellstartanleitung Azure IoT Edge aus, indem Sie containerisierten Code auf einem Linux auf Windows IoT Edge Gerät bereitstellen. mit IoT Edge können Sie Code auf Ihren Geräten remote verwalten, sodass Sie mehr Ihrer Workloads an den Rand senden können. Für diese Schnellstartanleitung wird empfohlen, ihr eigenes Windows Clientgerät zu verwenden, um zu sehen, wie einfach es ist, Azure IoT Edge für Linux auf Windows zu verwenden. Wenn Sie Windows Server oder eine Azure VM zum Erstellen Ihrer Bereitstellung verwenden möchten, führen Sie die Schritte in der Anleitung zum Installieren und Bereitstellen von Azure IoT Edge für Linux auf einem Windows Gerät aus.

In dieser Schnellstartanleitung wird Folgendes vermittelt:

  • Erstellen Sie einen IoT Hub.
  • Registrieren Sie ein IoT Edge Gerät auf Ihrem IoT-Hub.
  • Installieren und starten Sie das IoT Edge for Linux on Windows Runtime auf Ihrem Gerät.
  • Stellen Sie remote ein Modul auf einem IoT Edge Gerät bereit und senden Sie Telemetrie.

Diagramm: Architektur dieser Schnellstartanleitung für Ihr Gerät und die Cloud

In dieser Schnellstartanleitung erfahren Sie, wie Sie Ihre Azure IoT Edge für Linux auf Windows-Gerät einrichten. Anschließend stellen Sie ein Modul aus dem Azure Portal auf Ihrem Gerät bereit. Das verwendete Modul ist ein simulierter Sensor, der Temperatur-, Feuchtigkeits- und Druckdaten generiert. Andere Azure IoT Edge Lernprogramme basieren auf der Arbeit, die Sie hier ausführen, indem Sie Module bereitstellen, die die simulierten Daten für Geschäftseinblicke analysieren.

Wenn Sie nicht über ein aktives Azure-Abonnement verfügen, erstellen Sie ein free-Konto bevor Sie beginnen.

Voraussetzungen

Bereiten Sie Ihre Umgebung auf die Azure CLI vor.

Erstellen Sie eine Cloudressourcengruppe, um alle Ressourcen zu verwalten, die Sie in dieser Schnellstartanleitung verwenden.

az group create --name IoTEdgeResources --location westus2

Stellen Sie sicher, dass Ihr IoT Edge Gerät die folgenden Anforderungen erfüllt:

  • Systemanforderungen

    • Windows 101/11 (Pro, Enterprise, IoT Enterprise) 1 Windows 10 Mindestbuild 17763 mit allen aktuellen kumulativen Updates installiert.
  • Hardwareanforderungen

    • Minimaler freier Arbeitsspeicher: 1 GB
    • Minimaler freier Speicherplatz: 10 GB

Erstellen eines IoT-Hubs

Erstellen Sie zunächst einen IoT-Hub mithilfe der Azure CLI.

Diagramm: Schritt zum Erstellen eines IoT-Hubs

Die kostenlose Ebene von Azure IoT Hub eignet sich für diesen Quickstart. Wenn Sie zuvor IoT Hub verwendet haben und bereits über einen Hub verfügen, können Sie diese IoT hub verwenden.

Mit dem folgenden Code wird ein kostenloser F1-Hub in der Ressourcengruppe IoTEdgeResources erstellt. Ersetzen Sie {hub_name} durch einen eindeutigen Namen für Ihren IoT-Hub. Es kann einige Minuten dauern, bis ein IoT-Hub erstellt wurde.

az iot hub create --resource-group IoTEdgeResources --name {hub_name} --sku F1 --partition-count 2

Ändern Sie die SKU in S1, falls Sie eine Fehlermeldung erhalten, weil bereits ein kostenloser Hub in Ihrem Abonnement vorhanden ist. Sollten Sie eine Fehlermeldung mit dem Hinweis erhalten, dass der Name für den IoT-Hub nicht verfügbar ist, ist bereits ein Hub mit diesem Namen vorhanden. Probieren Sie einen neuen Namen aus.

Registrieren eines IoT Edge Geräts

Registrieren Sie ein IoT Edge Gerät mit Ihrem neu erstellten IoT-Hub.

Das Diagramm zeigt den Schritt zum Registrieren eines Geräts mit einer IoT-Hub-Identität.

Erstellen Sie eine Geräteidentität für das simulierte Gerät, sodass es mit dem IoT Hub kommunizieren kann. Die Geräteidentität befindet sich in der Cloud, und Sie verwenden eine eindeutige Verbindungszeichenfolge, um ein physisches Gerät mit einer Geräteidentität zu verknüpfen.

IoT Edge Geräte verhalten sich und können anders verwaltet werden als typische IoT-Geräte. Verwenden Sie das Flag --edge-enabled, um zu deklarieren, dass diese Identität für ein IoT Edge Gerät gilt.

  1. Geben Sie in Azure Cloud Shell den folgenden Befehl ein, um ein Gerät mit dem Namen myEdgeDevice in Ihrem Hub zu erstellen.

    az iot hub device-identity create --device-id myEdgeDevice --edge-enabled --hub-name {hub_name}
    

    Wenn sie eine Fehlermeldung zu iothubowner-Richtlinienschlüsseln erhalten, stellen Sie sicher, dass Cloud Shell die neueste Version der Azure IoT Erweiterung ausführt.

  2. Zeigen Sie die connection string für Ihr Gerät an, das Ihr physisches Gerät mit seiner Identität in IoT Hub verknüpft. Sie enthält den Namen Ihres IoT-Hubs, den Namen Ihres Geräts und einen gemeinsam verwendeten Schlüssel, mit dem die Verbindungen zwischen diesen Komponenten authentifiziert werden.

    az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name {hub_name}
    
  3. Kopieren Sie den Wert des Schlüssels connectionString aus der JSON-Ausgabe, und speichern Sie ihn. Dieser Wert ist die Geräteverbindungszeichenfolge. Verwenden Sie sie, um die IoT Edge Laufzeit im nächsten Abschnitt zu konfigurieren.

    Ihr connection string sollte z. B. ähnlich aussehen wie HostName=contoso-hub.azure-devices.net;DeviceId=myEdgeDevice;SharedAccessKey=<DEVICE_SHARED_ACCESS_KEY>.

Installieren und Starten der IoT Edge Laufzeit

Installieren Sie IoT Edge für Linux auf Windows auf Ihrem Gerät, und konfigurieren Sie es mit dem Geräteverbindungszeichenfolgen.

Das Diagramm zeigt den Schritt zum Starten der IoT Edge-Runtime.

Führen Sie die folgenden PowerShell-Befehle auf dem Zielgerät aus, auf dem Sie Azure IoT Edge für Linux auf Windows bereitstellen möchten. Für die Bereitstellung auf einem Remotezielgerät mithilfe von PowerShell verwenden Sie Remote-PowerShell, um eine Verbindung zu einem Remotegerät herzustellen und diese Befehle remote auf diesem Gerät auszuführen.

  1. Führen Sie in einer PowerShell-Sitzung mit erhöhten Rechten den folgenden Befehl aus, um Hyper-V zu aktivieren. Weitere Informationen finden Sie unter Hyper-V zu Windows 10.

    Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
    
  2. Führen Sie in einer PowerShell-Sitzung mit erhöhten Rechten jeden der folgenden Befehle aus, um IoT Edge für Linux auf Windows herunterzuladen.

    • X64/AMD64

      $msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))
      $ProgressPreference = 'SilentlyContinue'
      Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_5_LTS_X64" -OutFile $msiPath
      
    • ARM64

      $msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))
      $ProgressPreference = 'SilentlyContinue'
      Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_5_LTS_ARM64" -OutFile $msiPath
      
  3. Installieren Sie IoT Edge für Linux auf Windows auf Ihrem Gerät.

    Start-Process -Wait msiexec -ArgumentList "/i","$([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))","/qn"
    
  4. Stellen Sie die Ausführungsrichtlinie auf dem Zielgerät auf AllSigned ein, wenn diese noch nicht eingestellt ist. Sie können die aktuelle Ausführungsrichtlinie in einer PowerShell-Eingabeaufforderung mit erhöhten Rechten überprüfen, indem Sie Folgendes verwenden:

    Get-ExecutionPolicy -List
    

    Wenn die Ausführungsrichtlinie local machine nicht AllSignedlautet, legen Sie die Ausführungsrichtlinie mithilfe des folgenden Befehls fest:

    Set-ExecutionPolicy -ExecutionPolicy AllSigned -Force
    
  5. Erstellen Sie die IoT Edge für Linux auf Windows Bereitstellung.

    Deploy-Eflow
    
  6. Geben Sie "Y" ein, um die Lizenzbedingungen zu akzeptieren.

  7. Geben Sie O oder R ein, um optionale Diagnosedaten je nach Ihren Wünschen ein- oder auszuschalten. Eine erfolgreiche Bereitstellung wird in der folgenden Abbildung gezeigt.

    Der Screenshot zeigt am Ende der Meldungen in der Konsole, dass eine erfolgreiche Bereitstellung mit „Bereitstellung erfolgreich“ gemeldet wird.

  8. Stellen Sie Ihr Gerät mithilfe der Verbindungszeichenfolge des Geräts bereit, die Sie im vorherigen Abschnitt abgerufen haben. Ersetzen Sie den Platzhaltertext durch Ihren eigenen Wert.

    Provision-EflowVm -provisioningType ManualConnectionString -devConnString "<CONNECTION_STRING_HERE>"
    

Ihr IoT Edge Gerät ist jetzt konfiguriert. Es kann nun zum Ausführen von in der Cloud bereitgestellten Modulen verwendet werden.

Bereitstellen eines Moduls

Verwalten Sie Ihr Azure IoT Edge Gerät aus der Cloud, um ein Modul bereitzustellen, das Telemetriedaten an IoT Hub sendet.

Diagramm: Schritt zum Bereitstellen eines Moduls

Eine der wichtigsten Funktionen von Azure IoT Edge ist die Bereitstellung von Code auf Ihren IoT Edge-Geräten aus der Cloud. IoT Edge Modules sind ausführbare Pakete als Container implementiert. In diesem Abschnitt stellen Sie ein vordefiniertes Modul aus dem Abschnitt IoT Edge Modules of Microsoft Artifact Registry bereit.

Das Modul, das Sie in diesem Abschnitt bereitstellen, simuliert einen Sensor und sendet generierte Daten. Dieses Modul ist ein nützlicher Code, wenn Sie mit IoT Edge beginnen, da Sie die simulierten Daten für Entwicklung und Tests verwenden können. Wenn Sie genau sehen möchten, was dieses Modul tut, können Sie den Quellcode des simulierten Temperatursensors anzeigen.

Führen Sie die folgenden Schritte aus, um Ihr erstes Modul bereitzustellen:

  1. Melden Sie sich beim portal Azure an, und wechseln Sie zu Ihrem IoT Hub.

  2. Wählen Sie im Menü links unter dem Menü Geräteverwaltung die Option Geräte aus.

  3. Wählen Sie in der Liste der Geräte die Geräte-ID des Zielgeräts aus.

    Hinweis

    Wenn Sie ein neues IoT Edge Gerät erstellen, wird der Statuscode 417 -- The device's deployment configuration is not set im Azure-Portal angezeigt. Dieser Status ist normal und bedeutet, dass das Gerät bereit ist, eine Modulbereitstellung zu empfangen.

  4. Wählen Sie in der oberen Leiste Module festlegen aus.

    Wählen Sie aus, welche Module auf Ihrem Gerät ausgeführt werden sollen. Sie können aus Modulen wählen, die Sie bereits erstellt haben, Module aus der Microsoft Artifact Registry oder Modulen, die Sie selbst erstellt haben. In dieser Schnellstartanleitung stellen Sie ein Modul aus der Microsoft Artifact-Registrierung bereit.

  5. Wählen Sie im Abschnitt IoT Edge ModulHinzufügen und dann IoT Edge Modul aus.

  6. Aktualisieren Sie die folgenden Moduleinstellungen:

    Einstellung Wert
    IoT-Modulname SimulatedTemperatureSensor
    Image-URI mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:latest
    Neustartrichtlinie immer
    Gewünschter Status Wird ausgeführt
  7. Wählen Sie Weiter: Routen, um die Routen weiterhin zu konfigurieren.

  8. Fügen Sie eine Route hinzu, die alle Nachrichten aus dem simulierten Temperaturmodul an IoT Hub sendet.

    Einstellung Wert
    Name SimulatedTemperatureSensorToIoTHub
    Wert FROM /messages/modules/SimulatedTemperatureSensor/* INTO $upstream
  9. Klicken Sie auf Weiter: Überprüfen + erstellen.

  10. Überprüfen Sie die JSON-Datei, und wählen Sie dann Erstellen aus. Die JSON-Datei definiert alle Module, die Sie auf Ihrem IoT Edge Gerät bereitstellen.

    Hinweis

    Wenn Sie eine neue Bereitstellung an ein IoT Edge Gerät übermitteln, wird nichts an Ihr Gerät übertragen. Stattdessen fragt das Gerät regelmäßig beim IoT Hub nach neuen Anweisungen. Wenn das Gerät ein aktualisiertes Bereitstellungsmanifest findet, verwendet es die Informationen zur neuen Bereitstellung, um die Modulimages aus der Cloud abzurufen, und startet dann die lokale Ausführung der Module. Dieser Vorgang kann einige Minuten dauern.

Nachdem Sie die Bereitstellungsdetails des Moduls erstellt haben, führt Sie der Assistent zur Seite „Gerätedetails“ zurück. Zeigen Sie den Bereitstellungsstatus auf der Registerkarte Module an.

Dort sollten drei Module angezeigt werden: $edgeAgent, $edgeHub und SimulatedTemperatureSensor. Wenn mindestens ein Modul Yes unter Specified in Deployment und nicht unter Reported by Device hat, werden diese von Ihrem IoT Edge Gerät dennoch gestartet. Warten Sie einige Minuten, und aktualisieren Sie dann die Seite.

Der Screenshot zeigt das Modul „SimulatedTemperatureSensor“ in der Liste von bereitgestellten Modulen.

Wenn Probleme beim Bereitstellen von Modulen auftreten, lesen Sie Beheben von Problemen mit IoT Edge-Geräten über das Azure-Portal.

Anzeigen der generierten Daten

In dieser Schnellstartanleitung haben Sie ein neues IoT Edge Gerät erstellt und die IoT Edge Laufzeit darauf installiert. Anschließend haben Sie das Azure Portal verwendet, um ein IoT Edge Modul bereitzustellen, das auf dem Gerät ausgeführt werden kann, ohne Änderungen am Gerät selbst vornehmen zu müssen.

Das Modul, das Sie pushen, generiert Beispielumgebungsdaten, die Sie später zum Testen verwenden können. Der simulierte Sensor überwacht sowohl eine Maschine als auch die Umgebung um die Maschine. Beispielsweise kann sich dieser Sensor in einem Serverraum, in einer Fabrik oder in einer Windturbine befinden. Die gesendeten Nachrichten enthalten Informationen zu Umgebungstemperatur und Luftfeuchtigkeit, Computertemperatur und Druck sowie einen Zeitstempel. IoT Edge Lernprogramme verwenden die von diesem Modul erstellten Daten als Testdaten für Analysen.

  1. Melden Sie sich mit dem folgenden Befehl in Ihrer PowerShell-Sitzung bei Ihrem IoT Edge für Linux auf Windows virtuellen Computer an:

    Connect-EflowVm
    

    Hinweis

    Das einzige Konto, das für eine SSH-Verbindung mit dem virtuellen Computer zulässig ist, ist der Benutzer, der ihn erstellt hat.

  2. Überprüfen Sie nach der Anmeldung die Liste der ausgeführten IoT Edge Module mithilfe des folgenden Linux-Befehls:

    sudo iotedge list
    

    Der Screenshot zeigt, wo Sie überprüfen können, ob Ihr Temperatursensor, Ihr Agent und Ihre Hubmodule ausgeführt werden.

  3. Zeigen Sie die Nachrichten an, die vom Temperatursensormodul an die Cloud gesendet werden, indem Sie den folgenden Linux-Befehl verwenden:

    sudo iotedge logs SimulatedTemperatureSensor -f
    

    Der Screenshot zeigt die Ausgabemeldungen des Moduls „SimulatedTemperatureSensor“ während der Ausführung.

    Tipp

    IoT Edge Befehle sind schreibweisenabhängig, wenn sie auf Modulnamen verweisen.

Bereinigen von Ressourcen

Wenn Sie mit den IoT Edge Lernprogrammen fortfahren möchten, überspringen Sie diesen Schritt. Sie können das Gerät verwenden, das Sie in dieser Schnellstartanleitung registriert und eingerichtet haben. Löschen Sie andernfalls die Azure Ressourcen, die Sie erstellt haben, um Gebühren zu vermeiden.

Wenn Sie Ihren virtuellen Computer und Den IoT-Hub in einer neuen Ressourcengruppe erstellt haben, löschen Sie diese Gruppe und alle zugehörigen Ressourcen. Wenn Sie die gesamte Gruppe nicht löschen möchten, löschen Sie stattdessen einzelne Ressourcen.

Wichtig

Überprüfen Sie den Inhalt der Ressourcengruppe, um sicherzustellen, dass sie keine Elemente enthält, die Sie beibehalten möchten. Das Löschen einer Ressourcengruppe kann nicht rückgängig gemacht werden.

Verwenden Sie den folgenden Befehl, um die Gruppe IoTEdgeResources zu entfernen. Das Löschen kann einige Minuten dauern.

az group delete --name IoTEdgeResources

Sie können sich vergewissern, dass die Ressourcengruppe entfernt wurde, indem Sie diesen Befehl zum Anzeigen der Liste mit den Ressourcengruppen verwenden.

az group list

Deinstallieren IoT Edge für Linux auf Windows

Führen Sie die folgenden Schritte aus, um die Azure IoT Edge für Linux auf Windows Installation von Ihrem Gerät zu entfernen.

  1. Öffnen Sie Settings auf Windows.
  2. Wählen Sie Programme hinzufügen oder entfernen aus.
  3. Wählen Sie die App Azure IoT Edge aus.
  4. Wählen Sie "Deinstallieren" aus.

Nächste Schritte

In dieser Schnellstartanleitung haben Sie ein IoT Edge Gerät erstellt und die Azure IoT Edge Cloudschnittstelle verwendet, um Code auf dem Gerät bereitzustellen. Sie verfügen nun über ein Testgerät, das Rohdaten zu seiner Umgebung generiert.

Im nächsten Lernprogramm erfahren Sie, wie Sie die Aktivität und Integrität Ihres Geräts über das Azure-Portal überwachen.