Sdílet prostřednictvím


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

Platí pro:IoT Edge 1.5 - zaškrtnuto IoT Edge 1.5

Důležité

Podporovanou verzí je IoT Edge 1.5 LTS. IoT Edge 1.4 LTS je konec životnosti od 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 nasazení modulů a vytvoření tras v IoT Edge.

Dvojče modulu zahrnuje:

  • Požadované vlastnosti. Back-end řešení nastaví požadované vlastnosti a modul je přečte. Modul také obdrží 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 nastaví ohlášené vlastnosti a back-end řešení je přečte a dotazuje se na ně. Ohlášené vlastnosti se používají spolu s požadovanými vlastnostmi k synchronizaci konfigurace nebo podmínek modulu.

Požadované vlastnosti agenta EdgeAgent

Dvojče modulu pro agenta IoT Edge se nazývá $edgeAgent. 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 Určuje, kdy se má stáhnout obrázek: OnCreate nebo Never. Pokud už je image na zařízení, použijte funkci Nikdy . Ano
politika restartování 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. Nezdravý je to, co Docker hlásí na základě kontroly stavu, například "Nezdravý – kontejner nefunguje správně", Po-Neúspěchu: restartujte při neúspěchu. Ano
běhový_typ Musí to být docker. Ano
runtime.settings.minDockerVersion Určuje minimální verzi Dockeru vyžadovanou tímto manifestem nasazení. Ano
runtime.settings.loggingOptions Určuje řetězecifikovaný JSON s možnostmi protokolování pro kontejner agenta IoT Edge. Přečtěte si další informace o možnostech protokolování Dockeru. Ne
runtime.settings.registryCredentials. {registryId}.username Určuje 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 vyžadovány pro obrázky modulů privátních. Ne
runtime.settings.registryCredentials. {registryId}.password Heslo pro registr kontejneru. Ne
runtime.settings.registryCredentials. {registryId}.address Adresa registru kontejneru. Pro Azure Container Registry je adresa obvykle {název_registru}.azurecr.io. Ne
verze schématu Určuje 1.0 nebo 1.1. Doporučuje se verze 1.1, která je představená ve službě IoT Edge verze 1.0.10. Ano
stav Požadovaný stav modulu: Spuštěno nebo Zastaveno Povinní účastníci
systemModules.edgeAgent.type Musí být Docker. Ano
systemModules.edgeAgent.startupOrder Určuje celé číslo pozice modulu v pořadí spuštění. Hodnota 0 je první a maximální celé číslo (4294967295) je poslední. Pokud není zadaná žádná hodnota, výchozí hodnota je maximální celé číslo. Ne
systemovéModuly.edgeAgent.nastavení.obraz Určuje URI obrazu agenta IoT Edge. Agent IoT Edge nemůže aktualizovat sám sebe. Ano
systemModules.edgeAgent.settings.createOptions Určuje řetězecifikovaný JSON s možnostmi pro vytvoření kontejneru agenta IoT Edge. Přečtěte si další informace o možnostech vytváření Dockeru. Ne
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. Ne
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 Ne
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 | zastaveno} 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. Ne
moduly. {moduleId}.imagePullPolicy {on-create | nikdy} Ne
moduly. {moduleId}.env Seznam proměnných prostředí, které se mají předat modulu. Vezme formát "<name>": {"value": "<value>"}. Ne
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 Ne
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í.
verze Aktuální iterace s verzí, potvrzením a sestavením. Ne

Ohlášené vlastnosti agenta EdgeAgent

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

  • Stav aplikace naposledy zobrazených požadovaných vlastností
  • Stav modulů, které jsou v zařízení aktuálně spuštěné, jak hlásí agent IoT Edge, a
  • Kopie požadovaných vlastností, které jsou aktuálně aktivní na zařízení.

Kopie aktuálních požadovaných vlastností pomáhá určit, jestli zařízení použilo nejnovější nasazení nebo stále používá předchozí manifest nasazení.

Poznámka:

Pomocí dotazovacího jazyka IoT Hub můžete dotazovat na vlastnosti hlášené agentem IoT Edge a prozkoumat stav nasazení ve velkém měřítku. Naučte se používat vlastnosti agenta IoT Edge pro stav v článku 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 Stavový kód pro 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í.
PopisPosledníhoPožadovanéhoStavu Textový popis stavu
Poslední požadovaná verze Toto celé číslo odkazuje na poslední verzi požadovaných vlastností zpracovaných agentem IoT Edge.
runtime.platform.OS Nahlásí operační systém spuštěný na zařízení.
runtime.platform.architecture Zaznamenává architekturu procesoru na zařízení.
verze schématu 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 | | }.
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
modulySystému.edgeHub.početRestartů Počet restartování tohoto modulu v rámci zásad restartování
moduly. {moduleId}.runtimeStatus Stav modulu: { spuštěno | zastaveno | | 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í
verze 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í
verze schématu 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
Poslední požadovaná verze 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í
PopisPosledníhoPožadovanéhoStavu 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
verze schématu Verze schématu ohlášených vlastností
verze 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.