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.5 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.
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.
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.
Használja a Bash-környezetet az Azure Cloud Shellben. További információ: A Bash rövid útmutatója az Azure Cloud Shellben.
Ha inkább helyi cli-referenciaparancsokat szeretne futtatni, telepítse az Azure CLI-t. Ha Windows vagy macOS rendszert használ, fontolja meg az Azure CLI Docker-tárolóban való futtatását. További információ: Az Azure CLI futtatása Docker-tárolóban.
Ha helyi telepítést használ, jelentkezzen be az Azure CLI-be az az login parancs futtatásával. A hitelesítési folyamat befejezéséhez kövesse a terminálon megjelenő lépéseket. További bejelentkezési lehetőségekért lásd : Bejelentkezés az Azure CLI-vel.
Amikor a rendszer kéri, először telepítse az Azure CLI-bővítményt. További információ a bővítményekről: Bővítmények használata az Azure CLI-vel.
Futtassa az az version parancsot a telepített verzió és a függő kódtárak megkereséséhez. A legújabb verzióra az az upgrade paranccsal frissíthet.
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.
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.
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.
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.
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éznie
HostName=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.
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.
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. |
deviceConnectionString | 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.com
hasonló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.
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áljasudo
a parancsok előtt.Ha hibaelhárításra van szükség, kérje le a szolgáltatás naplóit.
sudo iotedge system logs
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.
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 a Microsoft Eszközjegyzék 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 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 első modul üzembe helyezéséhez kövesse az alábbi lépéseket.
Jelentkezzen be az Azure Portalra , és lépjen az IoT Hubra.
A bal oldali menüben, a Eszközkezelés alatt válassza az Eszközök lehetőséget.
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.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 azokból a modulokból, amelyeket saját maga készített, vagy lemezképeket egy tárolóregisztrációs adatbázisban. Ebben a rövid útmutatóban egy modult fog üzembe helyezni a Microsoft tárolóregisztrációs adatbázisából.
Az IoT Edge-modulok szakaszban válassza a Hozzáadás lehetőséget, majd válassza az IoT Edge-modult.
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 Válassza a Tovább elemet : Útvonalak az útvonalak konfigurálásához.
Adjon hozzá egy útvonalat, amely a szimulált hőmérsékleti modul összes üzenetét elküldi az IoT Hubnak.
Beállítás Érték Név szerint SimulatedTemperatureSensorToIoTHub
Érték FROM /messages/modules/SimulatedTemperatureSensor/* INTO $upstream
Válassza a Tovább: Ellenőrzés és létrehozás lehetőségre.
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.
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
Tekintse meg a hőmérséklet-érzékelő modulból küldött üzeneteket:
sudo iotedge logs SimulatedTemperatureSensor -f
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.