Az Azure IoT Edge-modulok ismertetése

A következőkre vonatkozik:IoT Edge 1.5 pipa IoT Edge 1.5 IoT Edge 1.4 pipa IoT Edge 1.4

Fontos

Az IoT Edge 1.5 LTS és az IoT Edge 1.4 LTS támogatott kiadások. Az IoT Edge 1.4 LTS 2024. november 12-én megszűnik. Ha egy korábbi kiadáson dolgozik, olvassa el az IoT Edge frissítése című témakört.

Az Azure IoT Edge lehetővé teszi az üzleti logika üzembe helyezését és kezelését a peremhálózaton modulok formájában. Az Azure IoT Edge-modulok az IoT Edge által felügyelt legkisebb számítási egység, amely azure-szolgáltatásokat (például Azure Stream Analyticset) vagy saját megoldásspecifikus kódot tartalmazhat. A modulok fejlesztésének, üzembe helyezésének és karbantartásának megértéséhez vegye figyelembe a modul négy fogalmi elemét:

  • A modul rendszerképe egy modult definiáló szoftvert tartalmazó csomag.
  • A modulpéldány a modul lemezképét IoT Edge-eszközön futtató számítási egység. A modulpéldányt az IoT Edge-futtatókörnyezet indítja el.
  • A modulidentitás az egyes modulpéldányokhoz társított IoT Hubban tárolt információk (beleértve a biztonsági hitelesítő adatokat is).
  • A modul ikerpéldánya egy IoT Hubban tárolt JSON-dokumentum, amely egy modulpéldány állapotadatait tartalmazza, beleértve a metaadatokat, a konfigurációkat és a feltételeket.

Modulképek és -példányok

Az IoT Edge modul lemezképei olyan alkalmazásokat tartalmaznak, amelyek kihasználják az IoT Edge-futtatókörnyezet felügyeleti, biztonsági és kommunikációs funkcióit. Létrehozhat saját modulrendszerképeket, vagy exportálhat egyet egy támogatott Azure-szolgáltatásból, például az Azure Stream Analyticsből. A rendszerképek a felhőben léteznek, és különböző megoldásokban frissíthetők, módosíthatók és üzembe helyezhetők. Például egy olyan modul, amely gépi tanulással előrejelzi a gyártósor kimenetét, külön képként létezik, mint egy olyan modul, amely számítógépes látással vezérli a drónt.

Minden alkalommal, amikor egy modulrendszerképet üzembe helyeznek egy eszközön, és az IoT Edge-futtatókörnyezet elindítja, létrejön a modul új példánya. A világ különböző részein két eszköz ugyanazt a modulképet használhatja. Azonban minden eszköznek saját modulpéldánya lenne, amikor a modul elindul az eszközön.

Diagram – Modulképek a felhőben, modulpéldányok az eszközökön

A megvalósítás során a modulok lemezképei tárolólemezképekként léteznek egy adattárban, a modulpéldányok pedig tárolók az eszközökön.

Modulidentitások

Amikor az IoT Edge-futtatókörnyezet létrehoz egy új modulpéldányt, megkapja a megfelelő modulidentitást. A modulidentitás az IoT Hubban van tárolva, és az adott modulpéldány összes helyi és felhőbeli kommunikációjának címzési és biztonsági hatóköreként használatos.

A modulpéldányhoz társított identitás annak az eszköznek az identitásától függ, amelyen a példány fut, és a megoldásban az adott modulnak megadott névtől függ. Ha például egy Azure Stream Analytics-t használó modult hív meginsight, és egy úgynevezett Hannover01eszközön helyezi üzembe, az IoT Edge-futtatókörnyezet létrehoz egy megfelelő modulidentitást./devices/Hannover01/modules/insight

Egyértelmű, hogy olyan helyzetekben, amikor egy modulrendszerképet többször kell üzembe helyeznie ugyanazon az eszközön, ugyanazt a lemezképet többször is üzembe helyezheti különböző néven.

Diagram – A modulidentitások egyediek az eszközökön és az eszközökön

Ikermodulok

Minden modulpéldányhoz tartozik egy megfelelő ikermodul is, amellyel konfigurálhatja a modulpéldányt. A példány és az ikerpéldány a modul identitásán keresztül van társítva egymással.

A modul ikerpéldánya egy olyan JSON-dokumentum, amely a modulinformációkat és a konfigurációs tulajdonságokat tárolja. Ez a koncepció párhuzamos az IoT Hub ikereszköz-koncepcióval . A modul ikerpéldányának felépítése megegyezik az ikereszközével. Az ikerpéldányok mindkét típusával való interakcióhoz használt API-k szintén azonosak. A kettő között az egyetlen különbség az ügyfél SDK példányosításához használt identitás.

// 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 képességek

Az Azure IoT Edge-modulok az IoT Hubbal való szinkronizálás után korlátlan ideig offline működésre képesek. Az IoT Edge-eszközök ezt az offline képességet más IoT-eszközökre is kiterjeszthetik. További információ: Az IoT Edge-eszközök, -modulok és alsóbb rétegbeli eszközök kiterjesztett offline képességeinek ismertetése.

Következő lépések