Vlastnosti dvojčat modulů ioT Edge a agenta IoT Edge
Platí pro: IoT Edge 1.5 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:
- Stav použití naposledy pozorovaných požadovaných vlastností;
- Stav modulů aktuálně spuštěných na zařízení, jak hlásí agent IoT Edge; a
- 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.