IoT Edge létrehozása és kiépítése Linuxhoz Windows-eszközön szimmetrikus kulcsokkal

A következőkre vonatkozik:IoT Edge 1.4 checkmark 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.

Ez a cikk a Linuxhoz készült IoT Edge Windows-eszközön való regisztrálására és kiépítésére vonatkozó, végpontok közötti utasításokat tartalmazza.

Minden IoT Hubhoz csatlakozó eszköz rendelkezik egy eszközazonosítóval, amely a felhőből az eszközre vagy az eszközről a felhőbe irányuló kommunikáció nyomon követésére szolgál. Konfigurálhat egy eszközt a kapcsolati adataival, beleértve az IoT Hub gazdagépnevét, az eszköz azonosítóját és az IoT Hubon való hitelesítéshez használt információkat.

A cikk lépései végigvezetnek egy manuális kiépítési folyamaton, ahol egyetlen eszközt csatlakoztat az IoT Hubhoz. A manuális kiépítéshez két lehetősége van az IoT Edge-eszközök hitelesítésére:

  • Szimmetrikus kulcsok: Amikor új eszközidentitást hoz létre az IoT Hubban, a szolgáltatás két kulcsot hoz létre. A kulcsok egyikét az eszközön helyezi el, és hitelesítéskor megjeleníti a kulcsot az IoT Hubnak.

    Ez a hitelesítési módszer gyorsabb az első lépésekhez, de nem olyan biztonságos.

  • X.509 önaláírt: Létrehozhat két X.509-identitástanúsítványt, és elhelyezheti őket az eszközön. Amikor új eszközidentitást hoz létre az IoT Hubban, mindkét tanúsítvány ujjlenyomatát adja meg. Amikor az eszköz hitelesíti az IoT Hubot, egy tanúsítványt jelenít meg, az IoT Hub pedig ellenőrzi, hogy a tanúsítvány megfelel-e az ujjlenyomatának.

    Ez a hitelesítési módszer biztonságosabb, és éles helyzetekben ajánlott.

Ez a cikk a szimmetrikus kulcsok hitelesítési módszerként való használatát ismerteti. Ha X.509-tanúsítványokat szeretne használni, olvassa el a Linuxhoz készült IoT Edge létrehozása és kiépítése Windows-eszközön X.509-tanúsítványokkal című témakört.

Feljegyzés

Ha sok eszközt szeretne beállítani, és nem szeretné manuálisan kiépíteni az egyes eszközöket, az alábbi cikkek egyikével megtudhatja, hogyan működik az IoT Edge az IoT Hub eszközkiépítési szolgáltatással:

Előfeltételek

Ez a cikk az IoT Edge-eszköz regisztrálását és a Linuxhoz készült IoT Edge Windows rendszeren történő telepítését ismerteti. Ezek a feladatok különböző előfeltételekkel és segédprogramokkal rendelkeznek a feladatok végrehajtásához. A folytatás előtt győződjön meg arról, hogy rendelkezik az összes előfeltételével.

Eszközfelügyeleti eszközök

Az eszköz regisztrálásának lépéseihez használhatja az Azure Portalt, a Visual Studio Code-ot vagy az Azure CLI-t . Minden segédprogramnak megvannak a saját előfeltételei, vagy szükség lehet a telepítésre:

Ingyenes vagy standard IoT Hub az Azure-előfizetésben.

Eszközkövetelmények

Az alábbi minimális követelményekkel rendelkező Windows-eszköz:

  • Rendszerkövetelmények

    • Windows 101/11 (Pro, Enterprise, IoT Enterprise)
    • Windows Server 20191/2022
      1 Windows 10 és Windows Server 2019 minimális build: 17763, az összes aktuális kumulatív frissítés telepítve van.
  • Hardverkövetelmények

    • Minimális szabad memória: 1 GB
    • Minimális szabad lemezterület: 10 GB
  • Virtualizálási támogatás

  • Hálózatkezelési támogatás

    • A Windows Server nem rendelkezik alapértelmezett kapcsolóval. Mielőtt üzembe helyezheti az EFLOW-t Egy Windows Server-eszközön, létre kell hoznia egy virtuális kapcsolót. További információ: Virtuális kapcsoló létrehozása Linuxhoz Windows rendszeren.
    • A Windows Desktop-verziók alapértelmezett kapcsolóval rendelkezik, amely az EFLOW telepítéséhez használható. Szükség esetén létrehozhatja saját egyéni virtuális kapcsolóját.

Tipp.

Ha GPU-val felgyorsított Linux-modulokat szeretne használni a Linuxhoz készült Azure IoT Edge-ben Windows-környezetben, több konfigurációs lehetőséget is figyelembe kell vennie.

A GPU-architektúrától függően telepítenie kell a megfelelő illesztőprogramokat, és előfordulhat, hogy hozzá kell férnie egy Windows Insider Program-buildhez. A konfigurációs igények meghatározásához és az előfeltételek teljesítéséhez tekintse meg a Linuxhoz készült Azure IoT Edge GPU-gyorsítását Windows rendszeren.

Mindenképpen szánjon időt a GPU-gyorsítás előfeltételeinek teljesítésére. Ha úgy dönt, hogy gpu-gyorsítást szeretne a telepítés során, újra kell indítania a telepítési folyamatot.

Fejlesztői eszközök

Készítse elő a céleszközt a Linuxhoz készült Azure IoT Edge windowsos telepítésére és a Linux rendszerű virtuális gép üzembe helyezésére:

  1. Állítsa be a végrehajtási szabályzatot a céleszközön a következőre AllSigned: . Az aktuális végrehajtási szabályzatot egy emelt szintű PowerShell-parancssorban ellenőrizheti az alábbi paranccsal:

    Get-ExecutionPolicy -List
    

    Ha a végrehajtási szabályzat local machine nem AllSigned, a végrehajtási szabályzatot a következővel állíthatja be:

    Set-ExecutionPolicy -ExecutionPolicy AllSigned -Force
    

A Linuxhoz készült Azure IoT Edge windowsos PowerShell-modullal kapcsolatos további információkért tekintse meg a PowerShell-függvények hivatkozását.

Eszköz regisztrálása

Az Azure Portal, a Visual Studio Code vagy az Azure CLI használatával a beállításoktól függően regisztrálhatja az eszközt.

Az Azure Portal IoT Hubján az IoT Edge-eszközök létrehozása és kezelése külön történik az olyan IoT-eszközöktől, amelyek nincsenek engedélyezve a peremhálózaton.

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

  2. A bal oldali panelen válassza az Eszközök lehetőséget a menüben, majd válassza az Eszköz hozzáadása lehetőséget.

  3. Az Eszköz létrehozása lapon adja meg a következő információkat:

    • Hozzon létre egy leíró eszközazonosítót, például my-edge-device-1 (az összes kisbetűs). Másolja ki ezt az eszközazonosítót, ahogy később használni fogja.
    • Jelölje be az IoT Edge-eszköz jelölőnégyzetet.
    • Hitelesítési típusként válassza a szimmetrikus kulcsot .
    • Az alapértelmezett beállításokkal automatikusan létrehozhat hitelesítési kulcsokat, amelyek az új eszközt a központhoz csatlakoztatják.
  4. Válassza a Mentés lehetőséget.

Az új eszköznek szerepelnie kell az IoT Hubon.

Most, hogy regisztrált egy eszközt az IoT Hubban, a következő lépésben lekérheti az IoT Edge-futtatókörnyezet telepítésének és kiépítésének befejezéséhez használt kiépítési információkat.

Regisztrált eszközök megtekintése és kiépítési információk lekérése

A szimmetrikus kulcsos hitelesítést használó eszközöknek szükségük van a kapcsolati sztring az IoT Edge-futtatókörnyezet telepítésének és kiépítésének befejezéséhez. A kapcsolati sztring az eszköz létrehozásakor jön létre az IoT Edge-eszközhöz. A Visual Studio Code és az Azure CLI esetében a kapcsolati sztring a JSON-kimenetben található. Ha az Azure Portalon hozza létre az eszközt, az eszközről is megtalálhatja a kapcsolati sztring. Amikor kiválasztja az eszközt az IoT Hubon, az az eszközoldalon látható módon Primary connection string lesz felsorolva.

Az IoT Hubhoz csatlakozó peremhálózati eszközök az IoT Hub Eszközök lapján találhatók. Ha több eszközzel rendelkezik, szűrheti a listát az Iot Edge-eszközök típusának kiválasztásával, majd az Alkalmaz gombra kattintva.

Ha készen áll az eszköz beállítására, szüksége lesz arra a kapcsolati sztring, amely összekapcsolja a fizikai eszközt az IoT Hub identitásával. A szimmetrikus kulcsokkal hitelesítendő eszközök kapcsolati sztring a portálon másolhatók. A kapcsolati sztring megkeresése a portálon:

  1. Az Eszközök lapon válassza ki az IoT Edge eszközazonosítóját a listából.
  2. Másolja ki az elsődleges Csatlakozás ion sztring vagy a másodlagos Csatlakozás ion karakterlánc értékét. Bármelyik kulcs működni fog.

Az IoT Edge telepítése

Telepítse az Azure IoT Edge for Linuxot Windows rendszeren a céleszközön.

Feljegyzés

Az alábbi PowerShell-folyamat bemutatja, hogyan helyezheti üzembe a Linuxhoz készült IoT Edge-et Windows rendszeren a helyi eszközön. Távoli céleszközre a PowerShell használatával történő üzembe helyezéshez a Távoli PowerShell használatával létesíthet kapcsolatot egy távoli eszközzel, és távolról futtathatja ezeket a parancsokat az eszközön.

  1. Emelt szintű PowerShell-munkamenetben futtassa az alábbi parancsok egyikét a céleszköz architektúrájától függően, hogy letöltse a Linuxhoz készült IoT Edge-et Windows rendszeren.

    • X64/AMD64

      $msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))
      $ProgressPreference = 'SilentlyContinue'
      Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_4_LTS_X64" -OutFile $msiPath
      
    • ARM64

      $msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))
      $ProgressPreference = 'SilentlyContinue'
      Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_4_LTS_ARM64" -OutFile $msiPath
      
  2. Telepítse az IoT Edge for Linuxot Windows rendszeren az eszközére.

    Start-Process -Wait msiexec -ArgumentList "/i","$([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))","/qn"
    

    A Linuxhoz készült egyéni IoT Edge-et windowsos telepítéskor és VHDX-címtárakban is megadhatja, ha hozzáadja INSTALLDIR="<FULLY_QUALIFIED_PATH>" és VHDXDIR="<FULLY_QUALIFIED_PATH>" paramétereket a telepítési parancshoz. Ha például a telepítéshez a D:\EFLOW mappát, a VHDX-hez pedig a D:\EFLOW-VHDX mappát szeretné használni, a következő PowerShell-parancsmagot használhatja.

    Start-Process -Wait msiexec -ArgumentList "/i","$([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))","/qn","INSTALLDIR=D:\EFLOW", "VHDXDIR=D:\EFLOW-VHDX"
    
  3. Állítsa be a végrehajtási szabályzatot AllSigned a céleszközön, ha még nem tette meg. Tekintse meg a parancsok PowerShell-előfeltételeit az aktuális végrehajtási szabályzat ellenőrzéséhez és a végrehajtási szabályzat beállításához AllSigned.

  4. Hozza létre a Linuxhoz készült IoT Edge-t Windows rendszeren. Az üzembe helyezés létrehozza a Linux rendszerű virtuális gépet, és telepíti az IoT Edge-futtatókörnyezetet.

    Deploy-Eflow
    

    Tipp.

    A parancs alapértelmezés szerint 1 GB RAM-mal, Deploy-Eflow 1 vCPU maggal és 16 GB lemezterülettel hozza létre a Linux rendszerű virtuális gépet. A virtuális gép által igényelt erőforrások azonban nagy mértékben függenek az üzembe helyezhető számítási feladatoktól. Ha a virtuális gép nem rendelkezik elegendő memóriával a számítási feladatok támogatásához, nem indul el.

    A virtuális gép elérhető erőforrásait testre szabhatja a Deploy-Eflow parancs választható paramétereivel. Ez szükséges az EFLOW minimális hardverkövetelményekkel rendelkező eszközön való üzembe helyezéséhez.

    Az alábbi parancs például létrehoz egy virtuális gépet 1 vCPU-maggal, 1 GB RAM-mal (MB-ban ábrázolva) és 2 GB lemezterülettel:

    Deploy-Eflow -cpuCount 1 -memoryInMB 1024 -vmDataSize 2
    

    Az összes választható paraméterről további információt a Windowson futó Linuxhoz készült IoT Edge PowerShell-függvényeivel kapcsolatban talál.

    Figyelmeztetés

    Alapértelmezés szerint az EFLOW Linux rendszerű virtuális gép nem rendelkezik DNS-konfigurációval. A DHCP-t használó üzemelő példányok megpróbálják beszerezni a DHCP-kiszolgáló által propagált DNS-konfigurációt. Ellenőrizze a DNS-konfigurációt az internetkapcsolat biztosításához. További információ: AzEFLOW-DNS.

    GPU-t rendelhet az üzembe helyezéshez a GPU-val felgyorsított Linux-modulok engedélyezéséhez. Ezeknek a funkcióknak a eléréséhez telepítenie kell a Linuxhoz készült Azure IoT Edge GPU-gyorsításával kapcsolatos előfeltételeket Windows rendszeren.

    GPU-átengedés használatához adja hozzá a gpuName, a gpuPassthroughType és a gpuCount paramétereket a Deploy-Eflow parancshoz. Az összes választható paraméterről további információt a Windowson futó Linuxhoz készült IoT Edge PowerShell-függvényeivel kapcsolatban talál.

    Figyelmeztetés

    A hardvereszközök átadásának engedélyezése növelheti a biztonsági kockázatokat. A Microsoft egy eszközcsökkentési illesztőprogramot javasol a GPU gyártójától, ha van ilyen. További információ: Grafikus eszközök üzembe helyezése különálló eszközhozzárendelés használatával.

  5. Adja meg az "Y" értéket a licencfeltételek elfogadásához.

  6. Adja meg az "O" vagy az "R" értéket a választható diagnosztikai adatok be- vagy kikapcsolásához a beállításoktól függően.

  7. Az üzembe helyezés befejezése után a PowerShell-ablak a sikeres üzembe helyezést jelenti.

    A successful deployment will say 'Deployment successful' at the end of the messages, PNG.

    A sikeres üzembe helyezés után készen áll az eszköz üzembe helyezésére.

Az eszköz kiépítése a felhőbeli identitással

Készen áll arra, hogy beállítsa az eszközt a felhőbeli identitással és a hitelesítési adatokkal.

Ha szimmetrikus kulcsokkal szeretné kiépíteni az eszközt, szüksége lesz az eszköz kapcsolati sztring.

Futtassa a következő parancsot egy emelt szintű PowerShell-munkamenetben a céleszközön. Cserélje le a helyőrző szöveget a saját értékeire.

Provision-EflowVm -provisioningType ManualConnectionString -devConnString "PASTE_DEVICE_CONNECTION_STRING_HERE"

További információ a Provision-EflowVM parancsról: PowerShell-függvények a Linuxhoz készült IoT Edge-hez Windows rendszeren.

Sikeres konfiguráció ellenőrzése

Ellenőrizze, hogy a Windows rendszeren futó Linux IoT Edge sikeresen telepítve lett-e és konfigurálva lett-e az IoT Edge-eszközön.

  1. Jelentkezzen be a Linuxhoz készült IoT Edge-be Windows rendszerű virtuális gépen a Következő paranccsal a PowerShell-munkamenetben:

    Connect-EflowVm
    

    Feljegyzés

    A virtuális gép számára az egyetlen SSH-fiók az, aki létrehozta.

  2. Miután bejelentkezett, az alábbi Linux-paranccsal ellenőrizheti a futó IoT Edge-modulok listáját:

    sudo iotedge list
    
  3. Ha az IoT Edge szolgáltatás hibaelhárítására van szüksége, használja az alábbi Linux-parancsokat.

    1. Kérje le a szolgáltatásnaplókat.

      sudo iotedge system logs
      
    2. check Az eszköz konfigurálásának és kapcsolati állapotának ellenőrzéséhez használja az eszközt.

      sudo iotedge check
      

    Feljegyzés

    Egy újonnan kiépített eszközön az IoT Edge Hubhoz kapcsolódó hiba jelenhet meg:

    × éles üzemkészség: Az Edge Hub tárolókönyvtára megmarad a gazdagép fájlrendszerén – Hiba

    Nem sikerült ellenőrizni az edgeHub-tároló aktuális állapotát

    Ez a hiba egy újonnan kiépített eszközön várható, mert az IoT Edge Hub modul nem fut. A hiba megoldásához az IoT Hubban állítsa be az eszköz moduljait, és hozzon létre egy üzembe helyezést. Az eszköz központi telepítésének létrehozása elindítja a modulokat az eszközön, beleértve az IoT Edge Hub modult is.

Ú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.

Linux IoT Edge eltávolítása Windows rendszeren

Ha el szeretné távolítani Az Azure IoT Edge for Linux windowsos telepítését az eszközéről, használja az alábbi parancsokat.

  1. Gépház megnyitása Windows rendszeren
  2. Válassza a Programok hozzáadása vagy eltávolítása lehetőséget
  3. Az Azure IoT Edge-alkalmazás kiválasztása
  4. Válassza az Eltávolítás lehetőséget

Következő lépések