Vysvětlení modulů Azure 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.
Azure IoT Edge umožňuje nasadit a spravovat obchodní logiku na hraničních zařízeních ve formě modulů. Moduly Azure IoT Edge jsou nejmenší jednotkou výpočtu spravované službou IoT Edge a můžou obsahovat služby Azure (například Azure Stream Analytics) nebo vlastní kód specifický pro řešení. Abyste pochopili, jak se moduly vyvíjejí, nasazují a udržují, zvažte čtyři koncepční prvky modulu:
- Image modulu je balíček obsahující software, který definuje modul.
- Instance modulu je konkrétní jednotka výpočtu, která spouští image modulu na zařízení IoT Edge. Instance modulu je spuštěna modulem runtime IoT Edge.
- Identita modulu je informace (včetně přihlašovacích údajů zabezpečení) uložených ve službě IoT Hub, která je přidružená k jednotlivým instancím modulu.
- Dvojče modulu je dokument JSON uložený ve službě IoT Hub, který obsahuje informace o stavu pro instanci modulu, včetně metadat, konfigurací a podmínek.
Image a instance modulů
Image modulů IoT Edge obsahují aplikace, které využívají funkce správy, zabezpečení a komunikace modulu runtime IoT Edge. Můžete vyvíjet vlastní image modulů nebo je exportovat z podporované služby Azure, jako je Azure Stream Analytics. Image existují v cloudu a dají se aktualizovat, změnit a nasadit v různých řešeních. Například modul, který používá strojové učení k predikci výstupu výrobní linky, existuje jako samostatný obrázek než modul, který k ovládání dronu používá počítačové zpracování obrazu.
Pokaždé, když se image modulu nasadí do zařízení a spustí modul runtime IoT Edge, vytvoří se nová instance tohoto modulu. Dvě zařízení v různých částech světa můžou používat stejnou image modulu. Každé zařízení ale při spuštění modulu na zařízení bude mít vlastní instanci modulu.
Při implementaci existují image modulů jako image kontejnerů v úložišti a instance modulů jsou kontejnery na zařízeních.
Identity modulů
Když modul runtime IoT Edge vytvoří novou instanci modulu, získá odpovídající identitu modulu. Identita modulu je uložená ve službě IoT Hub a slouží jako adresování a rozsah zabezpečení pro veškerou místní a cloudovou komunikaci pro danou instanci modulu.
Identita přidružená k instanci modulu závisí na identitě zařízení, na kterém je instance spuštěná, a na názvu, který dáte danému modulu ve svém řešení. Pokud například zavoláte insight
modul, který používá Azure Stream Analytics, a nasadíte ho do zařízení s názvem Hannover01
, modul runtime IoT Edge vytvoří odpovídající identitu modulu s názvem /devices/Hannover01/modules/insight
.
Je zřejmé, že ve scénářích, kdy potřebujete nasadit jednu image modulu vícekrát na stejném zařízení, můžete stejnou image nasadit vícekrát s různými názvy.
Dvojčata modulů
Každá instance modulu má také odpovídající dvojče modulu, které můžete použít ke konfiguraci instance modulu. Instance a dvojče se vzájemně přidružují prostřednictvím identity modulu.
Dvojče modulu je dokument JSON, který ukládá informace o modulu a vlastnosti konfigurace. Tento koncept paralelně paralelně koncept dvojčete zařízení ze služby IoT Hub. Struktura dvojčete modulu je stejná jako dvojče zařízení. Rozhraní API používaná k interakci s oběma typy dvojčat jsou také stejná. Jediným rozdílem mezi těmito dvěma je identita použitá k vytvoření instance klientské sady SDK.
// Create a ModuleClient object. This ModuleClient will act on behalf of a
// module since it is created with a module’s connection string instead
// of a device connection string.
ModuleClient client = new ModuleClient.CreateFromEnvironmentAsync(settings);
await client.OpenAsync();
// Get the module twin
Twin twin = await client.GetTwinAsync();
Offline možnosti
Moduly Azure IoT Edge můžou po synchronizaci se službou IoT Hub fungovat offline po neomezeně dlouhou dobu. Zařízení IoT Edge můžou tuto offline funkci rozšířit také na další zařízení IoT. Další informace najdete v tématu Vysvětlení rozšířených možností offline pro zařízení IoT Edge, moduly a podřízená zařízení.