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

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

Fontos

Az IoT Edge 1.4 a támogatott kiadás. Ha egy korábbi kiadáson dolgozik, olvassa el az IoT Edge frissítése című témakört.

Ebben a rövid útmutatóban tesztelje az Azure IoT Edge-et tárolóalapú kód virtuális Linux IoT Edge-eszközön való üzembe helyezésével. Az IoT Edge lehetővé teszi a kód távoli kezelését az eszközökön, hogy több számítási feladatot küldjön a peremhálózatra. Ebben a rövid útmutatóban azt javasoljuk, hogy használjon azure-beli virtuális gépet az IoT Edge-eszközéhez, amely lehetővé teszi egy tesztgép gyors létrehozását, majd törlését, ha végzett.

Ennek a rövid útmutatónak a segítségével megtanulhatja az alábbiakat:

  • IoT Hub létrehozása
  • IoT Edge-eszköz regisztrálása az IoT Hubon
  • Telepítse és indítsa el az IoT Edge-futtatókörnyezetet egy virtuális eszközön.
  • Modul távoli üzembe helyezése IoT Edge-eszközön.

Az eszköz és a felhő gyorsútmutató-architektúrájának diagramja.

Ez a rövid útmutató végigvezeti egy IoT Edge-eszközre konfigurált Linux rendszerű virtuális gép létrehozásán. Ezután üzembe helyez egy modult az Azure Portalról az eszközére. A rövid útmutatóban használt modul egy szimulált érzékelő, 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, kezdetnek hozzon létre egy ingyenes fiókot.

Előfeltételek

A környezet előkészítése az Azure CLI-re.

Felhőerőforrások:

  • Egy erőforráscsoport a rövid útmutató során létrehozott összes erőforrás kezelésére. Ebben a rövid útmutatóban és az alábbi oktatóanyagokban az IoTEdgeResources nevű példa erőforráscsoportnevet használjuk.

    az group create --name IoTEdgeResources --location westus2
    

IoT Hub létrehozása

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

IoT Hub felhőbeli létrehozásának diagramja.

Ehhez a rövid útmutatóhoz az IoT Hub ingyenes csomagja is elegendő. Ha korábban már használta az IoT Hubot, és már létrehozott egy központot, használhatja ezt az IoT Hubot.

A következő kód egy ingyenes F1 központot hoz létre az IoTEdgeResources erőforráscsoportban. Cserélje le {hub_name} az IoT Hub egyedi nevére. Az 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 az előfizetése már tartalmaz egy ingyenes központot, akkor módosítsa az SKU-t S1-re. Mindegyik előfizetés csak egy ingyenes IoT-központtal rendelkezhet. Ha hibaüzenet jelenik meg, hogy az IoT Hub neve 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 újonnan létrehozott IoT Hubon.

Az eszközök IoT Hub-identitással való regisztrálásának ábrája.

Hozzon létre egy eszközidentitást az IoT Edge-eszközhöz, hogy kommunikálhasson az IoT Hubbal. Az eszközidentitás a felhőben található, és egy egyedi eszközkapcsolati sztringgel társíthat fizikai eszközt az eszközidentitáshoz.

Mivel az IoT Edge-eszközök a tipikus IoT-eszközökétől eltérően viselkednek és kezelhetők, deklarálja ezt az --edge-enabled identitást egy jelölővel rendelkező IoT Edge-eszköznek.

  1. Az Azure Cloud Shellben adja meg a következő parancsot 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 az iothubowner szabályzatkulcsairól, győződjön meg arról, hogy a Cloud Shell az Azure-iot bővítmény legújabb verzióját futtatja.

  2. Tekintse meg az eszköz kapcsolati sztring, amely összekapcsolja a fizikai eszközt az IoT Hub identitásával. Tartalmazza az IoT Hub nevét, az eszköz nevét, majd egy megosztott kulcsot, amely hitelesíti a kettő közötti kapcsolatokat. Az IoT Edge-eszköz beállításakor a következő szakaszban ismét hivatkozunk erre a kapcsolati sztring.

    az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name {hub_name}
    

    A kapcsolati sztring például a következőhöz hasonlóan kell kinéznieHostName=contoso-hub.azure-devices.net;DeviceId=myEdgeDevice;SharedAccessKey=<DEVICE_SHARED_ACCESS_KEY>: .

Az IoT Edge-eszköz konfigurálása

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

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

Az IoT Edge-futtatókörnyezet minden IoT Edge-eszközön üzembe van helyezve. Három összetevőből áll. Az IoT Edge biztonsági démon minden alkalommal elindul, amikor egy IoT Edge-eszköz elindul, és elindítja az eszközt az IoT Edge-ügynök elindításával. Az IoT Edge-ügynök a modulok üzembe helyezését és monitorozását segíti az IoT Edge-eszközön, beleértve az IoT Edge-központot is. Az IoT Edge-központ az IoT Edge-eszközön lévő modulok, valamint az eszköz és az IoT Hub közötti kommunikációt kezeli.

A futtatókörnyezet konfigurálása során meg kell adnia egy eszközkapcsolati sztringet. Ez az Azure CLI-ből lekért sztring. Ez a sztring társítja a fizikai eszközt az IoT Edge-eszköz identitásához az Azure-ban.

Az IoT Edge-eszköz üzembe helyezése

Ez a szakasz egy Azure Resource Manager-sablonnal hoz létre egy új virtuális gépet, és telepíti az IoT Edge-futtatókörnyezetet. Ha inkább saját Linux-eszközt szeretne használni, kövesse az egyetlen Linux IoT Edge-eszköz manuális kiépítésének telepítési lépéseit, majd térjen vissza ehhez a rövid útmutatóhoz.

Az Üzembe helyezés az Azure-ban gomb vagy a CLI-parancsok használatával hozza létre az IoT Edge-eszközt az előre összeállított iotedge-vm-deploy sablon alapján.

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

    Üzembe helyezés az Azure-ban

  • 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 bash vagy a 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:

Paraméter 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 sztring. Cserélje le a helyőrző szöveget a virtuális gép nevére.
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.
eszköz Csatlakozás ionString Az IoT Hub eszközidentitásának kapcsolati sztring, amely a virtuális gépen az IoT Edge-futtatókörnyezet konfigurálására szolgál. A parancssori felület ezen a paraméteren belüli parancsa megragadja a kapcsolati sztring. 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 JSON formátumú kimenetet kell kapnia a parancssori felületen, amely 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.

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

A rövid útmutató többi parancsa az 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 az Azure Portalon. Használja a következő parancsot a virtuális géphez való csatlakozásra. Cserélje le és {DNS name} cserélje le {admin username} a saját értékeit.

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 az IoT Edge-eszközön.

  1. Ellenőrizze, hogy fut-e az IoT Edge. Az alábbi parancsnak ok állapotot kell visszaadnia, ha az 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. Amikor az IoT Edge-futtatókörnyezet telepítése után kijelentkezik, majd először újra bejelentkezik a gépre, az engedélyei 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 az IoT Edge-eszközön futó összes modult. Mivel első alkalommal indította el ezt a szolgáltatást, csak az edgeAgent modulnak szabad futnia. 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
    

Ezzel konfigurálta az IoT Edge-eszközt. Az eszköz készen áll a felhőben üzembe helyezett modulok futtatására.

Modul üzembe helyezése

Azure IoT Edge-eszközeit kezelheti a felhőből, és üzembe helyezhet egy olyan modult, amely telemetriaadatokat küld az IoT Hubra.

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

Az Azure IoT Edge egyik fő képessége a kód üzembe helyezése az IoT Edge-eszközökön a felhőből. Az IoT Edge-modulok tárolókként implementálható végrehajtható csomagok. Ebben a szakaszban egy előre összeállított modult fog üzembe helyezni az Azure Marketplace IoT Edge-modulok szakaszából közvetlenül az Azure IoT Hubró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 az IoT Edge használatbavételekor, mivel a szimulált adatokat fejlesztési és tesztelési célokra használhatja. Ha pontosan meg szeretné tekinteni a modult, megtekintheti a szimulált hőmérséklet-érzékelő forráskódját.

Az alábbi lépéseket követve indítsa el a Modulok beállítása varázslót, hogy üzembe helyezze az első modult az Azure Marketplace-en.

  1. Jelentkezzen be az Azure Portalra , és lépjen az IoT Hubra.

  2. A bal oldali menüben, a Eszközkezelés alatt válassza az Eszközök lehetőséget.

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

    Új IoT Edge-eszköz létrehozásakor az állapotkód 417 -- The device's deployment configuration is not set megjelenik az Azure Portalon. 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 a már létrehozott modulok, az Azure Marketplace-ről származó modulok vagy a saját maga által létrehozott modulok közül. Ebben a rövid útmutatóban egy modult fog üzembe helyezni az Azure Marketplace-en.

  5. Az IoT Edge-modulok alatt nyissa meg a Hozzáadás legördülő menüt, majd válassza a Marketplace-modult.

  6. Az IoT Edge-modul marketplace-en keresse meg és válassza ki a modult Simulated Temperature Sensor . A modul hozzá lesz adva az IoT Edge-modulok szakaszhoz a kívánt futási állapottal.

  7. Válassza a Tovább elemet : Útvonalak az útvonalak konfigurálásához.

    A Modul Azure Marketplace-ről való hozzáadásakor automatikusan létre lett hozva egy SimulatedTemperatureSensorToIoTHub nevű útvonal. Ez az útvonal minden üzenetet küld a szimulált hőmérsékleti modulból az IoT Hubnak.

  8. Válassza a Tovább: Ellenőrzés és létrehozás lehetőségre.

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

    Feljegyzés

    Amikor egy új üzemelő példányt küld egy IoT Edge-eszközre, semmi sem kerül az eszközre. Ehelyett az eszköz rendszeresen lekérdezi az IoT Hubról az új utasításokat. Ha az eszköz egy frissítettüzembe helyezési jegyzéket talál, felhasználja az új üzemelő példányra vonatkozó információt a modul lemezképeinek felhőből történő adatkiszolgálásához, majd elindítja a modulok helyi futtatását. 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 igennel rendelkezik az üzembe helyezésben megadott, de az Eszköz által jelentett területen nem, az IoT Edge-eszköz továbbra is elindítja őket. Várjon néhány percet, majd frissítse a lapot.

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, tekintse meg az IoT Edge-eszközök hibaelhárítását az Azure Portalon.

A létrejött adatok megtekintése

Ebben a rövid útmutatóban létrehozott egy új IoT Edge-eszközt, és telepítette rajta az IoT Edge-futtatókörnyezetet. Ezután az Azure Portal használatával üzembe helyez egy IoT Edge-modult az eszközön való futtatáshoz anélkül, hogy módosítania kellene magát az eszközt.

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 üzemben vagy akár szélturbinán. Az üzenet tartalmazza a környezeti hőmérsékletet, a páratartalmat, a gép hőmérsékletét, a nyomást és egy timestampet. Az IoT Edge-oktatóanyagok a modul által létrehozott adatokat használják elemzési tesztadatokként.

Nyissa meg ismét a parancssort a IoT Edge-eszközön, vagy használja az SSH-kapcsolatokat az Azure CLI-ről. Győződjön meg arról, hogy a felhőből üzembe helyezett modul fut az 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.

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

Az erőforrások eltávolítása

Ha tovább szeretne dolgozni az IoT Edge-oktatóanyagokkal, használhatja az ebben a rövid útmutatóban regisztrált és létrehozott eszközt. Ellenkező esetben törölheti a létrehozott Azure-erőforrásokat a díjak elkerülése érdekében.

Ha a virtuális gépet és az IoT Hubot egy új erőforráscsoportban hozta létre, törölheti azt 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

Az erőforráscsoport törlése nem vonható vissza.

Távolítsa el az IoTEdgeResources csoportot. Egy erőforráscsoport törlése eltarthat néhány percig.

az group delete --name IoTEdgeResources --yes

Az erőforráscsoport eltávolítását az erőforráscsoportok listájának megtekintésével ellenőrizheti.

az group list

Következő lépések

Ebben a rövid útmutatóban létrehozott egy IoT Edge-eszközt, és az Azure IoT Edge felhőfelületével kódot telepít az eszközön. Most már van egy teszteszköze, amely nyers adatokat állít elő a környezetéről.

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