Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:
IoT Edge 1,5
Belangrijk
IoT Edge 1.5 LTS is de ondersteunde release. IoT Edge 1.4 LTS bereikt het einde van de levensduur op 12 november 2024. Als u een eerdere versie gebruikt, raadpleegt u Update IoT Edge.
De IoT Edge-agent en IoT Edge hub zijn twee modules waaruit de IoT Edge runtime bestaat. Zie begrijp de Azure IoT Edge-runtime en bijbehorende architectuur voor meer informatie over de verantwoordelijkheden van elke runtimemodule.
Dit artikel bevat de gewenste eigenschappen en gerapporteerde eigenschappen van de runtime module tweelingen. Zie voor meer informatie over het implementeren van modules op IoT Edge apparaten hoe u modules implementeert en routes in IoT Edge instelt.
Een moduledubbel bevat:
Gewenste eigenschappen. De back-end van de oplossing stelt de gewenste eigenschappen in en de module leest deze. De module ontvangt ook meldingen van wijzigingen in de gewenste eigenschappen. Gebruik de gewenste eigenschappen samen met gerapporteerde eigenschappen om de configuratie of voorwaarden van de module te synchroniseren.
Gerapporteerde eigenschappen. De module stelt gerapporteerde eigenschappen in en de back-end van de oplossing leest en voert er query's op uit. Gebruik gerapporteerde eigenschappen samen met de gewenste eigenschappen om de configuratie of voorwaarden van de module te synchroniseren.
Gewenste eigenschappen van EdgeAgent
De moduledubbel voor de IoT Edge-agent wordt $edgeAgent genoemd. Het coördineert de communicatie tussen de IoT Edge-agent die wordt uitgevoerd op een apparaat en IoT Hub. Stel de gewenste eigenschappen in wanneer u een implementatiemanifest toepast op een specifiek apparaat als onderdeel van een implementatie met één apparaat of op schaal.
| Eigenschap | Beschrijving | Vereist |
|---|---|---|
imagePullPolicy |
Hiermee geeft u op wanneer de afbeelding moet worden opgehaald: OnCreate or Never. Gebruik Nooit wanneer de afbeelding al op het apparaat staat. | Ja |
restartPolicy |
Wanneer start u de module opnieuw op. Mogelijke waarden zijn: nooit: start de module niet opnieuw als deze niet actief is, on-failure: herstart de module als deze wordt afgesloten met een niet-nul afsluitcode, on-ongezond: herstart de module indien deze ongezond is (zie opmerking), altijd: herstart de module altijd als deze niet actief is.
Opmerking: Het on-failure beleid start modules die afsluiten met een niet-nul exitcode opnieuw. Het on-unhealthy beleid wordt geaccepteerd door het schema, maar de runtime leidt momenteel geen beschadigde status af van Docker-statuscontroles, dus dit heeft geen praktisch effect. Zie IoT Edge limieten en beperkingen voor meer informatie. |
Ja |
runtime.type |
Moet docker zijn. | Ja |
runtime.settings.minDockerVersion |
Hiermee geeft u de minimale Docker-versie op die is vereist voor dit implementatiemanifest. | Ja |
runtime.settings.loggingOptions |
Hiermee geeft u een tekenreeks-JSON op met de logboekregistratieopties voor de IoT Edge agentcontainer. Meer informatie over opties voor Docker-logboekregistratie. | Nee |
runtime.settings.registryCredentials.{registryId}.username |
Geeft de gebruikersnaam van het containerregister op. Voor Azure Container Registry is de gebruikersnaam meestal de registernaam. Aanmeldgegevens zijn vereist voor afbeeldingen van privémodules. | Nee |
runtime.settings.registryCredentials.{registryId}.password |
Het wachtwoord voor het containerregister. | Nee |
runtime.settings.registryCredentials.{registryId}.address |
Het adres van het containerregister. Voor Azure Container Registry is het adres meestal {registry name}.azurecr.io. |
Nee |
schemaVersion |
Hiermee geeft u 1.0 of 1.1. Versie 1.1, geïntroduceerd met IoT Edge versie 1.0.10, wordt aanbevolen. | Ja |
status |
Gewenste status van de module: Actief of Gestopt. | Vereist |
systemModules.edgeAgent.type |
Moet docker zijn. | Ja |
systemModules.edgeAgent.startupOrder |
Hiermee geeft u een geheel getal op voor de positie van de module in de opstartvolgorde. 0 is eerst en het maximum aantal gehele getallen (4294967295) is de laatste. Als u geen waarde opgeeft, is de standaardwaarde het maximum gehele getal. | Nee |
systemModules.edgeAgent.settings.image |
Hiermee geeft u de URI van het IoT Edge agentafbeelding op. De IoT Edge-agent kan zichzelf niet bijwerken. | Ja |
systemModules.edgeAgent.settings.createOptions |
Hiermee geeft u een tekenreeks-JSON op met opties voor het maken van de IoT Edge agentcontainer. Meer informatie over opties voor Het maken van Docker. | Nee |
systemModules.edgeAgent.configuration.id |
De id van de implementatie die deze module heeft geïmplementeerd. | IoT Hub deze eigenschap instelt wanneer u het manifest toepast met behulp van een implementatie. Geen deel uit van een implementatiemanifest. |
systemModules.edgeHub.type |
Moet docker zijn. | Ja |
systemModules.edgeHub.status |
Moet worden uitgevoerd. | Ja |
systemModules.edgeHub.restartPolicy |
Dat moet altijd zo zijn. | Ja |
systemModules.edgeHub.startupOrder |
Een geheel getal dat aangeeft op welke plek een module in de opstartvolgorde staat. Een 0 is het eerste getal en het maximum aantal gehele getallen (4294967295) is de laatste. Als u geen waarde opgeeft, is de standaardwaarde het maximum gehele getal. | Nee |
systemModules.edgeHub.settings.image |
De URI van de afbeelding van de IoT Edge hub. | Ja |
systemModules.edgeHub.settings.createOptions |
Een JSON-tekenreeks met de opties voor het maken van de IoT Edge hub-container. Opties voor Docker-maken | Nee |
systemModules.edgeHub.configuration.id |
De id van de implementatie die deze module heeft geïmplementeerd. | IoT Hub deze eigenschap instelt wanneer u het manifest toepast met behulp van een implementatie. Geen deel uit van een implementatiemanifest. |
modules.{moduleId}.version |
Een door de gebruiker gedefinieerde tekenreeks die de versie van deze module vertegenwoordigt. | Ja |
modules.{moduleId}.type |
Moet docker zijn. | Ja |
modules.{moduleId}.status |
Met | Gestopt | Ja |
modules.{moduleId}.restartPolicy |
Nooit | bij-fout | bij-ongezond | Altijd | Ja |
modules.{moduleId}.startupOrder |
Een geheel getal voor de locatie die een module heeft in de opstartvolgorde. Een 0 is het eerste getal en het maximum aantal gehele getallen (4294967295) is de laatste. Als u geen waarde opgeeft, is de standaardwaarde het maximum gehele getal. | Nee |
modules.{moduleId}.imagePullPolicy |
on-create | Nooit | Nee |
modules.{moduleId}.env |
Een lijst met omgevingsvariabelen die aan de module moeten worden doorgegeven. Neemt het formaat "<name>": {"value": "<value>"}. |
Nee |
modules.{moduleId}.settings.image |
De URI voor de moduleafbeelding. | Ja |
modules.{moduleId}.settings.createOptions |
Een tekenreeks-JSON met de opties voor het maken van de modulecontainer. Opties voor Docker-maken | Nee |
modules.{moduleId}.configuration.id |
De id van de implementatie die deze module heeft geïmplementeerd. | IoT Hub deze eigenschap instelt wanneer u het manifest toepast met behulp van een implementatie. Geen deel uit van een implementatiemanifest. |
version |
De huidige iteratie met versie, commit en build. | Nee |
Gerapporteerde eigenschappen van EdgeAgent
IoT Edge gerapporteerde eigenschappen van de agent bevatten drie belangrijke gegevens:
- Status van de toepassing van de laatst geziene gewenste eigenschappen,
- Status van de modules die momenteel op het apparaat worden uitgevoerd, zoals gerapporteerd door de IoT Edge-agent en
- Kopie van de gewenste eigenschappen die momenteel op het apparaat worden uitgevoerd.
Met de kopie van de huidige gewenste eigenschappen kunt u bepalen of het apparaat de meest recente implementatie heeft toegepast of nog steeds een eerder implementatiemanifest uitvoert.
Notitie
U kunt query's uitvoeren op de gerapporteerde eigenschappen van de IoT Edge-agent met behulp van de IoT Hub querytaal om de implementatiestatus op schaal te onderzoeken. Zie Onderstand IoT Edge implementaties voor afzonderlijke apparaten of op schaal voor informatie over het gebruik van IoT Edge agenteigenschappen voor status.
De volgende tabel bevat niet de informatie die wordt gekopieerd uit de gewenste eigenschappen.
| Eigenschap | Beschrijving |
|---|---|
lastDesiredStatus.code |
Statuscode voor de laatst gewenste eigenschappen die door de IoT Edge-agent worden gezien. Toegestane waarden: 200 Geslaagd, 400 Ongeldige configuratie, 412 Ongeldige schemaversie, 417 Gewenste eigenschappen zijn leeg, 500 Mislukt. |
lastDesiredStatus.description |
Tekstbeschrijving van de status. |
lastDesiredVersion |
Dit gehele getal verwijst naar de laatste versie van de gewenste eigenschappen die door de IoT Edge-agent worden verwerkt. |
runtime.platform.OS |
Rapporteert het besturingssysteem dat wordt uitgevoerd op het apparaat. |
runtime.platform.architecture |
Rapporteert de CPU-architectuur op het apparaat. |
schemaVersion |
Schemaversie van gerapporteerde eigenschappen. |
systemModules.edgeAgent.runtimeStatus |
De gerapporteerde status van IoT Edge-agent: { actief | ongezond }. |
systemModules.edgeAgent.statusDescription |
Tekstbeschrijving van de gerapporteerde status van de IoT Edge-agent. |
systemModules.edgeAgent.exitCode |
De afsluitcode die door de IoT Edge agentcontainer wordt gerapporteerd als de container wordt afgesloten. |
systemModules.edgeAgent.lastStartTimeUtc |
Tijdstip waarop IoT Edge agent voor het laatst is gestart. |
systemModules.edgeAgent.lastExitTimeUtc |
Tijdstip waarop IoT Edge agent voor het laatst is afgesloten. |
systemModules.edgeHub.runtimeStatus |
Status van IoT Edge hub: { draaiend | gestopt | gefaald | terugtrekken | ongezond }. |
systemModules.edgeHub.statusDescription |
Tekstbeschrijving van de status van IoT Edge hub, indien niet-gezond. |
systemModules.edgeHub.exitCode |
Afsluitcode die is gerapporteerd door de IoT Edge hubcontainer, als de container wordt afgesloten. |
systemModules.edgeHub.lastStartTimeUtc |
Tijdstip waarop IoT Edge hub voor het laatst is gestart. |
systemModules.edgeHub.lastExitTimeUtc |
Tijd waarop de IoT Edge hub voor het laatst is gestopt. |
systemModules.edgeHub.lastRestartTimeUtc |
Tijdstip waarop IoT Edge hub voor het laatst opnieuw is opgestart. |
systemModules.edgeHub.restartCount |
Aantal keren dat deze module opnieuw is opgestart als onderdeel van het beleid voor opnieuw opstarten. |
modules.{moduleId}.runtimeStatus |
Status van de module: { actief | gestopt | mislukt | backoff | ongezond }. |
modules.{moduleId}.statusDescription |
Tekstbeschrijving van de status van de module, indien beschadigd. |
modules.{moduleId}.exitCode |
De afsluitcode die door de modulecontainer wordt gerapporteerd, als de container wordt afgesloten. |
modules.{moduleId}.lastStartTimeUtc |
Tijdstip waarop de module voor het laatst is gestart. |
modules.{moduleId}.lastExitTimeUtc |
Tijdstip waarop de module voor het laatst is afgesloten. |
modules.{moduleId}.lastRestartTimeUtc |
Tijdstip waarop de module voor het laatst opnieuw is opgestart. |
modules.{moduleId}.restartCount |
Aantal keren dat deze module opnieuw is opgestart als onderdeel van het beleid voor opnieuw opstarten. |
version |
Versie van de afbeelding. Voorbeeld: "version": { "version": "1.2.7", "build": "50979330", "commit": "d3ec971caa0af0fc39d2c1f91aef21e95bd0c03c" }. |
Gewenste eigenschappen van EdgeHub
De moduledubbel voor een IoT Edge hub wordt $edgeHub genoemd. Het coördineert de communicatie tussen de IoT Edge hub die op een apparaat draait en de IoT Hub. Stel de gewenste eigenschappen in wanneer u een implementatiemanifest toepast op een specifiek apparaat als onderdeel van een implementatie met één apparaat of op schaal.
| Eigenschap | Beschrijving | Vereist in het implementatiemanifest |
|---|---|---|
schemaVersion |
1.0 ofwel 1.1. Versie 1.1 is geïntroduceerd met IoT Edge versie 1.0.10 en wordt aanbevolen. | Ja |
routes.{routeName} |
Een tekenreeks die een IoT Edge hubroute vertegenwoordigt. Zie Routes declareren voor meer informatie. | Het routes element kan aanwezig zijn, maar leeg zijn. |
storeAndForwardConfiguration.timeToLiveSecs |
De tijd in seconden die het IoT Edge hub apparaat berichten bewaart als de verbinding met routeringseindpunten verbroken is, ongeacht of het een IoT Hub of een lokale module betreft. Deze tijd blijft bestaan, ongeacht stroomuitval of herstarten. Zie Offline-mogelijkheden voor meer informatie. | Ja |
Gerapporteerde eigenschappen van EdgeHub
| Eigenschap | Beschrijving |
|---|---|
lastDesiredVersion |
Dit gehele getal verwijst naar de laatste versie van de gewenste eigenschappen die door de IoT Edge hub worden verwerkt. |
lastDesiredStatus.code |
De statuscode die verwijst naar de laatst gewenste eigenschappen die worden gezien door de IoT Edge hub. Toegestane waarden: 200 Geslaagd, 400 Ongeldige configuratie, 500 Mislukt. |
lastDesiredStatus.description |
Tekstbeschrijving van de status. |
clients |
Alle clients die zijn verbonden met EdgeHub met de status en de laatste verbonden tijd. Voorbeeld: "clients": { "device2/SimulatedTemperatureSensor": { "status": "Connected", "lastConnectedTimeUtc": "2022-11-17T21:49:16.4781564Z" } }. |
clients.{device or moduleId}.status |
De connectiviteitsstatus van dit apparaat of deze module. Mogelijke waarden: verbonden of verbroken. Alleen module-identiteiten kunnen losgekoppeld zijn. Downstreamapparaten die verbinding maken met IoT Edge hub, worden alleen weergegeven wanneer ze zijn verbonden. |
clients.{device or moduleId}.lastConnectTime |
De laatste keer dat het apparaat of de module is verbonden. |
clients.{device or moduleId}.lastDisconnectTime |
De laatste keer dat de verbinding met het apparaat of de module is verbroken. |
schemaVersion |
Schemaversie van gerapporteerde eigenschappen. |
version |
Versie van de afbeelding. Voorbeeld: "version": { "version": "1.2.7", "build": "50979330", "commit": "d3ec971caa0af0fc39d2c1f91aef21e95bd0c03c" }. |
Volgende stappen
Zie Onderstand hoe IoT Edge modules kunnen worden gebruikt, geconfigureerd en hergebruikt voor meer informatie over het gebruik van deze eigenschappen om implementatiemanifesten uit te bouwen.