Sdílet prostřednictvím


Pochopit rozšířené offline možnosti pro zařízení IoT Edge, moduly a podřízená zařízení

Platí pro:yes icon IoT Edge 1.1

Důležité

Datum ukončení podpory ioT Edge 1.1 bylo 13. prosince 2022. Informace o tom, jak se tento produkt, služba, technologie nebo rozhraní API podporují, najdete v životním cyklu produktů Společnosti Microsoft . 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 nastavit podřízená zařízení tak, aby důvěřovala přiřazeným nadřazeným zařízením, a směrovat komunikaci zařízení s cloudem prostřednictvím nadřazeného zařízení jako bránu.

  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 odpojeno od IoT Hubu, jeho 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 směřující k IoT Hub je ukládána lokálně. 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.

Zařízení EdgeAgent aktualizuje hlášené vlastnosti pokaždé, když dojde ke změně stavu nasazení, například při novém nebo neúspěšném nasazení. Když je zařízení offline, agent EdgeAgent nemůže hlásit stav webu Azure Portal. Stav zařízení na webu Azure Portal proto může zůstat 200 OK , pokud zařízení IoT Edge nemá žádné připojení k internetu.

Nastavení zařízení rodičů a dětí

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

Poznámka:

Podřízené zařízení vysílá data přímo do internetu nebo do zařízení brány (s podporou IoT Edge nebo bez ní). Podřízené zařízení může být buď podřízeným zařízením, nebo zařízením brány ve 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 se symetrickým klíčem, X.509 podepsaným vlastní rukou a X.509 podepsaným certifikační autoritou ukazují příklady použití portálu Azure a Azure CLI k definování vztahů nadřazenosti a podřízenosti při vytváření zařízení. U existujících zařízení můžete nastavit vztah na stránce s podrobnostmi o nadřazeném nebo podřízeném zařízení.

Nastavte nadřazené zařízení jako bránu

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 řešení problému v článku o řešení potíží, kde modul Edge agenta hlásí 'prázdný konfigurační soubor' a na zařízení se nespouští žádné moduly.

Volitelná offline nastavení

Pokud vaše zařízení přejdou do režimu offline, nadřazené zařízení IoT Edge uloží všechny zprávy typu zařízení-cloud, dokud není připojení znovu navázáno. 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.

Doba života

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žadovanou vlastností centra IoT Edge, která je uložena 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
        }
    }
}

Úložiště pro systémové moduly na hostitelském zařízení

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í: