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


Az Azure Blob Storage üzembe helyezése az IoT Edge-modulon az eszközön

A következőkre vonatkozik:IoT Edge 1.4 ellenőrzés IoT Edge 1.4

Fontos

Az IoT Edge 1.5 LTS és az IoT Edge 1.4 támogatott kiadások. Ha egy korábbi kiadáson dolgozik, olvassa el az IoT Edge frissítése című témakört.

A modulok többféleképpen is üzembe helyezhetők egy IoT Edge-eszközön, és mindegyik az Azure Blob Storage-ban működik IoT Edge-modulokon. A két legegyszerűbb módszer az Azure Portal vagy a Visual Studio Code-sablonok használata.

Előfeltételek

Üzembe helyezés az Azure Portalról

Az Azure Portal végigvezeti egy üzembehelyezési jegyzék létrehozásán és az üzembe helyezés IoT Edge-eszközre való leküldésén.

Az eszköz kiválasztása

  1. Jelentkezzen be az Azure portálra, és navigáljon az IoT központjához.
  2. Válassza az Eszközök lehetőséget az Eszközfelügyelet menüben.
  3. Válassza ki a cél IoT Edge-eszközt a listából.
  4. Válassza a Modulok beállítása lehetőséget.

Konfigurálj egy telepítési leírást

Az üzembehelyezési jegyzék egy JSON-dokumentum, amely leírja, hogy mely modulokat kell üzembe helyezni, hogyan áramlik az adatforgalom a modulok között, valamint a modul ikerpéldányainak kívánt tulajdonságait. Az Azure portálon található egy varázsló, amely végigvezet a telepítési nyilatkozat létrehozásának folyamatán. Három lépésből áll: modulok, útvonalak és Áttekintés + Létrehozás.

Modulok hozzáadása

  1. A lap IoT Edge-modulok szakaszában válassza a Hozzáadás legördülő menüt, és válassza az IoT Edge-modult az IoT Edge-modul hozzáadása lap megjelenítéséhez.

  2. A Beállítások lapon adja meg a modul nevét, majd adja meg a tárolórendszerkép URI-címét:

    • IoT Edge-modul neve: azureblobstorageoniotedge
    • Kép URI-ja: mcr.microsoft.com/azure-blob-storage:latest

    Képernyőkép az IoT Edge-modul hozzáadása lap Modulbeállítások lapjáról. .

    Ne válassza a Hozzáadás lehetőséget, amíg nem adott meg értékeket a Modulbeállítások, a Tároló létrehozása beállításai és a Modul ikerpéldány-beállításai lapon az eljárásban leírtak szerint.

    Fontos

    Az Azure IoT Edge megkülönbözteti a kis- és nagybetűket, amikor modulokat hív meg, és a Storage SDK is alapértelmezés szerint kisbetűs. Ha kisbetűsre módosítja a nevet, azzal biztosítható, hogy az IoT Edge-en futó Azure Blob Storage-kapcsolat ne szakadjon meg.

  3. Nyissa meg a Tároló létrehozása beállítások lapot.

  4. Másolja és illessze be a következő JSON-t a mezőbe, és adja meg a tárfiók adatait és a tároló csatlakoztatását az eszközön.

    {
      "Env":[
        "LOCAL_STORAGE_ACCOUNT_NAME=<local storage account name>",
        "LOCAL_STORAGE_ACCOUNT_KEY=<local storage account key>"
      ],
      "HostConfig":{
        "Binds":[
            "<mount>"
        ],
        "PortBindings":{
          "11002/tcp":[{"HostPort":"11002"}]
        }
      }
    }
    

    Képernyőkép az IoT Edge-modul hozzáadása lap Tároló létrehozása beállításai lapjáról.

  5. Frissítse a tároló létrehozási beállításaiba másolt JSON-t a következő információkkal:

    • Cserélje le <local storage account name> az megjegyezhető névre. A fiókneveknek 3–24 karakter hosszúnak kell lenniük kisbetűkkel és számokkal. Nincs szóköz.

    • Cserélje le <local storage account key> egy 64 bájtos base64-kulcsra. Olyan eszközökkel hozhat létre kulcsot, mint a Base64 Generator. Ezekkel a hitelesítő adatokkal érheti el a blobtárolót más modulokból.

    • Cserélje le <mount> a tároló operációs rendszerének megfelelően. Adja meg egy kötet nevét vagy egy meglévő könyvtár abszolút elérési útját az IoT Edge-eszközön, ahol a blobmodul tárolja az adatokat. A tároló csatlakoztatása leképozza az eszközön azt a helyet, amelyet a modul egy megadott helyére ad meg.

    Linux-tárolók esetén a formátum <az ön tároló elérési útja vagy kötete>:/blobroot. Például:

    Fontos

    • Ne módosítsa a tároló csatlakoztatási értékének második felét, amely egy adott helyre mutat az IoT Edge-alapú Blob Storage modulban. A tárolócsatlakozásnak mindig :/blobroot-ra kell végződnie Linux-konténerek esetén.

    • Az IoT Edge nem távolítja el a modultárolókhoz csatolt köteteket. Ez a működés szándékos, mivel lehetővé teszi az adatok megőrzését tárolópéldányok között, például frissítési forgatókönyvek esetében. Ha azonban ezek a kötetek használaton kívül maradnak, akkor a lemezterület elfogyásához, majd rendszerhibákhoz vezethet. Ha Docker-köteteket használ a saját forgatókönyvében, akkor javasoljuk, hogy használjon olyan Docker-eszközöket, mint a docker volume prune és docker volume rm a nem használt kötetek eltávolítására, különösen éles környezetekben.

  6. A Modul ikerbeállításai lapon másolja ki a következő JSON-t, és illessze be a mezőbe.

    {
      "deviceAutoDeleteProperties": {
        "deleteOn": <true, false>,
        "deleteAfterMinutes": <timeToLiveInMinutes>,
        "retainWhileUploading": <true,false>
      },
      "deviceToCloudUploadProperties": {
        "uploadOn": <true, false>,
        "uploadOrder": "<NewestFirst, OldestFirst>",
        "cloudStorageConnectionString": "DefaultEndpointsProtocol=https;AccountName=<your Azure Storage Account Name>;AccountKey=<your Azure Storage Account Key>; EndpointSuffix=<your end point suffix>",
        "storageContainersForUpload": {
          "<source container name1>": {
            "target": "<your-target-container-name>"
          }
        },
        "deleteAfterUpload": <true,false>
      }
    }
    
  7. Konfigurálja az egyes tulajdonságokat a helyőrzők által jelzett megfelelő értékkel. Ha az IoT Edge-szimulátort használja, állítsa az értékeket a deviceToCloudUploadProperties és a deviceAutoDeleteProperties által leírt tulajdonságokhoz kapcsolódó környezeti változókra.

    Jótanács

    A tároló nevének target elnevezési korlátozásai vannak, például az $ előtag használata nem támogatott. Az összes korlátozás megtekintéséhez tekintse meg a tárolóneveket.

    Megjegyzés:

    Ha a tárolócél névtelen vagy null, akkor alapértelmezett név lesz hozzárendelve a célhoz. Ha le szeretné állítani a tárolóba való feltöltést, azt teljesen el kell távolítani a tárolóból storageContainersForUpload. További információkért tekintse meg az deviceToCloudUploadPropertiesAdatok tárolása a peremhálózaton az Azure Blob Storage IoT Edge-en című szakaszát.

    Képernyőkép az IoT Edge-modul hozzáadása oldal Modul Twin Beállítások lapjáról.

    A deviceToCloudUploadProperties és a deviceAutoDeleteProperties modul üzembe helyezés utáni konfigurálásáról további információt a Modul ikermoduljának szerkesztése című témakörben talál. A kívánt tulajdonságokról további információt a kívánt tulajdonságok definiálása vagy frissítése című témakörben talál.

  8. Válassza a Hozzáadás lehetőséget.

  9. Válassza a Tovább: Útvonalak opciót az útvonalak szakasz folytatásához.

Útvonalak megadása

Tartsa meg az alapértelmezett útvonalakat, és válassza a Tovább: Áttekintés + létrehozás lehetőséget a felülvizsgálati szakasz folytatásához.

Az üzembe helyezés áttekintése

A felülvizsgálati szakasz az előző két szakaszban megadott beállítások alapján létrehozott JSON üzembehelyezési jegyzékfájlt mutatja be. Deklarálva van két modul is, amelyet nem adott hozzá: $edgeAgent és $edgeHub. Ez a két modul alkotja az IoT Edge-futtatókörnyezetet , és minden üzemelő példányban kötelező megadni az alapértelmezett beállításokat.

Tekintse át az üzembehelyezési adatokat, majd válassza a Létrehozás lehetőséget.

Az üzembe helyezés ellenőrzése

Az üzembe helyezés létrehozása után visszatér az IoT Hub Eszközök lapjára.

  1. Válassza ki azt az IoT Edge eszközt, amelyet a telepítéssel megcélozott, hogy megnyissa annak részleteit.
  2. Az eszköz részletei között ellenőrizze, hogy a blobtároló modul az üzembe helyezésben megadott és az eszköz által jelentettként is szerepel-e.

Eltarthat néhány percig, amíg a modul elindul az eszközön, majd visszajelentked az IoT Hubnak. Frissítse az oldalt az állapot frissítéséhez.

Üzembe helyezés a Visual Studio Code-ból

Az Azure IoT Edge sablonokat biztosít a Visual Studio Code-ban a peremhálózati megoldások fejlesztéséhez. Az alábbi lépésekkel hozzon létre egy új IoT Edge-megoldást egy blobtároló modullal, és konfigurálja az üzembehelyezési jegyzéket.

Fontos

Az Azure IoT Edge Visual Studio Code bővítmény karbantartási módban van.

  1. Válassza a Megtekintés>Parancskatalógus lehetőséget.

  2. A parancskatalógusban adja meg és futtassa a parancsot Azure IoT Edge: Új IoT Edge-megoldás.

    Képernyőkép az Új IoT Edge-megoldás futtatásáról.

    A megoldás létrehozásához kövesse a parancskatalógusban található utasításokat.

    szakterület Érték
    Mappa kiválasztása Válassza ki a fejlesztési gép helyét a Visual Studio Code-hoz a megoldásfájlok létrehozásához.
    Provide a solution name (Megoldásnév megadása) Adjon meg egy leíró nevet a megoldásnak, vagy fogadja el az alapértelmezett EdgeSolutiont.
    Select module template (Modulsablon kiválasztása) Válassza a Meglévő modul (Teljes kép URL-címének megadása) lehetőséget.
    Provide a module name (Modulnév megadása) Adjon meg egy teljes kisbetűs nevet a modulhoz, például az azureblobstorageoniotedge nevet.

    Fontos, hogy kisbetűs nevet használjon az Azure Blob Storage-hoz az IoT Edge-modulban. Az IoT Edge megkülönbözteti a kis- és nagybetűket a modulokra való hivatkozáskor, és a Storage SDK alapértelmezés szerint kisbetűs.
    Docker-rendszerkép megadása a modulhoz Adja meg a kép URI-címét: mcr.microsoft.com/azure-blob-storage:latest

    A Visual Studio Code felveszi a megadott adatokat, létrehoz egy IoT Edge-megoldást, majd betölti egy új ablakban. A megoldássablon létrehoz egy üzembehelyezési jegyzéksablont, amely tartalmazza a Blob Storage-modul rendszerképét, de konfigurálnia kell a modul létrehozási beállításait.

  3. Nyissa meg deployment.template.json az új megoldás-munkaterületen, és keresse meg a modulok szakaszt . Végezze el a következő konfigurációs módosításokat:

    1. Másolja és illessze be a következő kódot a createOptions blobtároló modul mezőjébe:

      
      ```json
      "Env":[
       "LOCAL_STORAGE_ACCOUNT_NAME=<local storage account name>",
       "LOCAL_STORAGE_ACCOUNT_KEY=<local storage account key>"
      ],
      "HostConfig":{
        "Binds": ["<mount>"],
        "PortBindings":{
          "11002/tcp": [{"HostPort":"11002"}]
        }
      }
      

      Képernyőkép a Modul createOptions frissítéséről a Visual Studio Code-ban.

  4. Cserélje le <local storage account name> az megjegyezhető névre. A fiókneveknek 3–24 karakter hosszúnak kell lenniük kisbetűkkel és számokkal. Nincs szóköz.

  5. Cserélje le <local storage account key> egy 64 bájtos base64-kulcsra. Olyan eszközökkel hozhat létre kulcsot, mint a Base64 Generator. Ezekkel a hitelesítő adatokkal érheti el a blobtárolót más modulokból.

  6. Cserélje le <mount> a tároló operációs rendszerének megfelelően. Adja meg egy kötet nevét vagy az IoT Edge-eszköz egy könyvtárának abszolút elérési útját, ahol a blobmodul tárolni szeretné az adatokat. A tároló csatlakoztatása leképozza az eszközön azt a helyet, amelyet a modul egy megadott helyére ad meg.

    Linux-tárolók esetén a formátum <az ön tároló elérési útja vagy kötete>:/blobroot. Például:

    Fontos

    • Ne módosítsa a tároló csatlakoztatási értékének második felét, amely egy adott helyre mutat az IoT Edge-alapú Blob Storage modulban. A tárolócsatlakozásnak mindig :/blobroot-ra kell végződnie Linux-konténerek esetén.

    • Az IoT Edge nem távolítja el a modultárolókhoz csatolt köteteket. Ez a működés szándékos, mivel lehetővé teszi az adatok megőrzését tárolópéldányok között, például frissítési forgatókönyvek esetében. Ha azonban ezek a kötetek használaton kívül maradnak, akkor a lemezterület elfogyásához, majd rendszerhibákhoz vezethet. Ha Docker-köteteket használ a saját forgatókönyvében, akkor javasoljuk, hogy használjon olyan Docker-eszközöket, mint a docker volume prune és docker volume rm a nem használt kötetek eltávolítására, különösen éles környezetekben.

  7. Konfigurálja a deviceToCloudUploadProperties és a deviceAutoDeleteProperties tulajdonságait a modul számára a következő JSON hozzáadásával a deployment.template.json fájlhoz. Konfigurálja az egyes tulajdonságokat egy megfelelő értékkel, és mentse a fájlt. Ha az IoT Edge-szimulátort használja, állítsa be az értékeket a tulajdonságokhoz kapcsolódó környezeti változókra, amelyeket a deviceToCloudUploadProperties és a deviceAutoDeleteProperties magyarázó szakaszában talál.

    "<your azureblobstorageoniotedge module name>":{
      "properties.desired": {
        "deviceAutoDeleteProperties": {
          "deleteOn": <true, false>,
          "deleteAfterMinutes": <timeToLiveInMinutes>,
          "retainWhileUploading": <true, false>
        },
        "deviceToCloudUploadProperties": {
          "uploadOn": <true, false>,
          "uploadOrder": "<NewestFirst, OldestFirst>",
          "cloudStorageConnectionString": "DefaultEndpointsProtocol=https;AccountName=<your Azure Storage Account Name>;AccountKey=<your Azure Storage Account Key>;EndpointSuffix=<your end point suffix>",
          "storageContainersForUpload": {
            "<source container name1>": {
              "target": "<target container name1>"
            }
          },
          "deleteAfterUpload": <true, false>
        }
      }
    }
    

    Képernyőkép az azureblobstorageoniotedge kívánt tulajdonságainak beállításáról a Visual Studio Code-ban.

    A deviceToCloudUploadProperties és a deviceAutoDeleteProperties modul üzembe helyezés utáni konfigurálásáról további információt a Modul ikermoduljának szerkesztése című témakörben talál. A tároló létrehozási beállításairól, az újraindítási házirendről és a kívánt állapotról további információkért lásd az EdgeAgent kívánt tulajdonságai című részt.

  8. Mentse a deployment.template.json fájlt.

  9. Kattintson a jobb gombbal adeployment.template.json , és válassza az IoT Edge-alapú üzembehelyezési jegyzék létrehozása lehetőséget.

  10. A Visual Studio Code a deployment.template.json által megadott adatokat felhasználva hoz létre egy új üzembehelyezési jegyzékfájlt. Az üzembehelyezési jegyzék egy új konfigurációs mappában jön létre a megoldás-munkaterületen. Miután megkapta a fájlt, kövesse az Azure IoT Edge-modulok üzembe helyezésének lépéseit az Azure CLI 2.0-val.

Több modulpéldány üzembe helyezése

Ha az Azure Blob Storage több példányát szeretné üzembe helyezni az IoT Edge-modulon, meg kell adnia egy másik tárolási útvonalat, és módosítania kell azt az HostPort értéket, amelyhez a modul kapcsolódik. A blobtároló modulok mindig az 11002-s portot teszik elérhetővé a tárolóban, de deklarálhatja, hogy melyik porthoz van kötve a gazdagépen.

A Tároló létrehozási beállítások szerkesztése (az Azure Portalon) vagy a createOptions mező (a Visual Studio Code deployment.template.json fájljában) az HostPort érték megváltoztatásához:

"PortBindings":{
  "11002/tcp": [{"HostPort":"<port number>"}]
}

Ha további blobtároló modulokhoz csatlakozik, módosítsa a végpontot úgy, hogy a frissített gazdagépportra mutasson.

Proxytámogatás konfigurálása

Ha a szervezet proxykiszolgálót használ, konfigurálnia kell az edgeAgent és az edgeHub futtatókörnyezeti modulok proxytámogatását. Ez a folyamat két feladatot foglal magában:

  • Konfigurálja a futtatókörnyezet démonjait és az IoT Edge-ügynököt az eszközön.
  • Állítsa be a HTTPS_PROXY környezeti változót az üzembehelyezési jegyzék JSON-fájljában lévő modulokhoz.

Ezt a folyamatot az IoT Edge-eszköz konfigurálása proxykiszolgálón keresztüli kommunikációhoz című cikk ismerteti.

Emellett a blobtároló modulhoz szükség van a HTTPS_PROXY beállításra is a jegyzék-üzembehelyezési fájlban. Közvetlenül szerkesztheti az üzembehelyezési jegyzékfájlt, vagy használhatja az Azure Portalt.

  1. Lépjen az IoT Hubra az Azure Portalon, és válassza az Eszközök lehetőséget az Eszközfelügyelet menüben

  2. Válassza ki a konfigurálni kívánt modullal rendelkező eszközt.

  3. Válassza a Modulok beállítása lehetőséget.

  4. A lap IoT Edge-modulok szakaszában válassza ki a blobtároló modult.

  5. Az IoT Edge-modul frissítése lapon válassza a Környezeti változók lapot.

  6. Adja hozzá HTTPS_PROXY az értékhez tartozó nevet és a proxy URL-címét.

    Képernyőkép az IoT Edge-modul frissítése panelről, ahol megadhatja a megadott értékeket.

  7. Válassza a Frissítés, majd a Véleményezés + Létrehozás lehetőséget.

  8. Tekintse meg, hogy a proxy hozzá van adva a modulhoz az üzembehelyezési jegyzékben, és válassza a Létrehozás lehetőséget.

  9. A beállítás ellenőrzéséhez válassza ki a modult az eszköz részleteit tartalmazó lapon, majd az IoT Edge-modulok részletei lap alsó részén válassza a Környezeti változók lapot.

    Képernyőkép a Környezeti változók lapról.

Következő lépések

További információ az Azure Blob Storage-ról az IoT Edge-en.

Az üzembehelyezési jegyzékek működéséről és azok létrehozásáról további információt az IoT Edge-modulok használatának, konfigurálásának és újrafelhasználásának ismertetése című témakörben talál.