Azure IoT Edge-modulok üzembe helyezése az Azure CLI-vel

A következőkre vonatkozik:IoT Edge 1.5 pipa IoT Edge 1.5 IoT Edge 1.4 pipa IoT Edge 1.4

Fontos

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

Miután létrehozta az Üzleti logikával rendelkező Azure IoT Edge-modulokat, telepítenie kell őket az eszközeire, hogy a peremhálózaton működjenek. Ha több olyan modulja van, amely együttműködik az adatok gyűjtésében és feldolgozásában, egyszerre üzembe helyezheti őket. Deklarálhatja az őket összekötő útválasztási szabályokat is.

Az Azure CLI egy nyílt forráskódú, platformfüggetlen parancssori eszköz az Azure-erőforrások, például az IoT Edge kezeléséhez. Lehetővé teszi az Azure IoT Hub-erőforrások, az eszközkiépítési szolgáltatáspéldányok és a linked-hubok felügyeletét a dobozon kívül. Az új IoT-bővítmény olyan funkciókkal bővíti az Azure CLI-t, mint az eszközkezelés és a teljes IoT Edge-képesség.

Ez a cikk bemutatja, hogyan hozhat létre JSON-alapú üzembehelyezési jegyzékfájlt, majd hogyan küldheti le az üzembe helyezést egy IoT Edge-eszközre. Az IoT Edge-modulok nagy léptékű üzembe helyezéséről és monitorozásáról további információt az IoT Edge-modulok központi telepítése és monitorozása című témakörben talál , amely több eszközt céloz meg a megosztott címkék alapján.

Előfeltételek

  • IoT Hub az Azure-előfizetésben.

  • IoT Edge-eszköz

    Ha nincs beállítva IoT Edge-eszköz, létrehozhat egyet egy Azure-beli virtuális gépen. A virtuális Linux-eszköz létrehozásához vagy virtuális Windows-eszköz létrehozásához kövesse az egyik rövid útmutatóban szereplő lépéseket.

  • Azure CLI a környezetben. Legalább az Azure CLI-verziónak 2.0.70-es vagy újabbnak kell lennie. A verziószámot az az --version paranccsal ellenőrizheti. Ez a verzió támogatja az „az” bővítményparancsokat, és ebben a verzióban került bevezetésre a Knack parancskeretrendszer.

  • Az Azure CLI IoT-bővítménye.

Üzembehelyezési jegyzék konfigurálása

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

Ha modulokat szeretne üzembe helyezni az Azure CLI használatával, mentse az üzembehelyezési jegyzékfájlt helyileg .json fájlként. A következő szakaszban található fájl elérési útját használja a parancs futtatásakor a konfiguráció eszközre való alkalmazásához.

Íme egy alapszintű üzembehelyezési jegyzék egy modullal, példaként:

Feljegyzés

Ez a minta üzembehelyezési jegyzék az IoT Edge-ügynökhöz és -központhoz az 1.1-es sémaverziót használja. A séma 1.1-es verziója az IoT Edge 1.0.10-es verziójával együtt jelent meg, és lehetővé teszi az olyan funkciókat, mint a modul indítási sorrendje és az útvonalak rangsorolása.

{
  "content": {
    "modulesContent": {
      "$edgeAgent": {
        "properties.desired": {
          "schemaVersion": "1.1",
          "runtime": {
            "type": "docker",
            "settings": {
              "minDockerVersion": "v1.25",
              "loggingOptions": "",
              "registryCredentials": {}
            }
          },
          "systemModules": {
            "edgeAgent": {
              "type": "docker",
              "settings": {
                "image": "mcr.microsoft.com/azureiotedge-agent:1.5",
                "createOptions": "{}"
              }
            },
            "edgeHub": {
              "type": "docker",
              "status": "running",
              "restartPolicy": "always",
              "settings": {
                "image": "mcr.microsoft.com/azureiotedge-hub:1.5",
                "createOptions": "{\"HostConfig\":{\"PortBindings\":{\"5671/tcp\":[{\"HostPort\":\"5671\"}],\"8883/tcp\":[{\"HostPort\":\"8883\"}],\"443/tcp\":[{\"HostPort\":\"443\"}]}}}"
              }
            }
          },
          "modules": {
            "SimulatedTemperatureSensor": {
              "version": "1.0",
              "type": "docker",
              "status": "running",
              "restartPolicy": "always",
              "settings": {
                "image": "mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:1.5",
                "createOptions": "{}"
              }
            }
          }
        }
      },
      "$edgeHub": {
        "properties.desired": {
          "schemaVersion": "1.1",
          "routes": {
            "upstream": "FROM /messages/* INTO $upstream"
          },
          "storeAndForwardConfiguration": {
            "timeToLiveSecs": 7200
          }
        }
      },
      "SimulatedTemperatureSensor": {
        "properties.desired": {
          "SendData": true,
          "SendInterval": 5
        }
      }
    }
  }
}

Üzembe helyezés az eszközön

A modulokat a modulinformációkkal konfigurált üzembehelyezési jegyzék alkalmazásával helyezheti üzembe az eszközén.

Módosítsa a címtárakat abba a mappába, ahová az üzembehelyezési jegyzékfájlt mentette. Ha a Visual Studio Code IoT Edge-sablonok egyikét használta, használja a deployment.json fájlt a megoldáskönyvtár konfigurációs mappájában, és ne a deployment.template.json fájlt.

A következő paranccsal alkalmazza a konfigurációt egy IoT Edge-eszközre:

az iot edge set-modules --device-id [device id] --hub-name [hub name] --content [file path]

Az eszközazonosító paraméter megkülönbözteti a kis- és nagybetűk értékét. A tartalomparaméter a mentett üzembehelyezési jegyzékfájlra mutat.

Képernyőkép az az iot edge set-modules parancssori kimenetről.

Modulok megtekintése az eszközön

Miután üzembe helyezte a modulokat az eszközén, az alábbi paranccsal tekintheti meg az összes modult:

A modulok megtekintése az IoT Edge-eszközön:

az iot hub module-identity list --device-id [device id] --hub-name [hub name]

Az eszközazonosító paraméter megkülönbözteti a kis- és nagybetűk értékét.

Képernyőkép az az iot hub module-identity list parancskimenetről.

Következő lépések

Ismerje meg, hogyan helyezhet üzembe és monitorozhat IoT Edge-modulokat nagy méretekben