Megosztás a következőn keresztül:


Az Azure IoT Edge beállítása az Azure Sphere-hez

Az Azure IoT Edge szűrő- és adatfeldolgozási réteget biztosít az alsóbb rétegbeli eszközök, például az Azure Sphere és a Azure IoT Hub között. Fontolja meg az Azure IoT Edge használatát, ha az Azure Sphere-eszköz jelentős mennyiségű, utólagos feldolgozást igénylő adatot vagy adatot állít elő.

Ez a témakör az Azure IoT Edge-eszközök Azure Sphere-rel való beállításának lépéseit ismerteti. Az Azure Sphere az Azure IoT Edge 1.1-s és 1.2-s verzióját is támogatja; az utasítások között jelentős különbségek szerepelnek. A fő különbségek a következők:

  • A csomag neve a következőre iotedgeaziot-edgemódosult: .
  • Az alapértelmezett konfigurációs fájl új nevet és helyet tartalmaz. Az Azure IoT Edge 1.1-ben a konfigurációs fájl az /etc/iotedge/config.yaml volt. Az Azure IoT Edge 1.2-ben a konfigurációs fájl az /etc/aziot/config.toml.
  • Az Azure IoT Edge 1.2-höz teljes tartománynévre (FQDN) van szükség, amely a hálózaton található DNS-kiszolgálón keresztül érhető el.

A témakör feladatainak elvégzése után az Azure Sphere-eszköz úgy lesz konfigurálva, hogy adatokat küldjön egy Azure IoT Hub egy transzparens átjáróként működő Azure IoT Edge eszközön keresztül. Az Azure IoT Edge-eszköz egy moduljával további adatszűrést és -feldolgozást adhat hozzá az Azure IoT Edge modul útmutatójának követésével.

Mielőtt hozzákezdene

A jelen témakör lépései a következőket feltételezik:

  • Az Azure Sphere-eszköz USB-n keresztül csatlakozik a számítógéphez.
  • Rendelkezik Azure-előfizetéssel.
  • Létrehozott egy Azure IoT Hub-példányt, és manuálisan kiépített egy eszközt. Vegye figyelembe, hogy az eljárás későbbi szakaszában (6. lépés) a katalógus hitelesítésszolgáltatói tanúsítványát kell használnia a IoT Hub.
  • Létrehozott egy erőforráscsoportot, és a Azure IoT Hub és IoT Edge szolgáltatásokhoz kapcsolódó összes erőforrásnak ehhez az erőforráscsoporthoz kell tartoznia.

Fontos

Bár ingyenesen létrehozhat Azure-előfizetést, a regisztrációs folyamathoz meg kell adnia egy hitelkártyaszámot. Az Azure az előfizetési szolgáltatás több szintjét biztosítja. Alapértelmezés szerint a Standard szint, amely havi szolgáltatási díjat igényel, Azure IoT Hub példány létrehozásakor van kiválasztva. A havi díj elkerüléséhez válassza az Ingyenes szintet. Az ingyenes szint tartalmazza azokat a szolgáltatásokat, amelyekre az eszköznek egy Azure IoT Hub-példányon való használatához szükség van, beleértve az ikereszközt is. Ha nem rendelkezik Azure-előfizetéssel, a kezdés előtt hozzon létre egy ingyenes fiókot .

Áttekintés

Egy Azure-IoT Edge eszköz beállításához és Azure Sphere-eszközhöz való konfigurálásához többlépéses folyamatra van szükség, és körülbelül 8 órát kell megterveznie a lépések végrehajtására, különösen akkor, ha nem ismeri az Azure IoT Edge. Ha most először dolgozik az Azure IoT Edge, kövesse az egyes szakaszokban található rövid útmutatókat egy Linux rendszerű virtuális gépen futó IoT Edge eszköz beállításához és konfigurálásához.

Ezeket a lépéseket azure sphere-katalógusonként és Azure IoT Edge eszközönként csak egyszer kell elvégezni; azonban minden Azure Sphere-eszközt manuálisan kell konfigurálni a Azure IoT Hub, és az Azure IoT Edge eszközt az Azure Sphere-eszköz szülőjeként kell beállítani.

A telepítési lépések három logikai csoportba oszthatók:

  • A IoT Edge eszköz létrehozása és konfigurálása transzparens átjáróként

    • 1. lépés. Azure-IoT Edge-eszköz létrehozása.
    • 2. lépés. Konfigurálja az Azure IoT Edge átjáróeszközt kiszolgálóként.
    • 3. lépés. Nyissa meg az Azure IoT Edge átjáróeszköz portokat a kommunikációhoz.
    • 4. lépés. Frissítse az átjáró gazdanevét a config.toml fájlban (Azure IoT Edge 1.2-es verzió) vagy a config.yaml (Azure IoT Edge 1.1-es verziója).
  • Az Azure Sphere-eszköz konfigurálása Azure IoT Hub

    • 5. lépés. Állítsa be az Azure IoT Edge eszközt az Azure Sphere-eszköz szülőjeként.
  • Megbízható kapcsolat létrehozása az Azure Sphere-eszköz és a IoT Edge eszköz között

    • 6. lépés. Adja meg az Azure Sphere-eszköz katalógusbeli hitelesítésszolgáltatói tanúsítványát az Azure IoT Edge eszköznek.
    • 7. lépés. Adja meg az Azure IoT Edge eszköz legfelső szintű hitelesítésszolgáltatói tanúsítványát az Azure Sphere-eszköznek.

1. lépés. Azure IoT Edge-eszköz létrehozása

Ha még nem tette meg, be kell állítania egy Azure IoT Edge-eszközt, és regisztrálnia kell azt a Azure IoT Hub.

A Device Provisioning Service (DPS) használatával kiépítheti az Azure IoT Edge eszközt. Az Azure Sphere-eszköz üzembe helyezéséhez azonban nem használhatja a DPS-t. Az Azure IoT Edge-eszköz Azure IoT Hub DPS-sel lefelé irányuló eszközök automatikus kiépítése nem támogatott.

Az IoT Edge rövid útmutató lépéseit követve beállíthat egy Linux rendszerű virtuális gépen vagy Windows-eszközön futó Azure IoT Edge-eszközt, és regisztrálhatja azt a Azure IoT Hub.

A rövid útmutató lépéseit követve tegye a következőket:

  • Azure IoT Edge-eszköz regisztrálása a Azure IoT Hub-példányon. Ebben a lépésben ne hozzon létre új IoT Hubot, csak regisztrálja az Azure-IoT Edge-eszközt a már létrehozott IoT Hubra.
  • Telepítse és indítsa el az Azure IoT Edge-futtatókörnyezetet az Azure IoT Edge-eszközön.

Megjegyzés

A IoT Edge rövid útmutatójában állítsa le a modul üzembe helyezése előtt.

2. lépés. A IoT Edge átjáróeszköz konfigurálása kiszolgálóként

Kövesse az Azure IoT Edge-eszköz konfigurálása transzparens átjáróként (Azure IoT Edge 1.2) vagy Az Azure IoT Edge 1.1-es verziójának konfigurálásához című szakasz utasításait, de hagyja abba a műveletet, amikor eléri a "Portok megnyitása átjáróeszközön" szakaszt. Bár ezek az utasítások arra utasítják, hogy másolja a tanúsítványfájlokat a IoT Edge eszközére, ne másolja a fájlokat a virtuális gépre az eljárás 8. lépéséig.

Az eszközátjáró kiszolgálóként való konfigurálásának lépéseinek részeként a következőkre lesz szüksége:

  • Konfigurálta az Azure IoT Edge eszköztanúsítványokat.
  • Üzembe helyezte az Azure IoT Edge hub modult.
  • Az üzenetek Azure-IoT Edge keresztüli útválasztása konfigurálva.

A lépések részeként a következő tanúsítványokat is létre fogja hozni:

  • Legfelső szintű hitelesítésszolgáltatói tanúsítvány: certs/azure-iot-test-only.root.ca.cert.pem
  • Eszköz hitelesítésszolgáltatói tanúsítványa és titkos kulcsa (a IoT Edge eszköz IoT Hub való regisztrálásához használható):
    • certs/iot-edge-device-identity-<cert-name>-full-chain.cert.pem
    • private/iot-edge-device-identity-<cert-name>.key.pem
  • IoT Edge hitelesítésszolgáltatói tanúsítványt és titkos kulcsot (át kell másolni egy IoT Edge eszközre, és hivatkozni kell a konfigurációs fájlban):
    • certs/iot-edge-device-ca-<cert-name>-full-chain.cert.pem
    • private/iot-edge-device-ca-<cert-name>.key.pem

Ha követi a rövid útmutatót, használja a demótanúsítványok konfigurálására vonatkozó Linux-utasításokat, ha a számítógép, amelyen a tanúsítványokat létrehozza, Linux-alapú számítógép. A Windows-utasítások segítségével létrehozhatja a demótanúsítványokat, ha a számítógép, amelyen a tanúsítványokat létrehozza, Windows-alapú számítógép. A főtanúsítványok Linux rendszerű virtuális gépre vagy helyi Windows-számítógépre történő másolásához tekintse meg a szakaszt.

Az Azure IoT Edge legfelső szintű hitelesítésszolgáltatói tanúsítványa a 7. lépésben módosul, de a 8. lépésben szüksége lesz az eredeti tanúsítványra. Őrizze meg az eredeti tanúsítvány másolatát, hogy újra felhasználhassa.

Megjegyzés

A config.toml (Azure IoT Edge 1.2) vagy config.yaml (Azure IoT Edge 1.1) fájl certificates szakaszának frissítésekor győződjön meg arról, hogy a certificates: config.toml (Azure IoT Edge 1.2) vagy a config.yaml (Azure IoT Edge 1.1) sorában nincs korábbi szóköz, és hogy a beágyazott tanúsítványok mindegyike két szóközzel van behúzva.

A fájl frissítése után ellenőrizze, hogy az edgehub modul fut-e az Azure IoT Edge-eszközön:

sudo iotedge list

További információ: Az IoT Edge-eszközök használata átjáróként (Azure IoT Edge 1.2) vagy Azure IoT Edge 1.1.

Ha teszttanúsítványokat használ, állítsa le a elemet az alsóbb rétegbeli eszköztanúsítvány létrehozása előtt, az alsóbb rétegbeli eszköztanúsítványok létrehozása (Azure IoT Edge 1.2) vagy az Azure IoT Edge 1.1 című témakörben leírtak szerint.

3. lépés. Az Azure IoT Edge átjáróeszköz portjának megnyitása kommunikációhoz

Az átjáróeszközöknek képesnek kell lenniük üzeneteket fogadni az alsóbb rétegbeli eszközeikről. Egy átjáróforgatókönyv működéséhez az IoT Hub legalább egyik támogatott protokolljának nyitva kell lennie az alsóbb rétegbeli eszközökről érkező bejövő forgalom számára.

Az Azure Sphere az MQTT protokollt használja. Ez a protokoll a 8883-at használja.

További információ: Portok megnyitása átjáróeszközön (Azure IoT Edge 1.2) vagy Azure IoT Edge 1.1.

Az alábbi lépéseket követve nyissa meg a 8883-at egy Windows rendszerű virtuális gépen, miután beállított egy Edge-eszközt a rövid útmutatóban:

  1. Ha szükséges, jelentkezzen be a Azure Portal az Azure-fiókjával.
  2. Lépjen az 1. lépés: Azure IoT Edge-eszköz létrehozása szakaszban létrehozott virtuális gépre.
  3. A bal oldali Beállítások szakaszban válassza a Hálózatkezelés, majd a Bejövőport-szabály hozzáadása lehetőséget.
  4. A Bejövőport-szabály hozzáadása panel Célporttartományok területén módosítsa az értéket 8883-ra.
  5. A Protokoll területen válassza a TCP lehetőséget.
  6. A Név területen módosítsa az értéket MQTT értékre.
  7. Hagyja meg az összes többi beállítást alapértelmezettként, majd válassza a Hozzáadás lehetőséget.

Kövesse az alábbi lépéseket a 8883-es port linuxos virtuális gépen való megnyitásához, miután beállított egy Azure-IoT Edge-eszközt a rövid útmutatóban:

  1. Futtassa a következő parancsot annak ellenőrzéséhez, hogy az MQTT portja nyitva van-e:

    sudo netstat -lptu

  2. Ha szükséges, a port megnyitásához használja a következő parancsot:

    sudo ufw allow 8883

Ez meghatároz egy bejövő biztonsági szabályt, amely lehetővé teszi az MQTT protokoll és az Azure IoT Edge Gateway közötti kommunikációt.

4. lépés. Az átjáró állomásnevének frissítése

Ez a lépés a használt Azure-IoT Edge verziójától függően különböző eljárásokat használ: Azure IoT Edge 1.2 vagy Azure IoT Edge 1.1.

Azure IoT Edge 1.2: Az átjáró gazdanevének frissítése a config.toml fájlban

Az Azure IoT Edge futtatókörnyezet a 64 karakternél rövidebb állomásneveket támogatja. A fizikai gépek általában nem rendelkeznek hosszú állomásnevekkel, de ha virtuális gépet használ Azure IoT Edge eszközként, például a rövid útmutatóban, manuálisan kell konfigurálnia az állomásnevet.

Az érvénytelen gazdagépnevek hibaelhárításához tekintse meg a gyakori hibamegoldásokat.

Kövesse az alábbi lépéseket az Azure IoT Edge eszköz gazdanevének konfigurálásához az MQTT-port gyorsútmutatóban való konfigurálása után:

  1. Keresse meg a teljes tartománynevet (FQDN) az IoT Edge-átjáróhoz. Ehhez navigáljon a IoT Edge eszközére (Linux rendszerű virtuális gépre) az Azure Portalon, és másolja a DNS-név értékét az áttekintési oldalról.

  2. Ha szükséges, jelentkezzen be az Azure IoT Edge eszközre.

  3. Nyissa meg a config.toml fájlt egy szövegszerkesztőben.

    /etc/aziot/config.toml

  4. Illessze be a teljes tartománynevet a config.toml állomásnév szakaszába. Győződjön meg arról, hogy a név kisbetűs.

    hostname: "<iotedge_machinename>.<mydomain>"
    

    Megjegyzés

    Az Azure IoT Edge 1.2-es vagy újabb verzióval való kialakításnak megfelelően a gazdagépnévnek FQDN-névnek kell lennie (az IP-cím már nem engedélyezett, mint az 1.1-es verzióban), ezért egy olyan DNS-kiszolgáló, amelyen a megfelelő A rekord található ugyanazon a hálózaton, kötelező.

  5. Indítsa újra a iotedge démont.

    sudo systemctl restart iotedge

  6. Ha az állapotban hibák ([ERROR] előtaggal ellátott színes szöveg) jelennek meg, a részletes hibainformációkért tekintse meg a démonnaplókat.

    sudo journalctl -u iotedge --no-pager --no-full

  7. A figyelmeztetések elkerülése érdekében állítsa be az Azure-IoT Edge-eszköz moduljainak DNS-konfigurációját úgy, hogy az tartalmazza az /etc/docker/daemon.json helyen található konfigurációs fájlt, például:

    {
         "dns": ["<IP address of your DNS server>"]
    }
    

Azure IoT Edge 1.1: Az átjáró gazdanevének frissítése a config.yaml fájlban

Az Azure IoT Edge futtatókörnyezet a 64 karakternél rövidebb állomásneveket támogatja. A fizikai gépek általában nem rendelkeznek hosszú állomásnevekkel, de ha virtuális gépet használ Azure IoT Edge eszközként, például a rövid útmutatóban, manuálisan kell konfigurálnia az állomásnevet.

Az érvénytelen gazdagépnevek hibaelhárításához tekintse meg a gyakori hibamegoldásokat.

Kövesse az alábbi lépéseket az Azure IoT Edge eszköz gazdanevének konfigurálásához az MQTT-port gyorsútmutatóban való konfigurálása után:

  1. A Azure Portal keresse meg a virtuális gépet. Másolja ki a DNS-név (a gép teljes tartományneve) értékét az Áttekintés szakaszból.

  2. Ha szükséges, jelentkezzen be az Azure IoT Edge eszközre.

  3. Nyissa meg a config.yaml fájlt egy szövegszerkesztőben.

    /etc/iotedge/config.yaml

  4. Illessze be a teljes tartománynevet a config.yaml állomásnév szakaszába. Győződjön meg arról, hogy a név kisbetűs.

    `hostname: "<machinename>.<region>.cloudapp.azure.com"`
    

    Megjegyzés

    Előfordulhat, hogy a gazdagépnévhez (az IP-címhez vagy a tényleges állomásnévhez) a gépnevet kell használnia, ha egy DNS-feloldó a hálózaton található, mivel az Azure Sphere nem támogatja a netbiost.

  5. Indítsa újra a iotedge démont.

    sudo systemctl restart iotedge

  6. Ha az állapotban hibák ([ERROR] előtaggal ellátott színes szöveg) jelennek meg, a részletes hibainformációkért tekintse meg a démonnaplókat.

    sudo journalctl -u iotedge --no-pager --no-full

  7. A figyelmeztetések elkerülése érdekében állítsa be az Azure-IoT Edge-eszköz moduljainak DNS-konfigurációját úgy, hogy az tartalmazza az /etc/docker/daemon.json helyen található konfigurációs fájlt, például:

    {
        "dns": ["<IP address of your DNS server>"]
    }
    

5. lépés. Az Azure IoT Edge eszköz beállítása az Azure Sphere-eszköz szülőjeként

Az alábbi lépéseket követve állítsa be az Azure IoT Edge eszközt az Azure Sphere-eszköz szülőjeként:

  1. Lépjen a fent manuálisan kiépített Azure Sphere-eszközre.
  2. Válassza az Eszközazonosító lehetőséget.
  3. Válassza a fogaskerék ikont a Nincs szülőeszköz területen.
  4. Válassza ki a szülőként beállítani kívánt Azure IoT Edge eszközt.
  5. Válassza az OK, majd a Mentés lehetőséget.

Az Azure IoT Edge-eszköz mostantól az Azure Sphere-eszköz szülője lesz.

6. lépés. Adja meg az Azure Sphere-eszköz katalógusbeli hitelesítésszolgáltatói tanúsítványát a IoT Edge eszköznek

Az Azure Sphere-eszköztanúsítványok ellenőrzéséhez az Azure IoT Edge eszköznek rendelkeznie kell a katalógus hitelesítésszolgáltatójának saját példányával.

  1. Ha még nem tette meg, töltse le a katalógus hitelesítésszolgáltatói tanúsítványát. Megjegyzés: Ezt már a Azure IoT Hub konfigurálásának részeként el kellett volna végeznie.

    • A parancssorból jelentkezzen be az Azure-bejelentkezéssel:

      az login
      
    • Töltse le az Azure Sphere-katalógus hitelesítésszolgáltatói tanúsítványát. Ez a parancs letölti a tanúsítványt egy CAcertificate.cer nevű fájlba az aktuális munkakönyvtárban. Győződjön meg arról, hogy olyan könyvtárba tölti le a fájlt, amelyben írási engedéllyel rendelkezik, vagy a letöltési művelet sikertelen lesz. A kimeneti fájlnak .cer kiterjesztéssel kell rendelkeznie.

      az sphere ca-certificate download --resource-group MyResourceGroup --catalog MyCatalog --output-file CACertificate.cer
      
  2. Konvertálja a katalógus hitelesítésszolgáltatói tanúsítványát PEM formátumra. Windows rendszerű gépek formátumának átalakítására vonatkozó példautasítások a következők:

    • Keresse meg a tanúsítvány elérési útját a számítógépen, és kattintson duplán a tanúsítványra a megnyitásához.
    • Nyissa meg a Részletek lapot, és válassza a Másolás fájlba lehetőséget.
    • A Tanúsítványexportáló varázslóban válassza a Tovább gombot.
    • Válassza a Base-64 kódolású X.509 (CER) formátumot, majd kattintson a Tovább gombra.
    • Adja meg az exportálni kívánt tanúsítvány fájlnevét, majd válassza a Tovább gombot.
    • A varázsló befejezéséhez kattintson a Befejezés gombra.
    • Nevezze át a letöltött tanúsítványfájlt a .pem fájlkiterjesztésre.
  3. Fűzze hozzá a katalógustanúsítványt az Azure IoT Edge főtanúsítványához. Ne feledje, hogy a 2. lépésben hozta létre az Azure IoT Edge-tanúsítványokat.

    • Ha szükséges, jelentkezzen be az Azure IoT Edge eszközre.
    • Keresse meg IoT Edge eszköz legfelső szintű hitelesítésszolgáltatói tanúsítványának elérési útját, és nyissa meg egy szövegszerkesztőben. Ha követte a rövid útmutatót, majd az Azure IoT Edge Git-adattárban megadott szkripteket használta bemutató tanúsítványok létrehozásához, a legfelső szintű hitelesítésszolgáltatói tanúsítvány neve azure-iot-test-only.root.ca.cert.pem.
    • Nyissa meg az Azure Sphere-katalógus ca-tanúsítványát (PEM formátumban) egy szövegszerkesztőben. Másolja ki a tartalmat, és illessze be a IoT Edge legfelső szintű hitelesítésszolgáltatói tanúsítvány végére.
    • Mentse az Azure IoT Edge legfelső szintű hitelesítésszolgáltatói tanúsítványán végrehajtott módosításokat, majd zárja be a fájlt.
    • Indítsa újra az Azure IoT Edge eszközt. Linux Azure IoT Edge-eszköz esetén futtassa a következőt: sudo systemctl restart iotedge.
    • Ellenőrizze, hogy a modulok futnak-e az Azure IoT Edge-eszközön. Linux Azure IoT Edge-eszköz esetén futtassa a következőt: sudo iotedge list.

7. lépés. Adja meg az Azure IoT Edge eszköz legfelső szintű hitelesítésszolgáltatói tanúsítványát az Azure Sphere-eszköznek

Az Azure IoT Edge eszköztanúsítványok ellenőrzéséhez az Azure Sphere-eszköznek (az alsóbb rétegbeli eszköznek) rendelkeznie kell az Azure IoT Edge eszköz legfelső szintű hitelesítésszolgáltatói tanúsítványának saját másolatával, amelyet a 2. lépésben konfigurált.

További információ: Alsóbb rétegbeli eszköz csatlakoztatása azure IoT Edge-átjáróhoz.

  1. Keresse meg az eredeti Azure IoT Edge eszköz főtanúsítványát.

    • Ne feledje, hogy az eredeti Azure IoT Edge eszköz főtanúsítványa a 2. lépésben létrehozott.
    • Ha követte a rövid útmutatót, majd a IoT Edge Git-adattárban megadott szkripteket használta bemutató tanúsítványok létrehozásához, a legfelső szintű hitelesítésszolgáltatói tanúsítvány neve azure-iot-test-only.root.ca.cert.pem.
  2. Másolja az Azure IoT Edge főtanúsítványt az Azure Sphere-eszközre úgy, hogy hozzáadja az alkalmazáscsomaghoz.

8. lépés. Az IoT főtanúsítványának másolása távoli gépre

Az alábbi lépéseket követve másolja az Azure IoT Edge főtanúsítványt egy távoli Linux rendszerű virtuális gépre vagy egy helyi Windows-gépre:

  • A fájlok átviteléhez telepítheti a WinSCP eszközt . Az eszköz grafikus felhasználói felületet biztosít, így könnyebben használható, mint a parancssori megközelítés.

  • A parancssor használatához használja az SCP (Secure Copy) parancssori eszközt.

  • Ha fájlt szeretne átvinni egy helyi Windows-gépről egy távoli Linux rendszerű virtuális gépre, futtassa a következő parancsot a Windows PowerShell:

    powershell -Command scp -r <path-to-file-name> <userName@remote-ip>:<path-to-destination-directory>
    

    Mintaszintaxis:

    scp C:\Documents\cert.pem AzureUser@edgevmname-west.westus22.cloudapp.azure.com:/home/azureUser/test/

  • Ha egy fájlt egy távoli Linux rendszerű virtuális gépről egy helyi Windows-gépre szeretne átvinni, futtassa a következő parancsot a Windows PowerShell:

    powershell -Command scp -r <userName@remote-ip>:<path-to-file-name> <path-to-destination-dir>
    

    Mintaszintaxis:

    scp azureUser@edgevmname-west.westus22.cloudapp.azure.com:/home/azureUser/test/cert.pem C:\Documents\

Hibaelhárítás

Ha problémákat tapasztal az Azure IoT Edge a környezetben való futtatásával kapcsolatban, az alábbi cikkeket használhatja a hibaelhárításhoz és a diagnosztikához:

Következő lépések

  • A jelen témakörben ismertetett lépések elvégzése után futtathatja az Azure IoT-mintát az Azure IoT Edge használatával való csatlakozásra vonatkozó utasításokat követve.