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.
Der IoT Edge-Agent und IoT Edge Hub sind zwei Module, aus denen die IoT Edge Laufzeit besteht. Weitere Informationen zu den Verantwortlichkeiten jedes Laufzeitmoduls finden Sie unter verstehen der Azure IoT Edge Laufzeit und ihrer Architektur.
Dieser Artikel enthält die gewünschten Eigenschaften und gemeldeten Eigenschaften der Laufzeitmodulzwillinge. Weitere Informationen zum Bereitstellen von Modulen auf IoT Edge Geräten finden Sie unter learn how to deploy modules and establish routes in IoT Edge.
Ein Modulzwilling enthält:
Gewünschte Eigenschaften. Das Lösungs-Back-End legt die gewünschten Eigenschaften fest, und das Modul liest sie vor. Das Modul erhält auch Benachrichtigungen über Änderungen an den gewünschten Eigenschaften. Verwenden Sie die gewünschten Eigenschaften zusammen mit gemeldeten Eigenschaften, um die Modulkonfiguration oder -bedingungen zu synchronisieren.
Gemeldete Eigenschaften. Das Modul legt gemeldete Eigenschaften fest, und das Lösungs-Back-End liest und fragt sie ab. Verwenden Sie gemeldete Eigenschaften zusammen mit den gewünschten Eigenschaften, um die Modulkonfiguration oder -bedingungen zu synchronisieren.
Gewünschte EdgeAgent-Eigenschaften
Der Modul twin für den IoT Edge Agent wird $edgeAgent genannt. Es koordiniert die Kommunikation zwischen dem auf einem Gerät ausgeführten IoT Edge-Agent und IoT Hub. Legen Sie die gewünschten Eigenschaften fest, wenn Sie ein Bereitstellungsmanifest auf ein bestimmtes Gerät als Teil eines Einzelgeräteeinsatzes oder einer großflächigen Bereitstellung anwenden.
| Eigenschaft | BESCHREIBUNG | Erforderlich |
|---|---|---|
imagePullPolicy |
Gibt an, wann das Bild abgerufen werden soll: OnCreate oder Never. Verwenden Sie "Nie ", wenn sich das Bild bereits auf dem Gerät befindet. | Ja |
restartPolicy |
Wann das Modul neu gestartet werden soll. Mögliche Werte sind: Never: Modul nicht neu starten, wenn es nicht läuft, Always: Modul immer neu starten, wenn es nicht läuft, On-Unhealthy: Modul neu starten, wenn es ungesund ist, On-Failed: neu starten, wenn fehlgeschlagen. Hinweis: Nur "Nie " und " Always " werden derzeit implementiert. On-Unhealthy und On-Failed werden vom Schema akzeptiert, initiieren jedoch keinen Neustart. Ausführliche Informationen finden Sie unter IoT Edge Grenzwerte und Einschränkungen. | Ja |
runtime.type |
Muss Docker sein. | Ja |
runtime.settings.minDockerVersion |
Gibt die mindeste Docker-Version an, die für dieses Bereitstellungsmanifest erforderlich ist. | Ja |
runtime.settings.loggingOptions |
Gibt einen zeichenfolgenbasierten JSON-Code mit den Protokollierungsoptionen für den IoT Edge-Agentcontainer an. Weitere Informationen zu Docker-Protokollierungsoptionen. | Nein |
runtime.settings.registryCredentials.{registryId}.username |
Gibt den Benutzernamen der Containerregistrierung an. Bei Azure Container Registry ist der Benutzername in der Regel der Registrierungsname. Registrierungsanmeldeinformationen sind für private Modulimages erforderlich. | Nein |
runtime.settings.registryCredentials.{registryId}.password |
Das Kennwort der Containerregistrierung. | Nein |
runtime.settings.registryCredentials.{registryId}.address |
Die Adresse der Containerregistrierung. Für Azure Container Registry ist die Adresse in der Regel {registry name}.azurecr.io. |
Nein |
schemaVersion |
Gibt entweder 1.0 oder 1.1 an. Version 1.1, eingeführt mit IoT Edge Version 1.0.10, wird empfohlen. | Ja |
status |
Gewünschter Status des Moduls: Wird ausgeführt oder Beendet. | Erforderlich |
systemModules.edgeAgent.type |
Muss Docker sein. | Ja |
systemModules.edgeAgent.startupOrder |
Gibt eine ganze Zahl für die Position des Moduls in der Startreihenfolge an. 0 ist an erster Stelle, und maximale ganze Zahl (4294967295) ist an letzter Stelle. Wenn Sie keinen Wert angeben, ist die Standardeinstellung eine maximale ganze Zahl. | Nein |
systemModules.edgeAgent.settings.image |
Gibt die URI des IoT Edge Agenten-Images an. Der IoT Edge Agent kann sich nicht selbst aktualisieren. | Ja |
systemModules.edgeAgent.settings.createOptions |
Gibt einen zeichenfolgenbasierten JSON-Code mit Optionen zum Erstellen des IoT Edge-Agentcontainers an. Erfahren Sie mehr über Docker-Erstellungsoptionen. | Nein |
systemModules.edgeAgent.configuration.id |
Die ID der Bereitstellung, von der dieses Modul bereitgestellt wurde. | IoT Hub legt diese Eigenschaft fest, wenn Sie das Manifest mithilfe einer Bereitstellung anwenden. Nicht Teil eines Bereitstellungsmanifests. |
systemModules.edgeHub.type |
Muss Docker sein. | Ja |
systemModules.edgeHub.status |
Muss aktiv sein. | Ja |
systemModules.edgeHub.restartPolicy |
Muss immer der Fall sein. | Ja |
systemModules.edgeHub.startupOrder |
Ein ganzzahliger Wert für die Position eines Moduls in der Startreihenfolge. 0 ist der erste und die maximale ganze Zahl (4294967295) ist der letzte Speicherort. Wenn Sie keinen Wert angeben, ist die Standardeinstellung eine maximale ganze Zahl. | Nein |
systemModules.edgeHub.settings.image |
Der URI des Bilds des IoT Edge Hubs. | Ja |
systemModules.edgeHub.settings.createOptions |
Ein Zeichenfolgen-JSON mit den Optionen für die Erstellung des IoT Edge Hubcontainers. Docker-Erstellungsoptionen | Nein |
systemModules.edgeHub.configuration.id |
Die ID der Bereitstellung, von der dieses Modul bereitgestellt wurde. | IoT Hub legt diese Eigenschaft fest, wenn Sie das Manifest mithilfe einer Bereitstellung anwenden. Nicht Teil eines Bereitstellungsmanifests. |
modules.{moduleId}.version |
Benutzerdefinierte Zeichenfolge, die die Version des Moduls darstellt. | Ja |
modules.{moduleId}.type |
Muss Docker sein. | Ja |
modules.{moduleId}.status |
Läuft | Gestoppt | Ja |
modules.{moduleId}.restartPolicy |
Nie | Immer | Ja |
modules.{moduleId}.startupOrder |
Ein ganzzahliger Wert für den Speicherort eines Moduls in der Startreihenfolge. 0 ist der erste und die maximale ganze Zahl (4294967295) ist der letzte Speicherort. Wenn Sie keinen Wert angeben, ist die Standardeinstellung eine maximale ganze Zahl. | Nein |
modules.{moduleId}.imagePullPolicy |
on-create | nie | Nein |
modules.{moduleId}.env |
Eine Liste von Umgebungsvariablen, die an das Modul übergeben werden. Nimmt das Format "<name>": {"value": "<value>"} entgegen. |
Nein |
modules.{moduleId}.settings.image |
URI des Modulimage. | Ja |
modules.{moduleId}.settings.createOptions |
In eine Zeichenfolge umgewandelter JSON-Code mit den Optionen für die Erstellung des Modulcontainers. Docker-Erstellungsoptionen | Nein |
modules.{moduleId}.configuration.id |
Die ID der Bereitstellung, von der dieses Modul bereitgestellt wurde. | IoT Hub legt diese Eigenschaft fest, wenn Sie das Manifest mithilfe einer Bereitstellung anwenden. Nicht Teil eines Bereitstellungsmanifests. |
version |
Die aktuelle Iteration mit Version, Commit und Build. | Nein |
Gemeldete EdgeAgent-Eigenschaften
Die von IoT Edge gemeldeten Eigenschaften des Agents umfassen drei Hauptinformationen:
- Status der Anwendung der zuletzt gesehenen gewünschten Eigenschaften,
- Status der Module, die derzeit auf dem Gerät ausgeführt werden, wie vom IoT Edge-Agent gemeldet, und
- Kopie der gewünschten Eigenschaften, die derzeit auf dem Gerät ausgeführt werden.
Die Kopie der aktuellen gewünschten Eigenschaften hilft Ihnen zu ermitteln, ob das Gerät die neueste Bereitstellung angewendet hat oder noch ein vorheriges Bereitstellungsmanifest ausführt.
Hinweis
Sie können die von IoT Edge gemeldeten Eigenschaften des Agents mithilfe der IoT Hub-Abfragesprache abfragen, um den Bereitstellungsstatus in großem Umfang zu untersuchen. Informationen zur Verwendung von IoT Edge-Agent-Eigenschaften für Statuszwecke finden Sie unter Verstehen Sie IoT Edge Bereitstellungen für einzelne Geräte oder im großen Maßstab.
Die folgende Tabelle enthält nicht die Informationen, die aus den gewünschten Eigenschaften kopiert werden.
| Eigenschaft | BESCHREIBUNG |
|---|---|
lastDesiredStatus.code |
Statuscode für die letzten gewünschten Eigenschaften, die vom IoT Edge-Agent angezeigt werden. Zulässige Werte: 200 Erfolg, 400 Ungültige Konfiguration, 412 Ungültige Schemaversion, 417 Die gewünschten Eigenschaften sind leer, 500 Fehler. |
lastDesiredStatus.description |
Textbeschreibung des Status. |
lastDesiredVersion |
Diese ganze Zahl bezieht sich auf die letzte Version der gewünschten Eigenschaften, die vom IoT Edge-Agent verarbeitet werden. |
runtime.platform.OS |
Meldet das Betriebssystem, das auf dem Gerät ausgeführt wird. |
runtime.platform.architecture |
Meldet die CPU-Architektur auf dem Gerät. |
schemaVersion |
Schemaversion der gemeldeten Eigenschaften. |
systemModules.edgeAgent.runtimeStatus |
Der gemeldete Status des IoT Edge Agents: { läuft | fehlerhaft }. |
systemModules.edgeAgent.statusDescription |
Textbeschreibung des gemeldeten Status des IoT Edge Agenten. |
systemModules.edgeAgent.exitCode |
Der vom IoT Edge-Agentcontainer gemeldete Exitcode beim Beenden des Containers. |
systemModules.edgeAgent.lastStartTimeUtc |
Zeitpunkt, zu dem IoT Edge Agent zuletzt gestartet wurde. |
systemModules.edgeAgent.lastExitTimeUtc |
Zeitpunkt, zu dem IoT Edge Agent zuletzt beendet wurde. |
systemModules.edgeHub.runtimeStatus |
Status des IoT Edge-Hubs: { running | stopped | failed | backoff | unhealthy }. |
systemModules.edgeHub.statusDescription |
Textbeschreibung des aktuellen Status des IoT Edge-Hubs, falls „fehlerhaft“ |
systemModules.edgeHub.exitCode |
Der vom IoT Edge-Hubcontainer gemeldete Exitcode beim Beenden des Containers. |
systemModules.edgeHub.lastStartTimeUtc |
Zeitpunkt, zu dem IoT Edge Hub zuletzt gestartet wurde. |
systemModules.edgeHub.lastExitTimeUtc |
Zeitraum, zu dem der IoT Edge Hub zuletzt verlassen wurde. |
systemModules.edgeHub.lastRestartTimeUtc |
Zeitpunkt, zu dem IoT Edge Hub zuletzt neu gestartet wurde. |
systemModules.edgeHub.restartCount |
Neustarthäufigkeit dieses Moduls aufgrund der Neustartrichtlinie |
modules.{moduleId}.runtimeStatus |
Status des Moduls: { running | stopped | failed | backoff | unhealthy }. |
modules.{moduleId}.statusDescription |
Textbeschreibung des Modulstatus, falls „fehlerhaft“. |
modules.{moduleId}.exitCode |
Der vom Modulcontainer gemeldete Exitcode beim Beenden des Containers. |
modules.{moduleId}.lastStartTimeUtc |
Zeitpunkt, zu dem das Modul zuletzt gestartet wurde |
modules.{moduleId}.lastExitTimeUtc |
Zeitpunkt des letzten Modulstarts. |
modules.{moduleId}.lastRestartTimeUtc |
Zeitpunkt, zu dem das Modul zuletzt neu gestartet wurde |
modules.{moduleId}.restartCount |
Neustarthäufigkeit dieses Moduls aufgrund der Neustartrichtlinie |
version |
Version des Images. Beispiel: "version": { "version": "1.2.7", "build": "50979330", "commit": "d3ec971caa0af0fc39d2c1f91aef21e95bd0c03c" }. |
Gewünschte EdgeHub-Eigenschaften
Das Modul twin für einen IoT Edge Hub wird $edgeHub genannt. Es koordiniert die Kommunikation zwischen dem IoT Edge Hub, der auf einem Gerät ausgeführt wird, und IoT Hub. Legen Sie die gewünschten Eigenschaften fest, wenn Sie ein Bereitstellungsmanifest auf ein bestimmtes Gerät als Teil eines Einzelgeräteeinsatzes oder einer großflächigen Bereitstellung anwenden.
| Eigenschaft | BESCHREIBUNG | Im Bereitstellungsmanifest erforderlich |
|---|---|---|
schemaVersion |
Entweder „1.0“ oder „1.1“. Version 1.1 wurde mit IoT Edge Version 1.0.10 eingeführt und wird empfohlen. | Ja |
routes.{routeName} |
Eine Zeichenfolge, die eine IoT Edge Hubroute darstellt. Weitere Informationen finden Sie unter Deklarieren von Routen. | Das routes-Element kann vorhanden, aber leer sein. |
storeAndForwardConfiguration.timeToLiveSecs |
Gerätezeit in Sekunden, für die der IoT Edge-Hub Nachrichten nach einer Trennung von Routingendpunkten aufbewahrt, beispielsweise von einem IoT Hub oder einem lokalen Modul. Diese Zeit wird über jegliche Abschaltungen oder Neustarts beibehalten. Weitere Informationen finden Sie unter Offlinefunktionen. | Ja |
Gemeldete EdgeHub-Eigenschaften
| Eigenschaft | BESCHREIBUNG |
|---|---|
lastDesiredVersion |
Diese ganze Zahl bezieht sich auf die letzte Version der gewünschten Eigenschaften, die vom IoT Edge Hub verarbeitet werden. |
lastDesiredStatus.code |
Der Statuscode, der auf die zuletzt gewünschten Eigenschaften verweist, die vom IoT Edge Hub angezeigt werden. Zulässige Werte: 200 Erfolg, 400 Ungültige Konfiguration, 500 Fehlgeschlagen. |
lastDesiredStatus.description |
Textbeschreibung des Status. |
clients |
Alle Clients, die mit EdgeHub verbunden sind, mit dem Status und der letzten Verbindungszeit. Beispiel: "clients": { "device2/SimulatedTemperatureSensor": { "status": "Connected", "lastConnectedTimeUtc": "2022-11-17T21:49:16.4781564Z" } }. |
clients.{device or moduleId}.status |
Konnektivitätsstatus dieses Geräts oder Moduls. Mögliche Werte: verbunden oder getrennt. Nur Modulidentitäten können den Status „disconnected“ aufweisen. Nachgeschaltete Geräte, die eine Verbindung mit IoT Edge Hub herstellen, werden nur angezeigt, wenn eine Verbindung hergestellt wird. |
clients.{device or moduleId}.lastConnectTime |
Letzter Verbindungszeitpunkt des Geräts oder Moduls. |
clients.{device or moduleId}.lastDisconnectTime |
Letzter Trennungszeitpunkt des Geräts oder Moduls. |
schemaVersion |
Schemaversion der gemeldeten Eigenschaften. |
version |
Version des Images. Beispiel: "version": { "version": "1.2.7", "build": "50979330", "commit": "d3ec971caa0af0fc39d2c1f91aef21e95bd0c03c" }. |
Nächste Schritte
Informationen zur Verwendung dieser Eigenschaften zum Erstellen von Bereitstellungsmanifesten finden Sie unter Understand, wie IoT Edge Module verwendet, konfiguriert und wiederverwendet werden können.