Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Érvényes:
IoT Edge 1.1
Fontos
Az IoT Edge 1.1 támogatási dátuma 2022. december 13. volt. A termék, szolgáltatás, technológia vagy API támogatásáról a Microsoft termékéletciklusában tájékozódhat. Az IoT Edge legújabb verziójára való frissítésről további információt az IoT Edge frissítése című témakörben talál.
Ebben a cikkben linuxos Azure-beli virtuális gépet konfigurálunk transzparens átjáróként működő Azure IoT Edge-eszközként. A transzparens átjárókonfigurációval az eszközök anélkül csatlakozhatnak az Azure IoT Hubhoz az átjárón keresztül, hogy tudnák, hogy az átjáró létezik. Ugyanakkor az IoT Hubban az eszközökkel kommunikáló felhasználók nem tudnak a köztes átjáró eszközéről. Végül hozzáadjuk a peremelemzést a rendszerünkhöz azzal, hogy IoT Edge modulokat csatolunk a transzparens átjáróhoz.
Megjegyzés
Az oktatóanyagban szereplő fogalmak az IoT Edge minden verziójára vonatkoznak, de a forgatókönyv kipróbálásához létrehozott mintaeszköz az IoT Edge 1.1-es verzióját futtatja.
A cikkben szereplő lépéseket általában egy felhőfejlesztő hajtja végre.
Az oktatóanyag ezen szakaszában a következőket sajátíthatja el:
- Hozzon létre tanúsítványokat, hogy az átjáróeszköz biztonságosan kapcsolódhasson az alsóbb rétegbeli eszközökhöz.
- IoT Edge-eszköz létrehozása.
- Hozzon létre egy Azure-beli virtuális gépet az IoT Edge-eszköz szimulálásához.
Előfeltételek
Ez a cikk az Azure Machine Learning IoT Edge-en való használatával kapcsolatos oktatóanyagok sorozatának része. A sorozat minden cikke az előző cikkben szereplő munkára épül. Ha közvetlenül a cikkhez érkezett, tekintse meg a sorozat első cikkét .
Tanúsítványok létrehozása
Ahhoz, hogy egy eszköz átjáróként működjön, biztonságosan csatlakoznia kell az alsóbb rétegbeli eszközökhöz. Az IoT Edge használatával nyilvános kulcsú infrastruktúrát (PKI) használhat az eszközök közötti biztonságos kapcsolatok beállításához. Ebben az esetben engedélyezzük, hogy egy alsóbb rétegbeli IoT-eszköz transzparens átjáróként működő IoT Edge-eszközhöz csatlakozzon. Az ésszerű biztonság fenntartása érdekében az alsóbb rétegbeli eszköznek meg kell erősítenie az IoT Edge-eszköz identitását. További információ az IoT Edge-eszközök tanúsítványhasználatáról: Azure IoT Edge-tanúsítványhasználati adatok.
Ebben a szakaszban létrehozzuk az önaláírt tanúsítványokat egy Docker-rendszerkép használatával, amelyet aztán létrehozunk és futtatunk. Úgy döntöttünk, hogy docker-rendszerképet használunk a lépés végrehajtásához, mivel csökkenti a tanúsítványok windowsos fejlesztői gépen való létrehozásához szükséges lépések számát. Az IoT Edge-eszközfunkciók teszteléséhez tekintse meg a Docker-rendszerképpel automatizált funkciókat bemutató tanúsítványok létrehozása című témakört.
Jelentkezzen be a fejlesztői virtuális gépre.
Hozzon létre egy új mappát a c:\edgeCertificates elérési úttal és névvel.
Ha még nem fut, indítsa el a Windows Dockert a Windows Start menüjéből.
Nyissa meg a Visual Studio Code-ot.
Válassza a Fájl>Mappa megnyitása, majd válassza a C:\source\IoTEdgeAndMlSample\CreateCertificates.
Az Explorer panelen kattintson a jobb gombbal a dockerfile elemre, és válassza a Rendszerkép létrehozása lehetőséget.
A párbeszédpanelen fogadja el a kép nevének és címkéjének alapértelmezett értékét: createcertificates: latest.
Várjon, amíg a build befejeződik.
Megjegyzés
Előfordulhat, hogy egy hiányzó nyilvános kulcsra vonatkozó figyelmeztetés jelenik meg. Nyugodtan figyelmen kívül hagyhatja ezt a figyelmeztetést. Hasonlóképpen, megjelenik egy biztonsági figyelmeztetés, amely azt javasolja, hogy ellenőrizze vagy állítsa alaphelyzetbe a kép engedélyeit, amit nyugodtan figyelmen kívül hagyhat ehhez a képhez.
A Visual Studio Code terminálablakában futtassa a createcertificates tárolót.
docker run --name createcertificates --rm -v c:\edgeCertificates:/edgeCertificates createcertificates /edgeCertificatesA Docker hozzáférést kér a c:\ meghajtóhoz. Válassza a Megosztás lehetőséget.
Adja meg a hitelesítő adatait, amikor a rendszer kéri.
A tároló futtatása után ellenőrizze a következő fájlokat a c:\edgeCertificates fájlban:
- c:\edgeCertificates\certs\azure-iot-test-only.root.ca.cert.pem
- c:\edgeCertificates\certs\new-edge-device-full-chain.cert.pem
- c:\edgeCertificates\certs\new-edge-device.cert.pem
- c:\edgeCertificates\certs\new-edge-device.cert.pfx
- c:\edgeCertificates\private\new-edge-device.key.pem
Tanúsítványok feltöltése az Azure Key Vaultba
Ha biztonságosan szeretné tárolni a tanúsítványokat, és több eszközről is elérhetővé szeretné tenni őket, feltöltjük a tanúsítványokat az Azure Key Vaultba. Ahogy az előző listában látható, kétféle tanúsítványfájlunk van: PFX és PEM. A PFX-fájlt Key Vault-tanúsítványokként fogjuk kezelni, amelyet fel kell tölteni a Key Vaultba. A PEM-fájlok egyszerű szövegek, és Key Vault-titkos kulcsként kezeljük őket. A Jupyter-jegyzetfüzetek futtatásával létrehozott Azure Machine Learning-munkaterülethez társított Key Vault-példányt fogjuk használni.
Az Azure Portalon lépjen az Azure Machine Learning-munkaterületre.
A Machine Learning-munkaterület áttekintési lapján keresse meg a Key Vault nevét.
A fejlesztői gépen töltse fel a tanúsítványokat a Key Vaultba. Cserélje le a <subscriptionId> és a <keyvaultname> helyét a saját erőforrás-információira.
c:\source\IoTEdgeAndMlSample\CreateCertificates\upload-keyvaultcerts.ps1 -SubscriptionId <subscriptionId> -KeyVaultName <keyvaultname>Ha a rendszer kéri, jelentkezzen be az Azure-ba.
A szkript néhány percig fut az új Key Vault-bejegyzések listáját tartalmazó kimenettel.
IoT Edge-eszköz regisztrálása
Az Azure IoT Edge-eszköz IoT Hubhoz való csatlakoztatásához először regisztrálunk egy eszközt a központban. A kapcsolati sztringet a felhőben lévő eszközidentitásból vesszük, és arra használjuk, hogy konfiguráljuk a futtatókörnyezetet az IoT Edge-eszközön. Miután egy konfigurált eszköz csatlakozott a központhoz, üzembe helyezhetünk modulokat, és üzeneteket küldhetünk. A fizikai IoT Edge-eszköz konfigurációját az IoT Hub megfelelő eszközidentitásának módosításával is módosíthatjuk.
Ebben az oktatóanyagban regisztráljuk az új eszközidentitást a Visual Studio Code használatával. Ezeket a lépéseket az Azure Portalon vagy az Azure CLI-vel is elvégezheti. Bármelyik módszert is választja, győződjön meg arról, hogy beszerzi az IoT Edge-eszköz eszközkapcsolati sztringét. Az eszköz kapcsolati sztringje az eszköz részletes oldalán található az Azure Portalon.
A fejlesztői gépen nyissa meg a Visual Studio Code-ot.
Bontsa ki az Azure IoT Hub-keretet a Visual Studio Code Explorer nézetből.
Jelölje ki az ellipszist, és válassza az IoT Edge-eszköz létrehozása opciót.
Adjon nevet az eszköznek. Az egyszerűség kedvéért az aaTurbofanEdgeDevice nevet használjuk, hogy az a felsorolt eszközök tetejére legyen rendezve.
Az új eszköz megjelenik az eszközök listájában.
Azure-beli virtuális gép üzembe helyezése
Egy Ubuntu 18.04 LTS virtuális gépet használunk, amelyen telepítve és konfigurálva van az Azure IoT Edge-futtatókörnyezet. Az üzembe helyezés az iotedge-vm-deploy projektadattárban karbantartott Azure Resource Manager-sablont használja. Az előző lépésben regisztrált IoT Edge-eszközt a sablonban megadott kapcsolati sztring használatával helyezi üzembe.
A virtuális gépet az Azure Portalon vagy az Azure CLI-vel helyezheti üzembe. Az Azure Portal lépéseit mutatjuk be. További információ: Az Azure IoT Edge futtatása Ubuntu virtuális gépeken .
Azure-ba telepítés az "Azure-ba telepítés" gomb használatával
Ha az
iotedge-vm-deployARM-sablont szeretné használni az Ubuntu 18.04 LTS virtuális gép üzembe helyezéséhez, kattintson az alábbi gombra:Az újonnan elindított ablakban töltse ki az elérhető űrlapmezőket.
Terület Leírás Előfizetés A virtuális gép üzembe helyezésére szolgáló aktív Azure-előfizetés. Erőforráscsoport Meglévő vagy újonnan létrehozott erőforráscsoport, amely tartalmazza a virtuális gépet és a hozzá tartozó erőforrásokat. DNS-címke előtagja Az ön által kiválasztott kötelezően megadandó érték, amely a virtuális gép gazdagépnevének előtagként használatos. Rendszergazdai felhasználónév Egy felhasználónév, amely az üzembe helyezés során alapvető jogosultságokat kap. Eszközkapcsolati karakterlánc Eszközkapcsolati sztring a kívánt IoT Hubon létrehozott eszközhöz. Virtuális gép mérete Az üzembe helyezendő virtuális gép mérete Ubuntu operációs rendszer verziója Az alap virtuális gépen telepíteni kívánt Ubuntu operációs rendszer verziója. Helyszín A virtuális gép üzembe helyezésének földrajzi régiója , ez az érték alapértelmezés szerint a kiválasztott erőforráscsoport helyére kerül. Hitelesítési típus A beállításoktól függően válassza az sshPublicKey vagy a jelszót . Rendszergazdai jelszó vagy kulcs Az SSH nyilvános kulcsának vagy a jelszó értékének értéke a hitelesítési típustól függően. Ha az összes mező ki lett töltve, jelölje be a lap alján található jelölőnégyzetet a feltételek elfogadásához, és válassza a Véleményezés + létrehozás és létrehozás lehetőséget az üzembe helyezés megkezdéséhez.
Nyissa meg a virtuális gépet az Azure portálon. Ezt az erőforráscsoporton keresztül vagy az Azure-szolgáltatások alatt található virtuális gépek kiválasztásával találja meg a portál kezdőlapján.
Jegyezze fel a virtuális gép DNS-nevét . A virtuális gépre való bejelentkezéshez szüksége lesz rá.
Csatlakozás az IoT Edge-eszközhöz
Nyisson meg egy parancssort, és a következő paranccsal jelentkezzen be a virtuális gépre. Az előző szakasz alapján adja meg saját adatait a felhasználónévhez és a DNS-névhez.
ssh <adminUsername>@<DNS_name>Amikor a rendszer kéri a gazdagép hitelességének ellenőrzésére, írja be az igent , és válassza az Enter lehetőséget.
Amikor a rendszer kéri, adja meg a jelszavát.
Az Ubuntu megjelenít egy üdvözlő üzenetet, majd egy parancssor jelenik meg, például a
<username>@<machinename>:~$.
Key Vault-tanúsítványok letöltése
A cikk korábbi részében tanúsítványokat töltöttünk fel a Key Vaultba, hogy elérhetővé tegyük őket az IoT Edge-eszközünkhöz és az alsóbb rétegbeli eszközünkhöz. Az alsóbb rétegbeli eszköz az IoT Edge-eszközt használja átjáróként az IoT Hubbal való kommunikációhoz.
Az oktatóanyag későbbi részében foglalkozunk az alsóbb rétegbeli eszközzel. Ebben a szakaszban töltse le a tanúsítványokat az IoT Edge-eszközre.
A Linux rendszerű virtuális gépen futó SSH-munkamenetből jelentkezzen be az Azure-ba az Azure CLI-vel.
az loginA rendszer kérni fogja, hogy nyisson meg egy böngészőt egy Microsoft-eszköz bejelentkezési oldalán, és adjon meg egy egyedi kódot. Ezeket a lépéseket a helyi gépen is végrehajthatja. A hitelesítés befejezése után zárja be a böngészőablakot.
A sikeres hitelesítés után a Linux rendszerű virtuális gép bejelentkezik, és listázni fogja az Azure-előfizetéseket.
Állítsa be az Azure CLI-parancsokhoz használni kívánt Azure-előfizetést.
az account set --subscription <subscriptionId>Hozzon létre egy könyvtárat a virtuális gépen a tanúsítványokhoz.
sudo mkdir /edgeMlCertificatesTöltse le a kulcstartóban tárolt tanúsítványokat: new-edge-device-full-chain.cert.pem, new-edge-device.key.pem és azure-iot-test-only.root.ca.cert.pem.
key_vault_name="<key vault name>" sudo az keyvault secret download --vault-name $key_vault_name --name new-edge-device-full-chain-cert-pem -f /edgeMlCertificates/new-edge-device-full-chain.cert.pem sudo az keyvault secret download --vault-name $key_vault_name --name new-edge-device-key-pem -f /edgeMlCertificates/new-edge-device.key.pem sudo az keyvault secret download --vault-name $key_vault_name --name azure-iot-test-only-root-ca-cert-pem -f /edgeMlCertificates/azure-iot-test-only.root.ca.cert.pem
Az IoT Edge eszközkonfigurációjának frissítése
Az IoT Edge-futtatókörnyezet a /etc/iotedge/config.yaml fájlt használja a konfiguráció megőrzéséhez. Ebben a fájlban két információt kell frissítenünk:
- Tanúsítványok: Az alsóbb rétegbeli eszközökkel létesített kapcsolatokhoz használandó tanúsítványok
- Állomásnév: A virtuális gép IoT Edge-eszközének teljes tartományneve (FQDN)
Frissítse a tanúsítványokat és a gazdagépnevet a config.yaml fájl közvetlen szerkesztésével.
Nyissa meg a config.yaml fájlt.
sudo nano /etc/iotedge/config.yamlFrissítse a config.yaml fájl tanúsítványszakaszát a kezdő # eltávolításával és az elérési út beállításával, hogy a fájl a következő példához hasonlóan nézzen ki:
certificates: device_ca_cert: "/edgeMlCertificates/new-edge-device-full-chain.cert.pem" device_ca_pk: "/edgeMlCertificates/new-edge-device.key.pem" trusted_ca_certs: "/edgeMlCertificates/azure-iot-test-only.root.ca.cert.pem"Győződjön meg arról, hogy a tanúsítványok: sor nem rendelkezik üres szóközzel, és hogy a beágyazott tanúsítványok mindegyike két szóközzel van behúzva.
A jobb gombbal kattintás a Nanoban beilleszti a vágólap tartalmát az aktuális kurzorhelyzetbe. A sztring cseréjéhez a billentyűparancsokkal lépjen a lecserélni kívánt sztringre, törölje a sztringet, majd a jobb gombbal kattintva illessze be a pufferből.
Az Azure Portalon nyissa meg a virtuális gépet. Másolja ki a DNS-nevet (a gép teljes tartománynevét) az Áttekintés szakaszból.
Illessze be az FQDN-t a config.yml fájl állomásnév részébe. Győződjön meg arról, hogy a név kisbetűs.
hostname: '<machinename>.<region>.cloudapp.azure.com'Mentse és zárja be a fájlt a Ctrl+X, Y és Enterbillentyűkombinációval.
Indítsa újra az IoT Edge démont.
sudo systemctl restart iotedgeEllenőrizze az IoT Edge démon állapotát. A parancs után írja be a :q billentyűt a kilépéshez.
systemctl status iotedge
Hibaelhárítás
Ha az állapotban hibák ([ERROR] előtaggal ellátott színes szöveg) jelennek meg, részletes hibainformációkért tekintse meg a démonnaplókat.
journalctl -u iotedge --no-pager --no-full
A hibák elhárításával kapcsolatos további információkért tekintse meg a hibaelhárítási oldalt.
Az erőforrások tisztítása
Ez az oktatóanyag egy olyan készlet része, amelyben minden cikk az előzőekben elvégzett munkára épül. Várjon az erőforrások törlésével, amíg be nem fejezi az utolsó oktatóanyagot.
Következő lépések
Most fejeztük be egy Azure-beli virtuális gép IoT Edge-transzparens átjáróként való konfigurálását. Először a Key Vaultba feltöltött teszttanúsítványokat hoztunk létre. Ezután egy szkriptet és Resource Manager-sablont használtunk a virtuális gép üzembe helyezéséhez az Ubuntu Server 16.04 LTS + Azure IoT Edge futtatókörnyezeti rendszerképével az Azure Marketplace-ről. A virtuális gép üzembe helyezésével SSH-kapcsolaton keresztül csatlakoztunk. Ezután bejelentkeztünk az Azure-ba, és letöltöttük a tanúsítványokat a Key Vaultból. A config.yaml fájl frissítésével számos frissítést végeztünk az IoT Edge-futtatókörnyezet konfigurációjához.
Folytassa a következő cikkel az IoT Edge-modulok létrehozásához.