Tutorial: Überwachen von IoT Edge-Geräten
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 Sie ein früheres Release verwenden, finden Sie weitere Informationen unter Aktualisieren von IoT Edge.
Verwenden Sie Azure Monitor-Arbeitsmappen, um die Integrität und Leistung Ihrer Azure IoT Edge-Bereitstellungen zu überwachen.
In diesem Tutorial lernen Sie, wie die folgenden Aufgaben ausgeführt werden:
- Verstehen, welche Metriken von IoT Edge-Geräten geteilt werden und wie sie vom Metriksammlermodul behandelt werden
- Bereitstellen des Metriksammlermoduls auf einem IoT Edge-Gerät
- Anzeigen zusammengestellter Visualisierungen der vom Gerät gesammelten Metriken
Voraussetzungen
Sie benötigen ein IoT Edge-Gerät, auf dem das Modul „Simulated Temperature Sensor“ (simulierter Temperatursensor) bereitgestellt ist. Falls Sie noch kein Gerät haben, führen Sie die Schritte unter Bereitstellen Ihres ersten IoT Edge-Moduls auf einem virtuellen Linux-Gerät aus, um ein Gerät mithilfe einer VM zu erstellen.
Grundlegendes zu IoT Edge-Metriken
Jedes IoT Edge-Gerät basiert auf zwei Modulen – den Runtimemodulen, die den Lebenszyklus und die Kommunikation aller anderen Module auf einem Gerät verwalten. Diese Module werden als IoT Edge-Agent und IoT Edge-Hub bezeichnet. Weitere Informationen zu diesen Modulen finden Sie unter Grundlegendes zur Azure IoT Edge-Runtime und ihrer Architektur.
Beide Runtimemodule erstellen Metriken, mit denen Sie die Leistung eines IoT Edge Geräts oder seiner einzelnen Module remote überwachen können. Der IoT Edge-Agent meldet Informationen zum Zustand einzelner Module und des Hostgeräts. Er erstellt damit Metriken wie die Dauer der ordnungsgemäßen Ausführung eines Moduls oder den genutzten Arbeitsspeicher und Prozentsatz der CPU-Auslastung auf dem Gerät. Der IoT Edge-Hub meldet Informationen zur Kommunikation auf dem Gerät. Er erstellt damit Metriken wie die Gesamtanzahl gesendeter und empfangener Nachrichten oder die zum Auflösen einer direkten Methode benötigte Zeit. Die vollständige Liste der verfügbaren Metriken finden Sie unter Zugreifen auf integrierte Metriken.
Diese Metriken werden von beiden Modulen automatisch verfügbar gemacht, sodass Sie eigene Lösungen erstellen können, um auf die Metriken zuzugreifen und Berichte dazu zu erstellen. Für Benutzer, die keine benutzerdefinierte Lösung haben oder erstellen möchten, stellt Microsoft zur Vereinfachung das Modul „azureiotedge-metrics-collector“ bereit, das diesen Prozess für sie ausführt. Das Metriksammlermodul sammelt Metriken von den beiden Runtimemodulen und allen anderen Modulen, die Sie überwachen möchten, und transportiert sie vom Gerät.
Das Metriksammlermodul sendet Ihre Metriken mit einer von zwei Methoden an die Cloud. Die erste Option, die wir in diesem Tutorial verwenden, besteht darin, die Metriken direkt an Log Analytics zu senden. Bei der zweiten Option, die nur empfohlen wird, wenn Ihre Netzwerkrichtlinien es erfordern, senden Sie die Metriken über IoT Hub und richten dann eine Route zum Übergeben der Metriknachrichten an Log Analytics ein. In beiden Fällen sind die Metriken, sobald sie sich in Ihrem Log Analytics-Arbeitsbereich befinden, zur Anzeige mithilfe von Azure Monitor-Arbeitsmappen verfügbar.
Erstellen eines Log Analytics-Arbeitsbereichs
Ein Log Analytics-Arbeitsbereich ist zum Sammeln der Metrikdaten erforderlich. Er bietet eine Abfragesprache und ist in Azure Monitor integriert, um Ihnen das Überwachen Ihrer Geräte zu ermöglichen.
Melden Sie sich am Azure-Portal an.
Suchen Sie nach Log Analytics-Arbeitsbereiche, und wählen Sie diese Option aus.
Wählen Sie Erstellen aus, und folgen Sie dann den Eingabeaufforderungen, um einen neuen Arbeitsbereich zu erstellen.
Wählen Sie nach der Erstellung des Arbeitsbereichs die Option Zu Ressource wechseln aus.
Wählen Sie im Hauptmenü unter Einstellungen die Option Agent-Verwaltung aus.
Kopieren Sie die Werte von Arbeitsbereichs-ID und Primärschlüssel. Diese beiden Werte verwenden Sie später im Tutorial, um das Metriksammlermodul zum Senden der Metriken an diesen Arbeitsbereich zu konfigurieren.
Abrufen Ihrer IoT Hub-Ressourcen-ID
Beim Konfigurieren des Metriksammlermoduls geben Sie die Azure Resource Manager-Ressourcen-ID für Ihren IoT-Hub an. Rufen Sie diese ID jetzt ab.
Navigieren Sie im Azure-Portal zu Ihrem IoT-Hub.
Wählen Sie im Menü auf der linken Seite unter Einstellungen die Option Eigenschaften aus.
Kopieren Sie den Wert der Ressourcen-ID. Er muss das Format
/subscriptions/<subscription_id>/resourceGroups/<resource_group_name>/providers/Microsoft.Devices/IoTHubs/<iot_hub_name>
aufweisen.
Bereitstellen des Metriksammlermoduls
Stellen Sie das Metriksammlermodul auf jedem Gerät bereit, das Sie überwachen möchten. Es wird wie jedes andere Modul auf dem Gerät ausgeführt und überwacht die zugewiesenen Endpunkte auf Metriken, die gesammelt und an die Cloud gesendet werden sollen.
Führen Sie die folgenden Schritte aus, um das Metriksammlermodul bereitzustellen und zu konfigurieren:
Melden Sie sich beim Azure-Portal an, und navigieren Sie zu Ihrer IoT Hub-Instanz.
Wählen Sie im Menü links unter dem Menü Geräteverwaltung die Option Geräte aus.
Wählen Sie die Geräte-ID des Zielgeräts in der Liste der IoT Edge-Geräte aus, um die Seite mit den Gerätedetails zu öffnen.
Wählen Sie in der oberen Menüleiste die Option Module festlegen aus.
Im ersten Schritt der Bereitstellung von Modulen über das Portal deklarieren Sie die Module, die auf einem Gerät vorhanden sein sollen. Wenn Sie das Gerät verwenden, das Sie im Schnellstart erstellt haben, sollte das Modul SimulatedTemperatureSensor bereits angezeigt werden. Falls nicht, fügen Sie es jetzt hinzu:
Wählen Sie im Abschnitt IoT Edge-Module zunächst die Option Hinzufügen und dann die Option IoT Edge-Modul aus.
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“ Wählen Sie Weiter: Routen, um die Routen weiterhin zu konfigurieren.
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
Fügen Sie das Metriksammlermodul hinzu, und konfigurieren Sie es:
Wählen Sie zunächst die Option Hinzufügen und dann die Option IoT Edge-Modul aus.
Suchen Sie nach dem Metriksammlermodul IoT Edge Metrics Collector, und wählen Sie es aus.
Aktualisieren Sie die folgenden Moduleinstellungen:
Einstellung Wert IoT-Modulname IoTEdgeMetricsCollector
Image-URI mcr.microsoft.com/azureiotedge-metrics-collector:latest
Neustartrichtlinie immer Gewünschter Status „Wird ausgeführt“
Wenn Sie eine andere Version oder Architektur des Metrikensammlermoduls verwenden möchten, suchen Sie in der Microsoft-Artefaktregistrierung nach verfügbaren Images.
Navigieren Sie zur Registerkarte Umgebungsvariablen.
Fügen Sie die folgenden Umgebungsvariablen vom Texttyp hinzu:
Name Wert ResourceId Die Ressourcen-ID Ihres IoT-Hubs, die Sie weiter oben abgerufen haben. UploadTarget AzureMonitor
LogAnalyticsWorkspaceId Die ID Ihres Log Analytics-Arbeitsbereichs, die Sie weiter oben abgerufen haben. LogAnalyticsSharedKey Der Schlüssel Ihres Log Analytics-Arbeitsbereichs, den Sie weiter oben abgerufen haben. Weitere Informationen zu Umgebungsvariableneinstellungen finden Sie unter Konfiguration des Metrikensammlers.
Wählen Sie Übernehmen aus, um die Änderungen zu speichern.
Hinweis
Wenn Sie möchten, dass das Sammelmodul die Metriken über IoT Hub senden soll, fügen Sie eine Route zum Upstream ähnlich wie
FROM /messages/modules/< FROM_MODULE_NAME >/* INTO $upstream
hinzu. In diesem Tutorial werden die Metriken jedoch direkt an Log Analytics gesendet. Daher ist es nicht erforderlich.Wählen Sie Überprüfen und erstellen aus, um mit dem letzten Schritt der Bereitstellung von Modulen fortzufahren.
Wählen Sie Erstellen aus, um die Bereitstellung abzuschließen.
Nach Abschluss der Modulbereitstellung kehren Sie zur Seite mit den Gerätedetails zurück, auf der Sie nun vier Module unter In Bereitstellung angegeben sehen. Es kann etwas dauern, bis alle vier Module als Vom Gerät gemeldet angezeigt werden (dies bedeutet, dass sie erfolgreich gestartet wurden und ihren Status an IoT Hub gemeldet haben). Aktualisieren Sie die Seite, um den aktuellen Status anzuzeigen.
Überwachen der Integrität des Geräts
Es kann bis zu 15 Minuten dauern, bis die Arbeitsmappen für die Geräteüberwachung angezeigt werden können. Sobald Sie das Metriksammlermodul bereitgestellt haben, beginnt es, Metriknachrichten an Log Analytics zu senden, wo sie dann in einer Tabelle organisiert werden. Die erfassten Metriken werden über die von Ihnen angegebene IoT Hub-Ressourcen-ID mit dem zugehörigen Hub verknüpft. Dadurch können die zusammengestellten IoT Edge-Arbeitsmappen Metriken abrufen, indem sie die Metriktabelle anhand der Ressourcen-ID abfragen.
In Azure Monitor sind drei Standardarbeitsmappenvorlagen für IoT verfügbar:
- Die Arbeitsmappe Bestandsansicht zeigt die Integrität von Geräten über mehrere IoT-Ressourcen hinweg an. Die Ansicht ermöglicht das Konfigurieren von Schwellenwerten zum Bestimmen der Gerätezustandsermittlung und zeigt Aggregationen primärer Metriken pro Gerät an.
- In der Arbeitsmappe Gerätedetails sind Visualisierungen für drei Kategorien verfügbar: „Messaging“, „Module“ und „Host“. In der Ansicht „Messaging“ werden die Nachrichtenrouten für ein Gerät visualisiert und Informationen zur allgemeinen Integrität des Messagingsystems angezeigt. Die Ansicht „Module“ gibt Aufschluss über die Leistung der einzelnen Module auf einem Gerät. Die Ansicht „Host“ enthält Informationen zum Hostgerät, einschließlich Versionsinformationen für Hostkomponenten und Ressourcenverwendung.
- Die Arbeitsmappe Warnungen zeigt Warnungen für Geräte über mehrere IoT-Ressourcen hinweg an.
Untersuchen der Arbeitsmappen mit der Bestandsansicht und Integritätsmomentaufnahme
In der Arbeitsmappe mit der Bestandsansicht werden all Ihre Geräte angezeigt, und Sie können bestimmte Geräte auswählen, um die zugehörigen Integritätsmomentaufnahmen anzuzeigen. Gehen Sie wie folgt vor, um die Visualisierungen in einer Arbeitsmappe zu untersuchen:
Kehren Sie zu Ihrer IoT Hub-Seite im Azure-Portal zurück.
Scrollen Sie im Hauptmenü nach unten zum Abschnitt Überwachung, und wählen Sie Arbeitsmappen aus.
Wählen Sie die Arbeitsmappe Bestandsansicht aus.
Ihr Gerät, auf dem das Metriksammlermodul ausgeführt wird, sollte angezeigt werden. Das Gerät wird entweder als fehlerfrei oder als fehlerhaft aufgeführt.
Wählen Sie den Gerätenamen aus, um detaillierte Metriken des Geräts anzuzeigen.
In allen Zeitdiagrammen können Sie den Zeitbereich ändern, indem Sie die Pfeilsymbole unter der X-Achse verwenden oder das Diagramm auswählen und den Cursor ziehen.
Schließen Sie die Arbeitsmappe mit der Integritätsmomentaufnahme. Wählen Sie in der Arbeitsmappe mit der Bestandsansicht die Option Arbeitsmappen aus, um zum Arbeitsmappenkatalog zurückzukehren.
Untersuchen der Arbeitsmappe mit den Gerätedetails
Die Arbeitsmappe mit den Gerätedetails zeigt detaillierte Informationen zur Leistung für ein einzelnes Gerät. Gehen Sie wie folgt vor, um die Visualisierungen in einer Arbeitsmappe zu untersuchen:
Wählen Sie im Arbeitsmappenkatalog die Arbeitsmappe IoT Edge-Gerätedetails aus.
Die erste Seite, die Sie in der Arbeitsmappe mit den Gerätedetails sehen, ist die Ansicht Messaging mit der Registerkarte Routing.
Auf der linken Seite werden in einer Tabelle die Routen auf dem Gerät nach Endpunkt organisiert angezeigt. Für unser Gerät sehen wir, dass der Endpunkt upstream (dieser spezielle Begriff wird für die Weiterleitung an IoT Hub verwendet) Nachrichten von der Ausgabe temperatureOutput des Moduls „SimulatedTemperatureSensor“ empfängt.
Im Graphen auf der rechten Seite wird die Anzahl verbundener Clients im Zeitverlauf nachverfolgt. Sie können den Graphen auswählen und den Zeitbereich durch Ziehen ändern.
Wählen Sie die Registerkarte Graph aus, um eine andere Visualisierung der Routen anzuzeigen. Auf der Seite „Graph“ können Sie die verschiedenen Endpunkte per Drag & Drop verschieben, um den Graphen neu anzuordnen. Dieses Feature ist hilfreich, wenn Sie viele Routen visualisieren möchten.
Auf der Registerkarte Integrität werden Probleme beim Messaging angezeigt, z. B. gelöschte Nachrichten oder Clients, deren Verbindung getrennt wurde.
Wählen Sie die Ansicht Module aus, um den Status aller auf dem Gerät bereitgestellten Module anzuzeigen. Sie können jedes Modul einzeln auswählen, um Details zur CPU- und Arbeitsspeichernutzung anzuzeigen.
Wählen Sie die Ansicht Host aus, um Informationen zum Hostgerät anzuzeigen, einschließlich des Betriebssystems, der IoT Edge-Daemonversion und Ressourcennutzung.
Anzeigen von Modulprotokollen
Nachdem Sie die Metriken für ein Gerät angezeigt haben, möchten Sie sich einzelne Module vielleicht genauer ansehen. IoT Edge bietet mit einem Feature für Livemodulprotokolle Unterstützung bei der Problembehandlung im Azure-Portal.
Wählen Sie in der Arbeitsmappe mit den Gerätedetails die Option Problembehandlung live aus.
Die Problembehandlungsseite wird mit den edgeAgent-Protokollen Ihres IoT Edge Geräts geöffnet. Wenn Sie in der Arbeitsmappe mit den Gerätedetails einen bestimmten Zeitbereich ausgewählt haben, wird diese Einstellung auf der Problembehandlungsseite übernommen.
Über das Dropdownmenü können Sie zu den Protokollen anderer Module wechseln, die auf dem Gerät ausgeführt werden. Klicken Sie auf die Schaltfläche Neu starten, um ein Modul neu zu starten.
Sie können auch über die Detailseite eines IoT Edge-Geräts auf die Problembehandlungsseite zugreifen. Weitere Informationen finden Sie unter Beheben von Problemen bei IoT Edge-Geräten über das Azure-Portal.
Nächste Schritte
Lassen Sie das Metriksammlermodul für die weiteren Tutorials auf Ihren Geräten, und kehren Sie zu diesen Arbeitsmappen zurück, um zu überprüfen, wie sich die Informationen ändern, wenn Sie komplexere Module und ein komplexeres Routing hinzufügen.
Fahren Sie mit dem nächsten Tutorial fort, in dem Sie Ihre Entwicklerumgebung einrichten, um mit der Bereitstellung benutzerdefinierter Module auf Ihren Geräten zu beginnen.