Oktatóanyag: Eszközfrissítés Azure IoT Hub az Ubuntu (18.04 x64) szimulátor-referenciaügynök használatával
Ez az oktatóanyag egy, a IoT Hub eszközfrissítését használó, végpontok közötti rendszerkép-alapú frissítést mutat be. A Azure IoT Hub eszközfrissítése támogatja a képalapú, csomagalapú és szkriptalapú frissítéseket.
A képfrissítések nagyobb megbízhatóságot biztosítanak az eszköz végső állapotában. Általában egyszerűbb replikálni a rendszerkép-frissítés eredményeit egy éles üzem előtti környezet és egy éles környezet között, mert ez nem jelenti ugyanazokat a kihívásokat, mint a csomagok és függőségeik kezelése. Atomi természetükből adódóan könnyen bevezethet egy A/B feladatátvételi modellt is.
Ebből az oktatóanyagból az alábbiakat sajátíthatja el:
- IoT-eszköz hozzárendelése eszközfrissítési csoporthoz címkék használatával.
- Lemezkép letöltése és telepítése.
- Frissítés importálása.
- Képfrissítés üzembe helyezése.
- A frissítés üzembe helyezésének figyelése.
Előfeltételek
Hozzon létre egy IoT Hubbal konfigurált eszközfrissítési fiókot és -példányt .
Legyen Ubuntu 18.04-eszköz. Ez az eszköz lehet fizikai vagy virtuális gép is.
Töltse le a Release Assets nevű
Tutorial_Simulator.zip
zip-fájlt a legújabb kiadásban, és bontsa ki.Ha a teszteszköz különbözik a fejlesztőgépétől, töltse le a zip-fájlt mindkettőre.
A zip-fájl letöltéséhez használható
wget
. Cserélje le a elemet<release_version>
a legújabb kiadásra, például1.0.0
: .wget https://github.com/Azure/iot-hub-device-update/releases/download/<release_version>/Tutorial_Simulator.zip
Eszköz regisztrálása és modulidentitás konfigurálása
Adjon hozzá egy eszközt az IoT Hub eszközregisztrációs adatbázisához. Az IoT Hubhoz csatlakozó összes eszközt regisztrálni kell.
Ebben a szakaszban egy modulidentitást is létrehozunk. A modulok az IoT-eszközön található összetevők független identitásai, amelyek lehetővé teszik a részletesebbséget, ha egy IoT-eszköz több folyamatot futtat. Ebben az oktatóanyagban ezt a modulidentitást fogja használni az IoT-eszközön futó Eszközfrissítési ügynökhöz. További információ: Az ikermodulok ismertetése és használata IoT Hub.
- A Azure Portal lépjen az IoT Hubra.
- A bal oldali panelen válassza az Eszközök lehetőséget. Ezután válassza az Eszköz hozzáadása lehetőséget.
- Az Eszközazonosító területen adja meg az eszköz nevét. Győződjön meg arról, hogy az Automatikus létrehozási kulcsok jelölőnégyzet be van jelölve.
- Válassza a Mentés lehetőséget.
- Most visszatér az Eszközök lapra, és a létrehozott eszköznek szerepelnie kell a listában. Válassza ki az eszközt.
- Válassza a Modulidentitás hozzáadása lehetőséget.
- A Modul identitásának neve területen adja meg a modul nevét, például DUAgent.
- Válassza a Mentés lehetőséget
A modul másolása kapcsolati sztring
- Az eszköznézetben az új modulnak a Modulidentitások fejléc alatt kell megjelennie. Válassza ki a modul nevét a részletek megnyitásához.
- Válassza a Másolás ikont a Kapcsolati sztring (elsődleges kulcs) mellett. Mentse ezt a kapcsolati sztring az eszközfrissítési ügynök konfigurálásakor való használatra. Ez a sztring a modul kapcsolati sztring.
Címke hozzáadása a modul ikerpéldányához
Továbbra is a modul identitásának részletei oldalon válassza a Modulidentitás ikerpéldánya lehetőséget
Adjon hozzá egy új Eszközfrissítés címkeértéket az ikerfájllal azonos szinten
modelId
version
, az ábrán látható módon:"tags": { "ADUGroup": "DU-simulator-tutorial" },
Az Eszközfrissítés által felügyelt összes eszköznek szüksége van erre a fenntartott címkére, amely az eszközt egy Eszközfrissítési csoporthoz rendeli. Ez lehet az ikereszközben vagy egy modul ikerpéldányában, az itt látható módon. Minden eszköz csak egy Eszközfrissítési csoporthoz rendelhető hozzá.
Válassza a Mentés lehetőséget. A portál újraformálja a modul ikerpéldányát, hogy belefoglalja a címkét a json struktúrába.
Az Eszközfrissítési ügynök telepítése és konfigurálása
Az Eszközfrissítés ügynök minden olyan eszközön fut, amelyet az Eszközfrissítés felügyel. Ebben az oktatóanyagban úgy fogjuk konfigurálni, hogy szimulátorként fusson, hogy láthassuk, hogyan alkalmazható egy frissítés az eszközre anélkül, hogy ténylegesen módosítaná az eszköz konfigurációját.
IoT-eszközén adja hozzá a Microsoft-csomag adattárát, majd adja hozzá a Microsoft-csomagaláíró kulcsot a megbízható kulcsok listájához.
wget https://packages.microsoft.com/config/ubuntu/18.04/multiarch/packages-microsoft-prod.deb -O packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb rm packages-microsoft-prod.deb
Telepítse az Eszközfrissítési ügynök .deb csomagjait.
sudo apt-get update sudo apt-get install deviceupdate-agent
Nyissa meg az ügynök konfigurációs fájlját.
sudo nano /etc/adu/du-config.json
Frissítse a következő értékeket a konfigurációs fájlban:
- gyártó:
"Contoso"
– Ez az érték az IoT-eszköz frissítési célként való besorolására szolgál. - modell:
"Video"
– Ez az érték az IoT-eszköz frissítési célként való besorolására szolgál. - név:
"aduagent"
- agents.connectionData: Adja meg a modul identitásából másolt kapcsolati sztring.
- agents.manufacturer:
"Contoso"
- agents.model:
"Video"
Az ebben a lépésben szereplő paraméterekkel kapcsolatos további információkért lásd: Eszközfrissítés konfigurációs fájlja.
Megjegyzés
Az IoT Identity Service-t is használhatja az eszköz kiépítéséhez. Ehhez telepítse az iot behúzási szolgáltatást az Eszközfrissítési ügynök telepítése előtt. Ezután konfigurálja az Eszközfrissítési ügynököt
"connectionType": "AIS"
connectionData
üres sztringként a konfigurációs fájlban.- gyártó:
Mentse és zárja be a fájlt.
CTRL
+X
,Y
, ésEnter
.Állítsa be az ügynököt szimulátorként való futtatásra. Futtassa a következő parancsot az IoT-eszközön, hogy az eszközfrissítési ügynök meghívja a szimulátorkezelőt egy csomagfrissítés SWUpdate (
microsoft/swupdate:1
) használatával történő feldolgozásához.sudo /usr/bin/AducIotAgent --extension-type updateContentHandler --extension-id 'microsoft/swupdate:1' --register-extension /var/lib/adu/extensions/sources/libmicrosoft_simulator_1.so
Tutorial_Simulator.zip
Bontsa ki a letöltött fájlt az előfeltételek között, és másolja asample-du-simulator-data.json
fájlt atmp
mappába.cp sample-du-simulator-data.json /tmp/du-simulator-data.json
Ha a /tmp nem létezik, futtassa a következőt:
sudo mkdir/tmp sudo chown root:root/tmp sudo chmod 1777/tmp
Módosítsa az új fájl engedélyeit.
sudo chown adu:adu /tmp/du-simulator-data.json sudo chmod 664 /tmp/du-simulator-data.json
Indítsa újra az Eszközfrissítési ügynököt a módosítások alkalmazásához.
sudo systemctl restart deviceupdate-agent
Frissítés importálása
Ebben a szakaszban a fájlokat és adu-update-image-raspberrypi3.swu
a letöltött Tutorial_Simulator.zip
fájlokat TutorialImportManifest_Sim.importmanifest.json
használja az előfeltételek között. A frissítési fájl a Raspberry Pi oktatóanyagból lesz újra felhasználva. Mivel az oktatóanyagban szereplő frissítés szimulálva van, az adott fájl tartalma nem számít.
A fejlesztői gépen jelentkezzen be a Azure Portal, és lépjen az eszközfrissítéssel konfigurált IoT Hubra.
A navigációs ablak Eszközkezelés területén válassza a Frissítések lehetőséget.
Válassza az Új frissítés importálása lehetőséget.
Válassza a Kiválasztás a tárolóból lehetőséget.
Válasszon ki egy meglévő tárfiókot, vagy hozzon létre egy új fiókot a + Tárfiók lehetőség kiválasztásával. Ezután válasszon ki egy meglévő tárolót, vagy hozzon létre egy új tárolót a + Tároló lehetőség kiválasztásával. Ez a tároló fogja használni a frissítési fájlok importálásra való előkészítéséhez.
Megjegyzés
Javasoljuk, hogy minden frissítés importálásakor használjon új tárolót, hogy elkerülje a fájlok véletlen importálását a korábbi frissítésekből. Ha nem használ új tárolót, a lépés befejezése előtt mindenképpen törölje a fájlokat a meglévő tárolóból.
A tárolóban válassza a Feltöltés lehetőséget, és lépjen az előfeltételek között letöltött fájlokra. Válassza a TutorialImportManifest_Sim.importmanifest.json és az adu-update-image-raspberrypi3.swu fájlokat, majd válassza a Feltöltés lehetőséget.
Jelölje be az egyes fájlok jelölőnégyzetét, majd a Kiválasztás gombra kattintva térjen vissza a Frissítés importálása lapra.
A Frissítés importálása lapon tekintse át az importálni kívánt fájlokat. Ezután válassza a Frissítés importálása lehetőséget az importálási folyamat elindításához.
Megkezdődik az importálási folyamat, és a képernyő átvált az Importálási előzmények szakaszra. Az Állapot oszlopban az importálás fut , miközben az importálás folyamatban van , és sikeres az importálás befejezésekor. Az állapot frissítéséhez használja a Frissítés gombot.
Ha az Állapot oszlop azt jelzi, hogy az importálás sikeres volt, válassza az Elérhető frissítések fejlécet. Ekkor megjelenik az importált frissítés a listában.
Az importálási folyamatról további információt a Frissítés importálása az eszközfrissítésbe IoT Hub című témakörben talál.
Eszközcsoportok megtekintése
Az Eszközfrissítés csoportok használatával rendszerezi az eszközöket. Az Eszközfrissítés automatikusan csoportokba rendezi az eszközöket a hozzájuk rendelt címkék és kompatibilitási tulajdonságok alapján. Minden eszköz csak egy csoporthoz tartozik, de a csoportok több alcsoporttal is rendelkezhetnek a különböző eszközosztályok rendezéséhez.
Lépjen a Csoportok és üzemelő példányok lapra a Frissítések lap tetején.
Tekintse meg a csoportok listáját és a frissítési megfelelőségi diagramot. A frissítésmegfelelés diagramja a különböző megfelelőségi állapotokban lévő eszközök számát mutatja: A legújabb frissítés,az Elérhető új frissítések és a folyamatban lévő Frissítések. Tudnivalók a frissítési megfelelőségről.
Látnia kell egy eszközcsoportot, amely tartalmazza az oktatóanyagban beállított szimulált eszközt, valamint az új csoportban lévő eszközök elérhető frissítéseit. Ha vannak olyan eszközök, amelyek nem felelnek meg a csoport eszközosztály-követelményeinek, akkor a megfelelő érvénytelen csoportban jelennek meg.
További információ a címkékről és csoportokról: Eszközcsoportok kezelése.
A frissítés üzembe helyezése
A Csoportok és üzemelő példányok lapon egy új frissítésnek kell megjelennie az eszközcsoport számára. A frissítésre mutató hivatkozásnak az Állapot alatt kell lennie. Lehetséges, hogy frissítenie kell az oldalt.
Válassza ki a csoport nevét a részleteinek megtekintéséhez.
A Csoport részletei lapon látnia kell, hogy egy új frissítés érhető el. Az üzembe helyezés elindításához válassza az Üzembe helyezés lehetőséget.
Az előző szakaszban importált frissítés jelenik meg a csoport számára elérhető legjobb frissítésként. Válassza az Üzembe helyezés lehetőséget.
Ütemezze az üzembe helyezést, hogy azonnal elinduljon, majd válassza a Létrehozás lehetőséget.
A Csoport részletei lapon lépjen az Aktuális frissítések lapra. Az Üzembe helyezés részletei területen az Állapotaktívra változik.
Az eszköz sikeres frissítése után térjen vissza a Frissítések lapra. Látnia kell, hogy a megfelelőségi diagram és az üzembehelyezési adatok frissülnek, hogy azok is megegyeznek.
A frissítéstelepítés monitorozása
Térjen vissza a csoport részleteit tartalmazó lapra, és válassza az Üzembe helyezési előzmények lapot.
Válassza az Üzembe helyezés részleteinek megtekintése lehetőséget a létrehozott üzemelő példány mellett.
Válassza a Frissítés lehetőséget a legújabb állapotadatok megtekintéséhez.
Sikeresen végrehajtotta a teljes körű rendszerképek frissítését az Eszközfrissítés IoT Hub az Ubuntu (18.04 x64) szimulátor-referenciaügynök használatával.
Az erőforrások eltávolítása
Ha folytatja a következő oktatóanyagot, tartsa meg az eszközfrissítést, és IoT Hub erőforrásokat.
Ha már nincs rá szükség, törölheti ezeket az erőforrásokat a Azure Portal.
Lépjen az erőforráscsoportra a Azure Portal.
Válassza ki a törölni kívánt erőforrásokat.
- Ha törölni szeretné a csoport összes erőforrását, válassza az Erőforráscsoport törlése lehetőséget.
- Ha csak a kijelölt erőforrásokat szeretné törölni, a jelölőnégyzetek használatával jelölje ki az erőforrásokat, majd válassza a Törlés lehetőséget.
Következő lépések
Ebben az oktatóanyagban megtanulta, hogyan importálhat és helyezhet üzembe rendszerképfrissítéseket. Ezután megtudhatja, hogyan frissítheti az eszközcsomagokat.