Sdílet prostřednictvím


Vysvětlení rozšířených možností offline pro zařízení, moduly a podřízená zařízení IoT Edge

Platí pro: Ikona Ano IoT Edge 1.1

Důležité

Datum ukončení podpory ioT Edge 1.1 bylo 13. prosince 2022. Informace o způsobu podpory tohoto produktu, služby, technologie nebo rozhraní API najdete v tématu věnovaném životnímu cyklu produktů Microsoftu. Další informace o aktualizaci na nejnovější verzi IoT Edge najdete v tématu Aktualizace IoT Edge.

Azure IoT Edge podporuje rozšířené offline operace na vašich zařízeních IoT Edge a umožňuje také offline operace na podřízených zařízeních. Pokud má zařízení IoT Edge jednu příležitost připojit se ke službě IoT Hub, zařízení a všechna podřízená zařízení můžou dál fungovat s přerušovaným nebo žádným internetovým připojením.

Jak to funguje

Když zařízení IoT Edge přejde do offline režimu, centrum IoT Edge převezme tři role. Nejprve uloží všechny zprávy, které by přešly nahoru, a uloží je, dokud se zařízení znovu nepřipojí. Zadruhé slouží jménem služby IoT Hub k ověřování modulů a podřízených zařízení, aby mohly i nadále fungovat. Za třetí umožňuje komunikaci mezi podřízenými zařízeními, která by normálně procházela službou IoT Hub.

Následující příklad ukazuje, jak scénář IoT Edge funguje v offline režimu:

  1. Konfigurace zařízení

    Zařízení IoT Edge mají automaticky povolené funkce offline. Pokud chcete tuto funkci rozšířit na jiná zařízení, musíte nakonfigurovat podřízená zařízení tak, aby důvěřovala přiřazeným nadřazeným zařízením, a směrovat komunikaci typu zařízení-cloud prostřednictvím nadřazeného zařízení jako brány.

  2. Synchronizace se službou IoT Hub

    Alespoň jednou po instalaci modulu runtime IoT Edge musí být zařízení IoT Edge online pro synchronizaci se službou IoT Hub. V této synchronizaci získá zařízení IoT Edge podrobnosti o všech podřízených zařízeních, která jsou k němu přiřazená. Zařízení IoT Edge také bezpečně aktualizuje místní mezipaměť, aby umožňovalo offline operace a načítá nastavení místního úložiště zpráv telemetrie.

  3. Přejít do offline režimu

    I když je zařízení IoT Edge, nasazené moduly a všechna podřízená zařízení můžou fungovat neomezeně dlouho. Moduly a podřízená zařízení se můžou spustit a restartovat ověřením v centru IoT Edge v offline režimu. Telemetrie svázaná s upstreamem do IoT Hubu se ukládá místně. Komunikace mezi moduly nebo mezi podřízenými zařízeními se udržuje prostřednictvím přímých metod nebo zpráv.

  4. Opětovné připojení a opětovná synchronizace se službou IoT Hub

    Po obnovení připojení ke službě IoT Hub se zařízení IoT Edge znovu synchronizuje. Místně uložené zprávy se do IoT Hubu doručují okamžitě, ale závisí na rychlosti připojení, latenci služby IoT Hub a souvisejících faktorech. Jsou doručeny ve stejném pořadí, ve kterém byly uloženy.

    Všechny rozdíly mezi požadovanými a ohlášenými vlastnostmi modulů a zařízení jsou odsouhlasené. Zařízení IoT Edge aktualizuje všechny změny sady přiřazených podřízených zařízení.

Omezení a limity

Rozšířené offline funkce popsané v tomto článku jsou k dispozici ve službě IoT Edge verze 1.0.7 nebo vyšší. Starší verze mají podmnožinu offline funkcí. Stávající zařízení IoT Edge, která nemají rozšířené možnosti offline, se nedají upgradovat změnou verze modulu runtime, ale musí být znovu nakonfigurovaná s novou identitou zařízení IoT Edge, aby získala tyto funkce.

Jako podřízená zařízení je možné přidat pouze jiná zařízení než IoT Edge.

IoT Edge zařízení a jejich přiřazená podřízená zařízení můžou po počáteční jednorázové synchronizaci fungovat neomezeně offline. Ukládání zpráv ale závisí na nastavení hodnoty TTL (Time to Live) a dostupném místě na disku pro ukládání zpráv.

Agent EdgeAgent zařízení aktualizuje ohlášené vlastnosti vždy, když dojde ke změně stavu nasazení, jako je nové nebo neúspěšné nasazení. Když je zařízení offline, agent EdgeAgent nemůže hlásit stav webu Azure Portal. Proto může stav zařízení v Azure Portal zůstat 200 OK, když zařízení IoT Edge nemá připojení k internetu.

Nastavení nadřazených a podřízených zařízení

Ve výchozím nastavení může mít nadřazené zařízení až 100 podřízených zařízení. Tento limit můžete změnit nastavením proměnné prostředí MaxConnectedClients v modulu EdgeHub. Podřízené zařízení má pouze jeden nadřazený objekt.

Poznámka:

Podřízené zařízení vysílá data přímo do internetu nebo do zařízení brány (nebo ne). Podřízené zařízení může být podřízené zařízení nebo zařízení brány v vnořené topologii.

Podřízená zařízení můžou být jakákoli jiná zařízení než IoT Edge zaregistrovaná ve stejném IoT Hubu.

Pokud neznáte vytvoření vztahu nadřazeného a podřízeného mezi zařízením IoT Edge a zařízením IoT, přečtěte si téma Ověření podřízeného zařízení ve službě Azure IoT Hub. Oddíly X.509 se symetrickým klíčem, podepsaným svým držitelem a ca-signed X.509 ukazují příklady použití webu Azure Portal a Azure CLI k definování vztahů nadřazenosti a podřízených vztahů při vytváření zařízení. U existujících zařízení můžete deklarovat vztah ze stránky s podrobnostmi o zařízení nadřazeného nebo podřízeného zařízení.

Nastavení nadřazeného zařízení jako brány

Vztah nadřazenosti/podřízenosti si můžete představit jako transparentní bránu, kde má podřízené zařízení ve službě IoT Hub vlastní identitu, ale komunikuje přes cloud prostřednictvím nadřazeného objektu. Pro zabezpečenou komunikaci musí být podřízené zařízení schopné ověřit, že nadřazené zařízení pochází z důvěryhodného zdroje. V opačném případě můžou třetí strany nastavit škodlivá zařízení pro zosobnění rodičů a zachycení komunikace.

Jeden ze způsobů, jak vytvořit tento vztah důvěryhodnosti, je podrobně popsán v následujících článcích:

Určení serverů DNS

Pokud chcete zvýšit odolnost, důrazně doporučujeme zadat adresy serveru DNS používané ve vašem prostředí. Pokud chcete nastavit server DNS pro IoT Edge, podívejte se na překlad modulu agenta Edge, který hlásí prázdný konfigurační soubor a v článku o řešení potíží se nespustí žádné moduly.

Volitelná offline nastavení

Pokud vaše zařízení přejdou do režimu offline, nadřazené zařízení IoT Edge ukládá všechny zprávy typu zařízení-cloud, dokud se připojení znovu nepublikuje. Modul centra IoT Edge spravuje úložiště a předávání offline zpráv. U zařízení, která můžou po delší dobu přejít do režimu offline, optimalizujte výkon konfigurací dvou nastavení centra IoT Edge.

Nejprve zvyšte dobu na živé nastavení, aby centrum IoT Edge udržovalo zprávy dostatečně dlouho, aby se vaše zařízení znovu připojilo. Pak přidejte další místo na disku pro úložiště zpráv.

Hodnota TTL (Time to Live)

Nastavení TTL (time to Live) je doba (v sekundách), po kterou může zpráva čekat, než vyprší její platnost. Výchozí hodnota je 7200 sekund (dvě hodiny). Maximální hodnota je omezena pouze maximální hodnotou celočíselné proměnné, která je přibližně 2 miliardy.

Toto nastavení je požadovaná vlastnost centra IoT Edge, která je uložená ve dvojčeti modulu. Můžete ho nakonfigurovat na webu Azure Portal nebo přímo v manifestu nasazení.

"$edgeHub": {
    "properties.desired": {
        "schemaVersion": "1.0",
        "routes": {},
        "storeAndForwardConfiguration": {
            "timeToLiveSecs": 7200
        }
    }
}

Hostování úložiště pro systémové moduly

Zprávy a informace o stavu modulu se ve výchozím nastavení ukládají do místního systému souborů kontejneru centra IoT Edge. Kvůli lepší spolehlivosti, zejména při práci offline, můžete také vyhradit úložiště na hostitelském zařízení IoT Edge. Další informace najdete v tématu Poskytnutí přístupu modulů k místnímu úložišti zařízení.

Další kroky

Přečtěte si další informace o tom, jak nastavit transparentní bránu pro připojení nadřazeného nebo podřízeného zařízení: