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 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.
In diesem Lernprogramm erstellen Sie einen Azure Stream Analytics Auftrag im Azure Portal und stellen ihn als IoT Edge Modul ohne zusätzlichen Code bereit.
In diesem Tutorial lernen Sie Folgendes:
- Erstellen Sie einen Azure Stream Analytics Job, um Daten am Edge zu verarbeiten.
- Verbinden Sie den neuen Azure Stream Analytics Auftrag mit anderen IoT Edge Modulen.
- Stellen Sie den Azure Stream Analytics Auftrag über das Azure-Portal auf einem IoT Edge Gerät bereit.
Das Stream Analytics-Modul in diesem Tutorial berechnet die Durchschnittstemperatur der letzten 30 Sekunden. Wenn der Mittelwert 70 erreicht, sendet das Modul eine Warnung für das Gerät, um Maßnahmen zu ergreifen. In diesem Fall besteht die Aktion darin, den simulierten Temperatursensor zurückzusetzen. In einer Produktionsumgebung können Sie diese Funktionalität verwenden, um eine Maschine abzuschalten oder präventive Maßnahmen zu ergreifen, wenn die Temperatur gefährliche Werte erreicht.
Warum Azure Stream Analytics in IoT Edge verwenden?
Viele IoT-Lösungen verwenden Analysedienste, um Erkenntnisse zu Daten zu gewinnen, die von IoT-Geräten an die Cloud übermittelt werden. Mithilfe von Azure IoT Edge verschieben Sie Azure Stream Analyticslogik auf das Gerät selbst. Die Verarbeitung von Telemetriedatenströmen am Rand reduziert die Menge der hochgeladenen Daten und die Zeit, die zum Reagieren auf umsetzbare Erkenntnisse benötigt wird. Azure IoT Edge und Azure Stream Analytics integrieren sich, um die Entwicklung von Workloads zu vereinfachen.
Azure Stream Analytics verwendet eine strukturierte Abfragesyntax für die Datenanalyse in der Cloud und auf IoT Edge Geräten. Weitere Informationen finden Sie in Azure Stream Analytics Documentation.
Voraussetzungen
Wenn Sie kein Azure Konto haben, erstellen Sie ein free-Konto bevor Sie beginnen.
Ein Azure IoT Edge Gerät.
Verwenden Sie einen Azure virtuellen Computer als IoT Edge Gerät, indem Sie die Schritte in der Schnellstartanleitung für Linux oder Windows Geräte ausführen.
Eine kostenlose oder standardstufige IoT Hub in Azure.
Einen Azure Stream Analytics-Auftrag erstellen
In diesem Abschnitt erstellen Sie einen Azure Stream Analytics Auftrag, der:
- Empfängt Daten von Ihrem IoT Edge Gerät.
- Fragt die Telemetriedaten nach Werten außerhalb eines festgelegten Bereichs ab.
- Führt Aktionen auf dem IoT Edge Gerät basierend auf den Abfrageergebnissen aus.
Speicherkonto erstellen
Wenn Sie einen Azure Stream Analytics Auftrag erstellen, der auf einem IoT Edge Gerät ausgeführt werden soll, müssen Sie ihn speichern, damit das Gerät darauf zugreifen kann. Sie können ein vorhandenes Azure Storage-Konto verwenden oder ein neues Konto erstellen.
Wechseln Sie im Azure-Portal zu Erstellen einer Ressource > Storage > Speicherkonto.
Geben Sie die folgenden Werte an, um Ihr Speicherkonto zu erstellen:
Feld Wert Abonnement Wählen Sie das gleiche Abonnement wie für Ihren IoT Hub. Ressourcengruppe Verwenden Sie dieselbe Ressourcengruppe für alle Testressourcen für die IoT Edge Schnellstarts und Lernprogramme. Beispiel: IoTEdgeResources. Name Geben Sie einen eindeutigen Namen für Ihr Speicherkonto an. Standort Wählen Sie einen Standort in Ihrer Nähe aus. Behalten Sie die Standardwerte für die anderen Felder bei, und wählen Sie "Überprüfen+ Erstellen" aus.
Überprüfen Sie Ihre Einstellungen, und wählen Sie dann "Erstellen" aus.
Erstellen eines neuen Auftrags
Wählen Sie im portal Azure Folgendes aus:
- Erstellen einer Ressource
- Internet der Dinge im Menü auf der linken Seite
- Geben Sie Stream Analytics in die Suchleiste ein, um sie in Azure Marketplace
- Wählen Sie Erstellen und dann im Dropdownmenü Stream Analytics-Auftrag aus.
Geben Sie die folgenden Werte an, um Ihren neuen Stream Analytics-Auftrag zu erstellen:
Feld Wert Name Geben Sie einen Namen für Ihren Auftrag an. Beispielsweise IoTEdgeJob Abonnement Wählen Sie das gleiche Abonnement wie für Ihren IoT Hub. Ressourcengruppe Verwenden Sie dieselbe Ressourcengruppe für alle Testressourcen, die Sie während der IoT Edge Schnellstarts und Lernprogramme erstellen. Beispiel: eine Ressource mit dem Namen IoTEdgeResources Region Wählen Sie einen Standort in Ihrer Nähe aus. Hosting-Umgebung Wählen Sie Edge aus. Mit dieser Option können Sie anstelle der Cloud auf einem IoT Edge Gerät bereitstellen. Klicken Sie auf Überprüfen + erstellen.
Bestätigen Sie Ihre Optionen, und wählen Sie dann Erstellen aus.
Konfigurieren des Auftrags
Nachdem Sie Ihren Stream Analytics-Auftrag im Azure-Portal erstellt haben, konfigurieren Sie ihn mit einer input, einem output und einer query für die daten, die durchlaufen werden.
In diesem Abschnitt wird gezeigt, wie Sie einen Auftrag erstellen, der Temperaturdaten von einem IoT Edge Gerät empfängt. Sie analysiert die Daten in einem rollierenden 30-Sekunden-Fenster. Wenn die durchschnittliche Temperatur in diesem Fenster über 70 Grad Celsius übersteigt, sendet der Job einen Alarm an das IoT-Edge-Gerät.
Hinweis
Sie geben an, woher die Daten kommen und wohin sie gehen, im nächsten Abschnitt, IoT Edge Einstellungen konfigurieren, wenn Sie den Auftrag bereitstellen.
Festlegen von Eingabe und Ausgabe
Navigieren Sie im Azure Portal zu Ihrem Stream Analytics-Auftrag.
Wählen Sie unter "Auftragstopologie" die Option "Eingaben" und dann "Eingabe hinzufügen" aus.
Wählen Sie edge Hub aus der Dropdownliste aus.
Wenn die Edge Hub-Option in der Liste nicht angezeigt wird, haben Sie möglicherweise Ihren Stream Analytics-Auftrag als in der Cloud gehosteten Auftrag erstellt. Versuchen Sie, einen neuen Auftrag zu erstellen, und stellen Sie sicher, dass Sie Edge als Hostumgebung auswählen.
Geben Sie im Bereich Neue Eingabe die Temperatur als Eingabealias ein.
Behalten Sie in den restlichen Feldern die Standardwerte bei, und wählen Sie Speichern.
Wählen Sie unter Auftragstopologie den Eintrag Ausgaben, dann Hinzufügen aus.
Wählen Sie in der Dropdownliste die Option Edge-Hub aus.
Geben Sie im Bereich Neue Ausgabe die Warnung als Ausgabealias ein.
Behalten Sie in den restlichen Feldern die Standardwerte bei, und wählen Sie Speichern.
Erstellen einer Abfrage
Wählen Sie unter Auftragstopologie die Option Abfrage aus.
Ersetzen Sie den Standardtext durch die folgende Abfrage:
SELECT 'reset' AS command INTO alert FROM temperature TIMESTAMP BY timeCreated GROUP BY TumblingWindow(second,30) HAVING Avg(machine.temperature) > 70In dieser Abfrage sendet der SQL-Code einen Zurücksetzungsbefehl an die Warnungsausgabe, wenn die durchschnittliche Maschinentemperatur in einem 30-sekündigen Fenster 70 Grad erreicht. Der Zurücksetzungsbefehl ist als Aktion in den Sensor vorprogrammiert.
Wählen Sie Abfrage speichern aus.
Konfigurieren IoT Edge Einstellungen
Um Ihren Stream Analytics-Auftrag auf einem IoT Edge Gerät bereitzustellen, ordnen Sie Ihren Azure Stream Analytics Auftrag einem Speicherkonto zu. Wenn Sie Ihren Auftrag bereitstellen, exportiert die Auftragsdefinition als Container in das Speicherkonto.
Wählen Sie in Ihrem Stream Analytics-Dienst unter dem Menü "Einstellungen " die Option "Speicherkontoeinstellungen" aus.
Wählen Sie die Option Blobspeicher/ADLS Gen 2 aus Ihren Abonnements auswählen aus.
Ihr Azure Speicherkonto wird automatisch auf der Seite angezeigt. Wird es nicht angezeigt, müssen Sie einen Speicher erstellen. Wenn Sie einen anderen Speicher als den im Feld " Speicherkonto " aufgeführten Speicher auswählen müssen, wählen Sie ihn im Dropdownmenü aus.
Wählen Sie "Speichern" aus, wenn Sie Änderungen vorgenommen haben.
Bereitstellen des Auftrags
Sie können jetzt die Azure Stream Analytics Aufgabe auf Ihrem IoT Edge Gerät deployen.
In diesem Abschnitt verwenden Sie den Assistenten Set modules im Azure Portal, um ein Deployment manifest zu erstellen. Ein Bereitstellungsmanifest ist eine JSON-Datei mit Beschreibungen für alle Module, die auf einem Gerät bereitgestellt werden. Das Manifest enthält außerdem die Containerregistrierungen, welche die Modulimages speichern, die Verwaltung der Module und die Kommunikationsmöglichkeiten für die Module untereinander. Ihr IoT Edge Gerät ruft sein Bereitstellungsmanifest aus IoT Hub ab und verwendet dann die darin aufgeführten Informationen, um alle zugewiesenen Module bereitzustellen und zu konfigurieren.
In diesem Tutorial stellen Sie zwei Module bereit. Das erste ist das Modul SimulatedTemperatureSensor, das einen Sensor für Temperatur und Luftfeuchtigkeit simuliert. Das zweite ist Ihr Stream Analytics-Auftrag. Das Sensormodul stellt den Datenstrom bereit, der von Ihrer Auftragsabfrage analysiert wird.
Navigieren Sie im Azure-Portal zu Ihrem IoT-Hub.
Wählen Sie Devices unter dem Menü Device Management aus, und wählen Sie dann Ihr IoT Edge Gerät aus, um es zu öffnen.
Wählen Sie Module festlegen aus.
Wenn Sie zuvor das SimulatedTemperatureSensor-Modul auf diesem Gerät bereitgestellt haben, wird es unter Umständen automatisch aufgefüllt. Führen Sie andernfalls die folgenden Schritte aus, um das Modul hinzuzufügen:
- Wählen Sie + Hinzufügen aus, und wählen Sie IoT Edge Modul aus.
- Geben Sie SimulatedTemperatureSensor als Name ein.
- Geben Sie als Bild-URI mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:1.5 ein.
- Lassen Sie die restlichen Standardeinstellungen unverändert, und wählen Sie Hinzufügen aus.
Fügen Sie Ihren Azure Stream Analytics Edgeauftrag mit den folgenden Schritten hinzu:
- Wählen Sie + Hinzufügen aus, und wählen Sie Azure Stream Analytics Modul aus.
- Wählen Sie Ihr Abonnement und den von Ihnen erstellten Azure Stream Analytics Edgeauftrag aus.
- Wählen Sie Speichern aus.
Nach dem Speichern Ihrer Änderungen werden die Details Ihres Stream Analytics-Auftrags in dem von Ihnen erstellten Speichercontainer veröffentlicht.
Nachdem die Stream Analytics-Ergänzung bereitgestellt wurde, vergewissern Sie sich, dass auf der Seite Module festlegen zwei neue Module angezeigt werden.
Klicken Sie auf Überprüfen + erstellen. Das Bereitstellungsmanifest wird angezeigt.
Wählen Sie "Erstellen" aus.
Auf der Seite Module festlegen Ihres Geräts sollten nach einigen Minuten die Module aufgelistet und ausgeführt werden. Aktualisieren Sie die Seite, wenn keine Module angezeigt werden, oder warten Sie einige Minuten, und aktualisieren Sie sie dann erneut.
Grundlegendes zu den beiden neuen Modulen
Wählen Sie auf der Registerkarte Set-Module Ihres Geräts Ihren Stream Analytics-Modulnamen aus, um Sie zur Seite Update IoT Edge Modul zu bringen. Hier können Sie die Einstellungen aktualisieren.
Die Registerkarte Settings verfügt über den Image-URI, der auf ein Standardbild Azure Stream Analytics verweist. Dieses einzelne Image wird für jedes Stream Analytics-Modul verwendet, das auf einem IoT Edge Gerät bereitgestellt wird.
Auf der Registerkarte Module Twin Settings wird der JSON-Code angezeigt, der die Azure Stream Analytics-Eigenschaft (ASA) definiert, die ASAJobInfo. Der Wert dieser Eigenschaft verweist auf die Auftragsdefinition in Ihrem Speichercontainer. Mithilfe dieser Eigenschaft wird das Stream Analytics-Image mit Ihren individuellen Auftragsdetails konfiguriert.
Das Stream Analytics-Modul hat standardmäßig den gleichen Namen wie der Auftrag, auf dem es basiert. Der Modulname kann bei Bedarf auf dieser Seite geändert werden, dies ist jedoch nicht erforderlich.
Wählen Sie Anwenden aus, wenn Sie Änderungen vorgenommen haben, oder Abbrechen, wenn Sie keine Änderungen vorgenommen haben.
Zuweisen von Routen zu Ihren Modulen
Wählen Sie auf der Seite Module für Gerät festlegen:<Ihr Gerätename> die Option Weiter: Routen aus.
Auf der Registerkarte Routes definieren Sie, wie Nachrichten zwischen Modulen und dem IoT Hub übergeben werden. Nachrichten werden mit Name-Wert-Paaren erstellt.
Fügen Sie die Routennamen und -werte mit den in der folgenden Tabelle gezeigten Paaren hinzu. Ersetzen Sie Instanzen von
{moduleName}durch den Namen Ihres Azure Stream Analytics Moduls. Dieses Modul sollte den gleichen Namen haben, den Sie in der Modulliste Ihres Geräts auf der Seite Setmodule sehen, wie im Azure-Portal dargestellt.Name Wert TelemetrieInDieCloud FROM /messages/modules/SimulatedTemperatureSensor/* INTO $upstreamalertsToCloud FROM /messages/modules/{moduleName}/* INTO $upstreamalertsToReset FROM /messages/modules/{moduleName}/* INTO BrokeredEndpoint("/modules/SimulatedTemperatureSensor/inputs/control")telemetryToAsa FROM /messages/modules/SimulatedTemperatureSensor/* INTO BrokeredEndpoint("/modules/{moduleName}/inputs/temperature")Die hier deklarierten Routen definieren den Datenfluss über das IoT Edge Gerät. Die Telemetriedaten von SimulatedTemperatureSensor werden an IoT Hub und an die temperatureeingabe gesendet, die im Stream Analytics-Auftrag konfiguriert wurde. Die ausgabemeldungen alert werden an IoT Hub und an das SimulatedTemperatureSensor-Modul gesendet, um den Zurücksetzungsbefehl auszulösen.
Wählen Sie "Weiter" aus: Überprüfen + Erstellen.
Auf der Registerkarte Überprüfen + erstellen sehen Sie, wie die im Assistenten angegebenen Informationen in ein JSON-Bereitstellungsmanifest konvertiert werden.
Wenn Sie mit der Überprüfung des Manifests fertig sind, wählen Sie Erstellen aus, um die Einstellung Ihres Moduls abzuschließen.
Anzeigen von Daten
Wechseln Sie zu Ihrem IoT Edge Gerät, um die Interaktion zwischen dem Azure Stream Analytics-Modul und dem SimulatedTemperatureSensor-Modul anzuzeigen.
Hinweis
Wenn Sie einen virtuellen Computer für ein Gerät verwenden, verwenden Sie die Azure Cloud Shell, um direkt auf alle Azure authentifizierten Dienste zuzugreifen.
Überprüfen Sie, ob alle Module in Docker ausgeführt werden:
iotedge listZeigen Sie alle Systemprotokolle und Metrikdaten an. Ersetzen Sie {moduleName} durch den Namen Ihres Azure Stream Analytics Moduls:
iotedge logs -f {moduleName}Sehen Sie sich anhand der Sensorprotokolle an, wie sich der Zurücksetzungsbefehl auf das SimulatedTemperatureSensor-Modul auswirkt:
iotedge logs SimulatedTemperatureSensorSie können beobachten, wie die Temperatur des Computers allmählich steigt, bis sie 30 Sekunden lang 70 Grad beträgt. Dann löst das Stream Analytics-Modul eine Zurücksetzung aus, und die Computertemperatur fällt zurück auf 21.
Bereinigen von Ressourcen
Wenn Sie mit dem nächsten empfohlenen Artikel fortfahren möchten, behalten Sie die von Ihnen erstellten Ressourcen und Konfigurationen bei, und verwenden Sie sie wieder. Sie können auch dasselbe IoT Edge Gerät wie ein Testgerät verwenden.
Löschen Sie andernfalls die lokalen Konfigurationen und Azure Ressourcen, die Sie in diesem Artikel verwendet haben, um Gebühren zu vermeiden.
Löschen Azure Ressourcen
Sie können das Löschen Azure Ressourcen und Ressourcengruppen nicht rückgängigmachen. Achten Sie daher darauf, dass Sie nicht versehentlich die falsche Ressourcengruppe oder die falschen Ressourcen löschen. Wenn Sie die IoT Hub in einer vorhandenen Ressourcengruppe erstellt haben, die Ressourcen enthält, die Sie behalten möchten, löschen Sie nur die IoT Hub Ressource selbst, nicht die Ressourcengruppe.
So löschen Sie die Ressourcen:
- Melden Sie sich beim portal Azure an, und wählen Sie dann Resource groups aus.
- Wählen Sie den Namen der Ressourcengruppe aus, die Ihre IoT Edge Testressourcen enthält.
- Überprüfen Sie die Liste der Ressourcen, die Ihre Ressourcengruppe enthält. Wenn Sie alle löschen möchten, können Sie " Ressourcengruppe löschen" auswählen. Wenn Sie nur einige davon löschen möchten, wählen Sie jede Ressource aus, um sie einzeln zu löschen.
Nächste Schritte
In diesem Lernprogramm richten Sie einen Azure Stream Analytics Auftrag ein, um Daten von Ihrem IoT Edge Gerät zu analysieren. Sie haben das modul Azure Stream Analytics auf Ihrem IoT Edge Gerät geladen, um temperatursteigerungen lokal zu verarbeiten und zu reagieren und den aggregierten Datenstrom an die Cloud zu senden. Wenn Sie erfahren möchten, wie Azure IoT Edge Ihnen beim Erstellen weiterer Lösungen helfen können, fahren Sie mit dem nächsten Lernprogramm fort.