Rövid útmutató: Az első IoT Edge modul üzembe helyezése virtuális Linux-eszközön

A következőre vonatkozik:IoT Edge 1.5 jelölés IoT Edge 1.5

Fontos

IoT Edge 1.5 LTS a támogatott kiadás. IoT Edge 1,4 LTS 2024. november 12-én véget ért. Ha korábbi kiadást használ, tekintse meg a Update IoT Edge című témakört.

Ebben a rövid útmutatóban próbálja ki Azure IoT Edge, ha tárolóalapú kódot helyez üzembe egy virtuális Linux-IoT Edge-eszközön. IoT Edge lehetővé teszi, hogy távolról kezelje a kódot az eszközein, hogy több számítási feladatot küldjön a peremhálózatra. Ebben a rövid útmutatóban használjon egy Azure virtuális gépet IoT Edge eszközéhez. Ezzel gyorsan létrehozhat egy tesztgépet, és törölheti azt, ha elkészült.

Ezen rövid útmutató segítségével megtanulhatja a következőket:

  • Hozzon létre egy IoT Hub.
  • Regisztráljon egy IoT Edge eszközt az IoT Hubon.
  • Telepítse és indítsa el a IoT Edge futtatókörnyezetet egy virtuális eszközön.
  • Modul távoli üzembe helyezése IoT Edge eszközön.

Gyorsindító architektúra diagram az eszköz és a felhő számára.

Ez a rövid útmutató végigvezeti egy olyan Linux rendszerű virtuális gép létrehozásán, amely IoT Edge eszközként van konfigurálva. Ezután üzembe helyez egy modult a Azure portálon az eszközén. Ez a rövid útmutató egy szimulált érzékelőmodult használ, amely hőmérséklet-, páratartalom- és nyomásadatokat hoz létre. A többi Azure IoT Edge oktatóanyag az itt végzett munkára épül, és további modulokat helyez üzembe, amelyek elemzik a szimulált adatokat az üzleti elemzésekhez.

Ha nem rendelkezik aktív Azure-előfizetéssel, a kezdés előtt hozzon létre egy felszabadító fiókot.

Prerequisites

Állítsa be a környezetet az Azure CLI-hez.

Egy erőforráscsoport, amely az ebben a rövid útmutatóban használt összes erőforrást kezeli. Ez a rövid útmutató és az alábbi oktatóanyagok az IoTEdgeResources nevű példa erőforráscsoport nevét használják.

az group create --name IoTEdgeResources --location westus2

IoT Hub létrehozása

Indítsa el a rövid útmutatót egy IoT Hub létrehozásával az Azure CLI.

Diagram, amely bemutatja, hogyan lehet létrehozni egy IoT Hub-ot a felhőben.

Ehhez a gyorsútmutatóhoz az IoT Hub ingyenes szintje használható. Ha korábban már használta a IoT Hub, és már létrehozott egy központot, használhatja ezt a IoT hub.

Az alábbi kód egy ingyenes F1-központot hoz létre az IoTEdgeResources erőforráscsoportban. Cserélje le a <hub-name> a IoT Hub egyedi nevére. A IoT Hub létrehozása eltarthat néhány percig.

az iot hub create --resource-group IoTEdgeResources --name <hub-name> --sku F1 --partition-count 2

Ha hibaüzenetet kap, mert már van egy ingyenes IoT Hub az előfizetésében, módosítsa a termékváltozatot S1. Mindegyik előfizetés csak egy ingyenes IoT-központtal rendelkezhet. Ha hibaüzenetet kap arról, hogy a IoT Hub név nem érhető el, az azt jelenti, hogy valaki más már rendelkezik ezzel a névvel. Próbálkozzon új névvel.

IoT Edge eszköz regisztrálása

Regisztráljon egy IoT Edge eszközt az imént létrehozott IoT Hubon.

Diagram arról, hogyan lehet regisztrálni egy eszközt egy IoT Hub azonosítóval.

Hozzon létre egy eszközidentitást a IoT Edge eszközhöz, hogy kommunikálhasson az IoT Hubbal. Az eszközidentitás a felhőben található, és az eszközhöz való társítás során egyedi eszközkapcsolati karakterláncot használunk egy fizikai eszköz eszközidentitásához való hozzárendeléséhez.

Mivel IoT Edge eszközök viselkedése és kezelése eltér a tipikus IoT-eszközöktől, deklarálja ezt az identitást IoT Edge eszközként a --edge-enabled jelző használatával.

  1. Adja meg a következő parancsot Azure Cloud Shell egy myEdgeDevice nevű eszköz létrehozásához a központban.

    az iot hub device-identity create --device-id myEdgeDevice --edge-enabled --hub-name <hub-name>
    

    Ha hibaüzenetet kap a iothubowner házirendkulcsokról, győződjön meg arról, hogy a Cloud Shell a azure-iot bővítmény legújabb verzióját futtatja.

  2. Ellenőrizze az eszköz kapcsolati karakterláncát, amely a fizikai eszközt az IoT Hub identitásához kapcsolja. Tartalmazza a IoT Hub nevét, az eszköz nevét, valamint egy megosztott kulcsot, amely hitelesíti a köztük lévő kapcsolatokat. Ezt a connection string a következő szakaszban ismét használhatja a IoT Edge eszköz beállításához.

    az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name <hub-name>
    

    A connection string például a HostName=contoso-hub.azure-devices.net;DeviceId=myEdgeDevice;SharedAccessKey=<DEVICE-SHARED-ACCESS-KEY> formátumhoz hasonlóan kell kinéznie.

A IoT Edge eszköz konfigurálása

Hozzon létre egy virtuális gépet a Azure IoT Edge futtatókörnyezettel.

A futtatókörnyezet eszközre való indításának ábrája.

A IoT Edge futtatókörnyezet minden IoT Edge eszközön üzembe van helyezve, és három összetevőből áll. Az IoT Edge biztonsági démon minden alkalommal elindul, amikor egy IoT Edge eszköz elindul, és előkészíti az eszközt az IoT Edge ügynök elindításával. A IoT Edge ügynök megkönnyíti a modulok üzembe helyezését és monitorozását az IoT Edge eszközön, beleértve a IoT Edge hubot is. A IoT Edge hub kezeli az IoT Edge eszköz moduljai, valamint az eszköz és a IoT Hub közötti kommunikációt.

A futtatási környezet konfigurálásakor adja meg az eszköz kapcsolati láncát. Ez a karakterlánc az Azure CLI-ből kerül lekérésre. Ez a sztring a fizikai eszközt az IoT Edge eszközidentitáshoz társítja az Azure-ban.

A IoT Edge eszköz üzembe helyezése

Ez a szakasz egy Azure Resource Manager sablont használ egy új virtuális gép létrehozásához és a IoT Edge futtatókörnyezet telepítéséhez. Ha inkább a saját Linux-eszközét szeretné használni, kövesse az egyetlen Linux IoT Edge eszköz kézi üzembe helyezéséhez szükséges telepítési lépéseket a Linux IoT Edge eszköz kézi üzembe helyezése című részben, majd térjen vissza ehhez a gyorsindítási útmutatóhoz.

Az Azure-ba történő telepítés gomb használatával vagy CLI parancsokkal hozhat létre IoT Edge eszközt az előre elkészített iotedge-vm-deploy sablon alapján.

  • Üzembe helyezés a IoT Edge Azure Resource Manager sablonnal.

    Deploy to Azure

  • Bash vagy Cloud Shell felhasználók esetén másolja a következő parancsot egy szövegszerkesztőbe, cserélje le a helyőrző szöveget az adataira, majd másolja a bashbe vagy Cloud Shell ablakba:

    az deployment group create \
    --resource-group IoTEdgeResources \
    --template-uri "https://raw.githubusercontent.com/Azure/iotedge-vm-deploy/main/edgeDeploy.json" \
    --parameters dnsLabelPrefix='<REPLACE_WITH_VM_NAME>' \
    --parameters adminUsername='azureUser' \
    --parameters deviceConnectionString=$(az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name <REPLACE_WITH_HUB_NAME> -o tsv) \
    --parameters authenticationType='password' \
    --parameters adminPasswordOrKey="<REPLACE_WITH_PASSWORD>"
    
  • PowerShell-felhasználók esetén másolja a következő parancsot a PowerShell-ablakba, majd cserélje le a helyőrző szöveget a saját adataira:

    az deployment group create `
    --resource-group IoTEdgeResources `
    --template-uri "https://raw.githubusercontent.com/Azure/iotedge-vm-deploy/main/edgeDeploy.json" `
    --parameters dnsLabelPrefix='<REPLACE_WITH_VM_NAME>' `
    --parameters adminUsername='azureUser' `
    --parameters deviceConnectionString=$(az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name <REPLACE_WITH_HUB_NAME> -o tsv) `
    --parameters authenticationType='password' `
    --parameters adminPasswordOrKey="<REPLACE_WITH_PASSWORD>"
    

Ez a sablon a következő paramétereket használja:

Parameter Leírás
erőforráscsoport Az az erőforráscsoport, amelyben az erőforrások létrejönnek. Használja a cikk során használt alapértelmezett IoTEdgeResource-eket , vagy adja meg egy meglévő erőforráscsoport nevét az előfizetésben.
template-uri Mutató a használt Resource Manager sablonra.
dnsLabelPrefix A virtuális gép gazdagépnevének létrehozásához használt karakterlánc. Helyettesítse a helyőrző szöveget a virtuális gép nevével.
adminUsername A virtuális gép rendszergazdai fiókjának felhasználóneve. Használja az azureUser példát, vagy adjon meg egy új felhasználónevet.
deviceConnectionString A IoT Hub eszközidentitásából származó connection string, amely a virtuális gép IoT Edge futtatókörnyezetének konfigurálására szolgál. A CLI parancs ebben a paraméterben megadja a kapcsolat-karakterláncot. Cserélje le a helyőrző szöveget az IoT hub nevére.
authenticationType A rendszergazdai fiók hitelesítési módszere. Ez a rövid útmutató jelszó-hitelesítést használ, de ezt a paramétert sshPublicKey értékre is beállíthatja.
adminPasswordOrKey A rendszergazdai fiók SSH-kulcsának jelszava vagy értéke. Cserélje le a helyőrző szöveget egy biztonságos jelszóra. A jelszónak legalább 12 karakter hosszúságúnak kell lennie, és a következők közül háromnak kell lennie: kisbetűk, nagybetűk, számjegyek és speciális karakterek.

Az üzembe helyezés befejezése után a CLI JSON-formátumú kimenete tartalmazza a virtuális géphez való csatlakozáshoz szükséges SSH-adatokat. Másolja ki a kimenetek szakasz nyilvános SSH-bejegyzésének értékét. Az SSH-parancsnak például a következőhöz ssh azureUser@edge-vm.westus2.cloudapp.azure.comhasonlónak kell lennie.

A IoT Edge futtatókörnyezet állapotának megtekintése

Az ebben a rövid útmutatóban szereplő többi parancs a IoT Edge eszközén történik, így láthatja, mi történik az eszközön. Ha virtuális gépet használ, csatlakozzon a géphez most a beállított rendszergazdai felhasználónév és az üzembe helyezési parancs által létrehozott DNS-név használatával. A DNS-nevet a virtuális gép áttekintő lapján is megtalálhatja a Azure portálon. Használja a következő parancsot a virtuális géphez való csatlakozásra. Cserélje le a <admin-username> és <DNS-name> értékeket a saját értékeire.

ssh <admin-username>@<DNS-name>

Miután csatlakozott a virtuális géphez, ellenőrizze, hogy a futtatókörnyezet telepítése és konfigurálása sikeresen megtörtént-e a IoT Edge eszközén.

  1. Ellenőrizze, hogy fut-e IoT Edge. Az alábbi parancs Ok ha IoT Edge fut, vagy bármilyen szolgáltatáshibát jelez.

    sudo iotedge system status
    

    Tipp

    Az iotedge parancsok futtatásához megemelt jogosultsági szint szükséges. Ha kijelentkezik a gépről, és a IoT Edge futtatókörnyezet telepítése után először jelentkezik be újra, az engedélyek automatikusan frissülnek. Addig is használja sudo a parancsok előtt.

  2. Ha hibaelhárításra van szükség, kérje le a szolgáltatás naplóit.

    sudo iotedge system logs
    
  3. Tekintse meg a IoT Edge eszközön futó összes modult. Mivel a szolgáltatás először indult el, csak az edgeAgent modul fut. Az edgeAgent modul alapértelmezés szerint fut, és segít az eszközön üzembe helyezendő további modulok telepítésében és elindításában.

    sudo iotedge list
    

A IoT Edge eszköz most már konfigurálva van. Készen áll a felhőalapú modulok futtatására.

Modul üzembe helyezése

A Azure IoT Edge eszköz kezelése a felhőből egy olyan modul üzembe helyezéséhez, amely eszköz telemetriai adatokat küld IoT Hub.

A modul felhőből eszközre történő üzembe helyezésének ábrája.

A Azure IoT Edge egyik fő képessége a kód üzembe helyezése IoT Edge eszközökre a felhőből. IoT Edge modulok tárolókként megvalósított végrehajtható csomagok. Ebben a szakaszban egy előre összeállított modult helyez üzembe a Microsoft Artifact Registry IoT Edge Modulok szakaszából.

Az ebben a szakaszban üzembe helyezhető modul egy érzékelőt szimulál, és generált adatokat küld. Ez a modul hasznos kódrészlet a IoT Edge használatbavételekor, mivel a szimulált adatokat fejlesztési és tesztelési célokra használhatja. Ha pontosan szeretné látni a modult, megtekintheti a szimulált hőmérséklet-érzékelő forráskódját.

Az alábbi lépésekkel üzembe helyezheti az első modult.

  1. Jelentkezzen be az Azure portálra, és menjen az IoT Hubhoz.

  2. A bal oldali menüben a Device Management alatt válassza a Devices lehetőséget.

  3. Válassza ki a céleszköz IoT Edge eszközazonosítóját a listából.

    Amikor új IoT Edge eszközt hoz létre, az Azure portálon megjeleníti a 417 -- The device's deployment configuration is not set állapotkódot. Ez az állapot normális, és azt jelenti, hogy az eszköz készen áll a modul üzembe helyezésére.

  4. A felső sávon válassza a Modulok beállítása lehetőséget.

    Válassza ki az eszközön futtatni kívánt modulokat. Választhat az Ön által készített modulokból vagy konténerképekből egy tárolóregisztrációban. Ebben a rövid útmutatóban üzembe helyez egy modult a Microsoft tárolóregisztrációs adatbázisából.

  5. A IoT Edge modulok szakaszban válassza a Add majd a IoT Edge Modul lehetőséget.

  6. Frissítse a következő modulbeállításokat:

    Beállítás Érték
    IoT-modul neve SimulatedTemperatureSensor
    Kép URI-ja mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:latest
    Újraindítási szabályzat mindig
    Kívánt állapot futás
  7. Válassza a Tovább elemet : Útvonalak az útvonalak konfigurálásához.

  8. Adjon hozzá egy útvonalat, amely a szimulált hőmérsékleti modul összes üzenetét elküldi a IoT Hub.

    Beállítás Érték
    Name SimulatedTemperatureSensorToIoTHub
    Érték FROM /messages/modules/SimulatedTemperatureSensor/* INTO $upstream
  9. Válassza a Tovább: Áttekintés és létrehozás lehetőséget.

  10. Tekintse át a JSON-fájlt, majd válassza a Létrehozás lehetőséget. A JSON-fájl határozza meg az IoT Edge eszközén üzembe helyezendő összes modult.

    Megjegyzés

    Amikor új üzembe helyezést küld egy IoT Edge eszközre, a rendszer semmit sem küld le az eszközére. Ehelyett az eszköz rendszeresen lekérdezi IoT Hub az új utasításokat. Ha az eszköz talál egy frissített üzembehelyezési jegyzékfájlt, az új üzembe helyezés adataival lekéri a modul lemezképeit a felhőből, majd helyileg elkezdi futtatni a modulokat. Ez a folyamat eltarthat néhány percig.

A modul üzembe helyezési adatainak létrehozása után a varázsló visszaküldi Az eszköz részletei lapra. Tekintse meg az üzembe helyezés állapotát a Modulok lapon.

Három modulnak kell megjelennie: $edgeAgent, $edgeHub és SimulatedTemperatureSensor. Ha egy vagy több modul a Specified in Deployment alatt Yes értékkel rendelkezik, de az Reported by Device alatt nem, az IoT Edge eszköz továbbra is elindítja őket. Várjon néhány percet, és frissítse az oldalt.

Képernyőkép a SimulatedTemperatureSensorról az üzembe helyezett modulok listájában.

Ha problémákat tapasztal a modulok üzembe helyezésében, további információt az Az IoT Edge eszközök hibáinak elhárítása az Azure portálon talál.

Létrehozott adatok megtekintése

Ebben a rövid útmutatóban létrehoz egy új IoT Edge eszközt, és telepíti a IoT Edge futtatókörnyezetet. Ezután a Azure portál használatával üzembe helyezhet egy IoT Edge modult az eszközön való futtatáshoz anélkül, hogy magát az eszközt módosítana.

Ebben az esetben a leküldéses modul mintakörnyezeti adatokat hoz létre, amelyeket később tesztelhet. A szimulált érzékelő a gépet és a környezetet is figyeli a gép körül. Ez az érzékelő lehet például egy kiszolgálóteremben, egy gyár padlóján vagy egy szélturbinán. Az üzenet tartalmazza a környezeti hőmérsékletet és a páratartalmat, a gép hőmérsékletét és nyomását, valamint az időbélyeget. Az IoT Edge oktatóanyagok a modul által létrehozott adatokat használják elemzési tesztadatokként.

Nyissa meg a parancssort IoT Edge eszközén, vagy használja a Azure CLI SSH-kapcsolatát. Ellenőrizze, hogy a felhőből üzembe helyezett modul fut-e a IoT Edge eszközén:

sudo iotedge list

Képernyőkép az eszközön található három modulról.

Tekintse meg a hőmérséklet-érzékelő modulból küldött üzeneteket:

sudo iotedge logs SimulatedTemperatureSensor -f

Képernyőkép a modul adatairól a kimeneti konzolon.

Tipp

IoT Edge parancsok megkülönböztetik a kis- és nagybetűket a modulnevekre való hivatkozáskor.

Erőforrások tisztítása

A IoT Edge oktatóanyagok folytatásához használja az ebben a rövid útmutatóban regisztrált és beállított eszközt. Ellenkező esetben törölje a díjak elkerülése érdekében létrehozott Azure erőforrásokat.

Ha egy új erőforráscsoportban hozta létre a virtuális gépet és az IoT Hubot, törölheti a csoportot és az összes társított erőforrást. Ellenőrizze duplán az erőforráscsoport tartalmát, és győződjön meg arról, hogy semmit sem szeretne megtartani. Ha nem szeretné törölni a teljes csoportot, törölheti az egyes erőforrásokat.

Fontos

Egy erőforráscsoport törlése visszafordíthatatlan.

Törölje az IoTEdgeResources csoportot. Egy erőforráscsoport törlése eltarthat néhány percig.

az group delete --name IoTEdgeResources --yes

Ellenőrizze, hogy az erőforráscsoport törölve lett-e az erőforráscsoportok listájának megtekintésével.

az group list

Következő lépések

Ebben a rövid útmutatóban létrehozott egy IoT Edge eszközt, és a Azure IoT Edge felhőfelület használatával kódot telepít az eszközre. Most egy teszteszközt használ, amely nyers adatokat hoz létre a környezetéről.

A következő oktatóanyagban megtudhatja, hogyan figyelheti az eszköz tevékenységét és állapotát a Azure portálon.