IoT Edge-kompatibilis Linux rendszerű virtuális gép üzembe helyezése

Befejeződött

Az IoT Edge-konfiguráció teszteléséhez telepítenie kell az IoT Edge-futtatókörnyezetet egy virtuális gépen (VM).

Mielőtt valódi IoT Edge-eszközöket helyez üzembe az áruházaiban, ellenőriznie kell, hogy az eszközök a várt módon fognak-e működni. A forgatókönyv teszteléséhez azt tervezi, hogy üzembe helyezi az IoT Edge-futtatókörnyezetet egy Azure Linux rendszerű virtuális gépen, majd telepíti az IoT Edge-modulokat erre a virtuális gépre.

Itt áttekinthet néhány alapvető IoT Edge-fogalmat, megtudhatja, hogyan csatlakozik egy IoT Edge-eszköz egy IoT Central-alkalmazáshoz, és hogyan helyezi üzembe az IoT Edge-modulokat az IoT Edge-futtatókörnyezetben.

Mi az IoT Edge-futtatókörnyezet?

Az Azure IoT Edge-futtatókörnyezet egyéni és felhőbeli logikák is használatát is lehetővé teszi az IoT Edge-eszközökön. A futtatókörnyezet az IoT Edge-eszközön található, és felügyeleti és kommunikációs műveleteket hajt végre. A futtatókörnyezet:

  • Telepíti és frissíti a számítási feladatokat az eszközön.
  • Fenntartja Azure IoT Edge biztonsági szabványait az eszközön.
  • Biztosítja az IoT Edge-modulok folyamatos futását.
  • Jelenti a modulok állapotát a felhőnek a távoli monitorozáshoz.
  • Kezeli az alsóbb rétegbeli eszközök és az IoT Edge-eszközök, az IoT Edge-eszközök moduljai, az IoT Edge-eszközök és a felhő, valamint az IoT Edge-eszközök közötti kommunikációt.

Mik azok az IoT Edge-modulok?

Az IoT Edge-modulok olyan végrehajtási egységek, amelyek az üzleti logikát a peremhálózaton futtatják. A modulok Docker-kompatibilis tárolókként vannak implementálva. Több modul konfigurálható úgy, hogy kommunikáljanak egymással, létrehozva egy adatfeldolgozási folyamatot. Kifejleszthet egyedi modulokat, vagy egy modulba csomagolhat bizonyos Azure-szolgáltatásokat is, amelyek elemzéseket nyújtanak offline és a peremhálózaton is. Mivel a modulok Docker-tárolókban futnak, ugyanúgy viselkednek, akár virtuális gépen, akár valós eszközön vannak telepítve.

A következő leckében telepíti az IoT Edge-futtatókörnyezetet, és üzembe helyez egy egyéni modult, amely összegyűjti a környezeti adatokat az IoT Centralnak való küldéshez. Az IoT Central-operátor ezután az alkalmazás irányítópultjai telemetriai adatainak megtekintésével figyelheti az áruházak környezeti feltételeit.

Hogyan csatlakozik egy IoT Edge-eszköz az IoT Centralhoz?

Az IoT Edge-eszközök, mint más eszközök, az IoT Hub Device Provisioning Service (DPS) használatával csatlakoznak az IoT Central-alkalmazáshoz. Az előző leckében, amikor hozzáadott egy eszközt az IoT Central-alkalmazáshoz, feljegyezte a hatókör azonosítóját, az eszközazonosítót és az eszközkulcsot. Ezeket az értékeket hozzáadja az IoT Edge-konfigurációs fájlhoz az IoT Edge-eszközön. A TOML-fájl vonatkozó szakasza a következőhöz hasonlóan néz ki. Az registration_id eszköz azonosítója:

[provisioning]
source = "dps"
global_endpoint = "https://global.azure-devices-provisioning.net"
id_scope = "YOUR_ID_SCOPE"

[provisioning.attestation]
method = "symmetric_key"
registration_id = "YOUR_DEVICE_ID"
symmetric_key = { value = "YOUR_DEVICE_KEY" }

A következő leckében az IoT Edge-eszközhöz használt üzembehelyezési szkript szerkessze a konfigurációs fájlt.

Hogyan helyezi üzembe az IoT Central a modulokat egy IoT Edge-futtatókörnyezetben?

Az előző leckében, amikor létrehozta az eszközsablont a környezeti érzékelőhöz, feltöltött egy üzembehelyezési jegyzékfájlt a sablonba. Amikor az IoT Edge-futtatókörnyezet csatlakozik az IoT Central-alkalmazáshoz, letölti az üzembehelyezési jegyzékfájlt. A futtatókörnyezet az üzembehelyezési jegyzékben szereplő információk alapján határozza meg, hogy mely modulokat telepítse és hogyan konfigurálja. A modulok letölthetők egy tárolóregisztrációs adatbázisból, például az Azure Container Registryből vagy a Docker Hubból.

A használt üzembehelyezési jegyzék telepíti a két szükséges rendszermodult és edgeAgentedgeHubegy egyéni SimulatedTemperatureSensor modult. Ez az egyéni modul környezeti és gépi telemetriát küld az IoT Centralnak, és két tulajdonsága van, a SendData és a SendInterval, amelyekkel egy operátor konfigurálhatja a modult:

{
  "modulesContent": {
    "$edgeAgent": {
      "properties.desired": {
        "schemaVersion": "1.0",
        "runtime": {
          "type": "docker",
          "settings": {
            "minDockerVersion": "v1.25",
            "loggingOptions": "",
            "registryCredentials": {}
          }
        },
        "systemModules": {
          "edgeAgent": {
            "type": "docker",
            "settings": {
              "image": "mcr.microsoft.com/azureiotedge-agent:1.4",
              "createOptions": "{}"
            }
          },
          "edgeHub": {
            "type": "docker",
            "status": "running",
            "restartPolicy": "always",
            "settings": {
              "image": "mcr.microsoft.com/azureiotedge-hub:1.4",
              "createOptions": "{}"
            }
          }
        },
        "modules": {
          "SimulatedTemperatureSensor": {
            "version": "1.0",
            "type": "docker",
            "status": "running",
            "restartPolicy": "always",
            "settings": {
              "image": "mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:1.4.6",
              "createOptions": "{}"
            }
          }
        }
      }
    },
    "$edgeHub": {
      "properties.desired": {
        "schemaVersion": "1.0",
        "routes": {
            "route": "FROM /* INTO $upstream"
        },
        "storeAndForwardConfiguration": {
          "timeToLiveSecs": 7200
        }
      }
    },
    "SimulatedTemperatureSensor": {
      "properties.desired": {
           "SendData": true,
           "SendInterval": 10
      }
    }
  }
}

Az IoT Edge üzembe helyezése virtuális gépen

1.

Hogyan csatlakozik egy IoT Edge-eszköz az IoT Centralhoz?

2.

Honnan tölt le egy IoT Edge-eszköz modult?