Vlastnosti dvojčat modulů ioT Edge a agenta IoT Edge

Platí pro: Značka zaškrtnutí IoT Edge 1.5 IoT Edge 1.5 Značka zaškrtnutí IoT Edge 1.4 IoT Edge 1.4

Důležité

Podporované verze ioT Edge 1.5 LTS a IoT Edge 1.4 LTS. IoT Edge 1.4 LTS je konec životnosti 12. listopadu 2024. Pokud používáte starší verzi, podívejte se na článek Aktualizace IoT Edge.

Agent IoT Edge a Centrum IoT Edge jsou dva moduly, které tvoří modul runtime IoT Edge. Další informace o zodpovědnostech jednotlivých modulů modulu runtime najdete v tématu Vysvětlení modulu runtime Azure IoT Edge a jeho architektury.

Tento článek obsahuje požadované vlastnosti a ohlášené vlastnosti dvojčat modulu runtime. Další informace o nasazení modulů na zařízeních IoT Edge najdete v tématu Informace o nasazení modulů a vytváření tras v IoT Edge.

Dvojče modulu zahrnuje:

  • Požadované vlastnosti. Back-end řešení může nastavit požadované vlastnosti a modul je může přečíst. Modul také může dostávat oznámení o změnách požadovaných vlastností. Požadované vlastnosti se používají spolu s ohlášenými vlastnostmi k synchronizaci konfigurace nebo podmínek modulu.

  • Ohlášené vlastnosti Modul může nastavit ohlášené vlastnosti a back-end řešení je může číst a dotazovat. Ohlášené vlastnosti se používají spolu s požadovanými vlastnostmi k synchronizaci konfigurace nebo podmínek modulu.

Požadované vlastnosti agenta EdgeAgent

Volá se dvojče modulu pro agenta $edgeAgent IoT Edge a koordinuje komunikaci mezi agentem IoT Edge spuštěným na zařízení a službou IoT Hub. Požadované vlastnosti se nastaví při použití manifestu nasazení na konkrétním zařízení jako součást nasazení s jedním zařízením nebo nasazením ve velkém měřítku.

Vlastnost Popis Povinní účastníci
imagePullPolicy Kdy vyžádat image v onCreate nebo Never (Nikdy se nedá použít, pokud už je image na zařízení) Ano
restartPolicy Po restartování modulu. Možné hodnoty jsou: Nikdy: nerestartujte modul, pokud není spuštěný, Vždy: vždy restartovat modul, pokud není spuštěný, On-Není v pořádku: Restartovat modul, pokud není v pořádku. V pořádku je to, co Docker hlásí na základě kontroly stavu, například "Není v pořádku – kontejner nefunguje správně", on-Failed: Restart if Failed. Ano
runtime.type Musí být Docker. Ano
runtime.settings.minDockerVersion Nastavte minimální verzi Dockeru vyžadovanou tímto manifestem nasazení. Ano
runtime.settings.loggingOptions Řetězecifikovaný JSON obsahující možnosti protokolování pro kontejner agenta IoT Edge. Možnosti protokolování Dockeru No
runtime.settings.registryCredentials. {registryId}.username Uživatelské jméno registru kontejneru. V případě služby Azure Container Registry je uživatelské jméno obvykle názvem registru. Přihlašovací údaje registru jsou nezbytné pro všechny image privátních modulů. No
runtime.settings.registryCredentials. {registryId}.password Heslo pro registr kontejneru. No
runtime.settings.registryCredentials. {registryId}.address Adresa registru kontejneru. Pro Azure Container Registry je adresa obvykle {název_registru}.azurecr.io. No
schemaVersion Buď 1.0 , nebo 1.1. Verze 1.1 byla zavedena se službou IoT Edge verze 1.0.10 a doporučuje se. Ano
stav Požadovaný stav modulu: Spuštěno nebo Zastaveno Požaduje se
systemModules.edgeAgent.type Musí být Docker. Ano
systemModules.edgeAgent.startupOrder Celočíselná hodnota pro umístění, které má modul v pořadí spuštění. Hodnota 0 je první a maximální celé číslo (4294967295) je poslední. Pokud není zadaná hodnota, výchozí hodnota je maximální celé číslo. No
systemModules.edgeAgent.settings.image Identifikátor URI image agenta IoT Edge. Agent IoT Edge se v současné době nemůže aktualizovat sám. Ano
systemModules.edgeAgent.settings.createOptions Řetězecifikovaný JSON obsahující možnosti pro vytvoření kontejneru agenta IoT Edge. Možnosti vytvoření Dockeru No
systemModules.edgeAgent.configuration.id ID nasazení, které tento modul nasadila. IoT Hub tuto vlastnost nastaví při použití manifestu pomocí nasazení. Není součástí manifestu nasazení.
systemModules.edgeHub.type Musí být Docker. Ano
systemModules.edgeHub.status Musí běžet. Ano
systemModules.edgeHub.restartPolicy Musí být vždy. Ano
systemModules.edgeHub.startupOrder Celočíselná hodnota, pro kterou má modul v pořadí spuštění. Hodnota 0 je první a maximální celé číslo (4294967295) je poslední. Pokud není zadaná hodnota, výchozí hodnota je maximální celé číslo. No
systemModules.edgeHub.settings.image Identifikátor URI image centra IoT Edge. Ano
systemModules.edgeHub.settings.createOptions Řetězecifikovaný JSON obsahující možnosti pro vytvoření kontejneru centra IoT Edge. Možnosti vytvoření Dockeru No
systemModules.edgeHub.configuration.id ID nasazení, které tento modul nasadila. IoT Hub tuto vlastnost nastaví při použití manifestu pomocí nasazení. Není součástí manifestu nasazení.
moduly. {moduleId}.version Uživatelem definovaný řetězec představující verzi tohoto modulu. Ano
moduly. {moduleId}.type Musí být Docker. Ano
moduly. {moduleId}.status {running | stopped} Ano
moduly. {moduleId}.restartPolicy {nikdy nikdy | } Ano
moduly. {moduleId}.startupOrder Celočíselná hodnota pro umístění, které má modul v pořadí spuštění. Hodnota 0 je první a maximální celé číslo (4294967295) je poslední. Pokud není zadaná hodnota, výchozí hodnota je maximální celé číslo. No
moduly. {moduleId}.imagePullPolicy {on-create | never} No
moduly. {moduleId}.env Seznam proměnných prostředí, které se mají předat modulu. Vezme formát "<name>": {"value": "<value>"}. No
moduly. {moduleId}.settings.image Identifikátor URI image modulu. Ano
moduly. {moduleId}.settings.createOptions Stringifikovaný JSON obsahující možnosti pro vytvoření kontejneru modulu. Možnosti vytvoření Dockeru No
moduly. {moduleId}.configuration.id ID nasazení, které tento modul nasadila. IoT Hub tuto vlastnost nastaví při použití manifestu pomocí nasazení. Není součástí manifestu nasazení.
version Aktuální iterace s verzí, potvrzením a sestavením. No

Ohlášené vlastnosti agenta EdgeAgent

Ohlášené vlastnosti agenta IoT Edge zahrnují tři hlavní informace:

  1. Stav použití naposledy pozorovaných požadovaných vlastností;
  2. Stav modulů aktuálně spuštěných na zařízení, jak hlásí agent IoT Edge; a
  3. Kopie požadovanýchvlastnostích

Kopie aktuálních požadovaných vlastností je užitečná k určení, jestli zařízení použilo nejnovější nasazení, nebo stále používá předchozí manifest nasazení.

Poznámka:

Ohlášené vlastnosti agenta IoT Edge jsou užitečné, protože se dají dotazovat pomocí dotazovacího jazyka služby IoT Hub, aby bylo možné prozkoumat stav nasazení ve velkém měřítku. Další informace o použití vlastností agenta IoT Edge pro stav najdete v tématu Vysvětlení nasazení IoT Edge pro jednotlivá zařízení nebo ve velkém měřítku.

Následující tabulka neobsahuje informace zkopírované z požadovaných vlastností.

Vlastnost Popis
lastDesiredStatus.code Tento stavový kód odkazuje na poslední požadované vlastnosti, které vidí agent IoT Edge. Povolené hodnoty: 200 Úspěch, 400 Neplatná konfigurace, 412 Neplatná verze schématu, 417 Požadované vlastnosti jsou prázdné, 500 Selhání.
lastDesiredStatus.description Textový popis stavu
lastDesiredVersion Toto celé číslo odkazuje na poslední verzi požadovaných vlastností zpracovaných agentem IoT Edge.
runtime.platform.OS Hlášení operačního systému spuštěného na zařízení
runtime.platform.architecture Generování sestav architektury procesoru na zařízení
schemaVersion Verze schématu ohlášených vlastností
systemModules.edgeAgent.runtimeStatus Nahlášený stav agenta IoT Edge: {spuštěný | není v pořádku}.
systemModules.edgeAgent.statusDescription Textový popis nahlášeného stavu agenta IoT Edge.
systemModules.edgeAgent.exitCode Ukončovací kód nahlášený kontejnerem agenta IoT Edge, pokud se kontejner ukončí.
systemModules.edgeAgent.lastStartTimeUtc Čas posledního spuštění agenta IoT Edge
systemModules.edgeAgent.lastExitTimeUtc Čas posledního ukončení agenta IoT Edge
systemModules.edgeHub.runtimeStatus Stav centra IoT Edge: { spuštěno | zastaveno navrácení | služeb po obnovení | | není v pořádku }.
systemModules.edgeHub.statusDescription Textový popis stavu centra IoT Edge, pokud není v pořádku.
systemModules.edgeHub.exitCode Ukončovací kód nahlášený kontejnerem centra IoT Edge, pokud se kontejner ukončí.
systemModules.edgeHub.lastStartTimeUtc Čas posledního spuštění centra IoT Edge
systemModules.edgeHub.lastExitTimeUtc Čas posledního ukončení centra IoT Edge
systemModules.edgeHub.lastRestartTimeUtc Čas posledního restartování centra IoT Edge
systemModules.edgeHub.restartCount Počet restartování tohoto modulu v rámci zásad restartování
moduly. {moduleId}.runtimeStatus Stav modulu: { spuštěno | zastaveno | navrácení služeb při selhání | | není v pořádku }.
moduly. {moduleId}.statusDescription Textový popis stavu modulu, pokud není v pořádku.
moduly. {moduleId}.exitCode Ukončovací kód hlášený kontejnerem modulu, pokud se kontejner ukončí.
moduly. {moduleId}.lastStartTimeUtc Čas posledního spuštění modulu
moduly. {moduleId}.lastExitTimeUtc Čas posledního ukončení modulu
moduly. {moduleId}.lastRestartTimeUtc Čas posledního restartování modulu
moduly. {moduleId}.restartCount Počet restartování tohoto modulu v rámci zásad restartování
version Verze image Příklad: "version": { "version": "1.2.7", "build": "50979330", "commit": "d3ec971caa0af0fc39d2c1f91aef21e95bd0c03c" }.

Požadované vlastnosti EdgeHubu

Dvojče modulu pro centrum IoT Edge se volá $edgeHub a koordinuje komunikaci mezi centrem IoT Edge spuštěným na zařízení a IoT Hubem. Požadované vlastnosti se nastaví při použití manifestu nasazení na konkrétním zařízení jako součást nasazení s jedním zařízením nebo nasazením ve velkém měřítku.

Vlastnost Popis Požadováno v manifestu nasazení
schemaVersion Buď 1.0, nebo 1.1. Verze 1.1 byla zavedena se službou IoT Edge verze 1.0.10 a doporučuje se. Ano
trasy. {routeName} Řetězec představující trasu centra IoT Edge. Další informace naleznete v tématu Deklarování tras. Prvek routes může být přítomný, ale prázdný.
storeAndForwardConfiguration.timeToLiveSecs Doba zařízení v sekundách, po kterou centrum IoT Edge uchovává zprávy, pokud se odpojí od koncových bodů směrování, ať už ioT Hubu nebo místního modulu. Tento čas přetrvává po všech vypnutích nebo restartováních. Další informace najdete v tématu Možnosti offline. Ano

Ohlášené vlastnosti EdgeHubu

Vlastnost Popis
lastDesiredVersion Toto celé číslo odkazuje na poslední verzi požadovaných vlastností zpracovaných centrem IoT Edge.
lastDesiredStatus.code Stavový kód odkazující na poslední požadované vlastnosti, které vidí centrum IoT Edge. Povolené hodnoty: 200 Úspěch, 400 Neplatná konfigurace, 500 Selhání
lastDesiredStatus.description Textový popis stavu
klienti Všichni klienti připojení k EdgeHubu se stavem a časem posledního připojení. Příklad: "clients": { "device2/SimulatedTemperatureSensor": { "status": "Connected", "lastConnectedTimeUtc": "2022-11-17T21:49:16.4781564Z" } }.
klienti. {device or moduleId}.status Stav připojení tohoto zařízení nebo modulu Možné hodnoty {připojeno | odpojeno}. V odpojeném stavu můžou být pouze identity modulů. Podřízená zařízení, která se připojují k centru IoT Edge, se zobrazí jenom při připojení.
klienti. {device or moduleId}.lastConnectTime Čas posledního připojení zařízení nebo modulu
klienti. {device nebo moduleId}.lastDisconnectTime Čas posledního odpojení zařízení nebo modulu
schemaVersion Verze schématu ohlášených vlastností
version Verze image Příklad: "version": { "version": "1.2.7", "build": "50979330", "commit": "d3ec971caa0af0fc39d2c1f91aef21e95bd0c03c" }.

Další kroky

Informace o použití těchto vlastností k sestavení manifestů nasazení najdete v tématu Vysvětlení toho, jak se dají moduly IoT Edge používat, konfigurovat a opakovaně používat.