Nasazení virtuálního počítače s Linuxem s povolenou službou IoT Edge

Dokončeno

Pokud chcete otestovat konfiguraci IoT Edge, musíte do virtuálního počítače nasadit modul runtime IoT Edge.

Před nasazením zařízení IoT Edge do obchodů chcete ověřit, že zařízení fungují podle očekávání. Pokud chcete svůj scénář otestovat, plánujete nasadit modul runtime IoT Edge na virtuální počítač Azure s Linuxem a pak do tohoto virtuálního počítače nasadit moduly IoT Edge.

Tady si prohlédnete některé základní koncepty IoT Edge, zjistíte, jak se zařízení IoT Edge připojuje k aplikaci Azure IoT Central a jak Azure IoT Central nasadí moduly IoT Edge do modulu runtime IoT Edge.

Co je modul runtime IoT Edge?

Modul runtime Azure IoT Edge umožňuje používat na hraničních zařízeních IoT vlastní a cloudovou logiku. Modul runtime se nachází na zařízení IoT Edge a provádí operace správy a komunikace. Modul runtime:

  • Nainstaluje a aktualizuje úlohy na zařízení.

  • Udržuje na zařízení standardy zabezpečení Azure IoT Edge.

  • Zajišťuje nepřetržitý provoz modulů IoT Edge.

  • Hlásí do cloudu stav modulů pro účely vzdáleného monitorování.

  • Spravuje komunikaci mezi:

    • Podřízená zařízení a zařízení IoT Edge
    • Moduly na zařízení IoT Edge
    • Zařízení IoT Edge a cloud
    • Zařízení IoT Edge

Co jsou moduly IoT Edge?

Moduly IoT Edge jsou jednotky provádění, které spouští obchodní logiku na hraničních zařízeních. Moduly se implementují jako kontejnery kompatibilní s Dockerem. Můžete nakonfigurovat několik modulů pro vzájemnou komunikaci a vytvořit kanál zpracování dat. Můžete vyvíjet vlastní moduly nebo balit určité služby Azure do modulů, které poskytují přehledy v režimu offline a na hraničních zařízení. Vzhledem k tomu, že moduly běží v kontejnerech Dockeru, chovají se stejným způsobem bez ohledu na to, jestli jsou nainstalované na virtuálním počítači nebo na fyzickém zařízení.

V další lekci nainstalujete modul runtime IoT Edge a nasadíte vlastní modul, který shromažďuje data prostředí pro odesílání do Azure IoT Central. Operátor Azure IoT Central pak může monitorovat podmínky prostředí v úložištích zobrazením telemetrie na řídicích panelech v aplikaci.

Jak se zařízení IoT Edge připojuje k Azure IoT Central?

Zařízení IoT Edge, jako jsou jiná zařízení, používají službu IoT Hub Device Provisioning (DPS) k připojení k aplikaci Azure IoT Central. V předchozí lekci jste při přidání zařízení do aplikace Azure IoT Central poznamenali ID oboru a klíč zařízení. Tyto hodnoty přidáte do konfiguračního souboru IoT Edge na zařízení IoT Edge. Relevantní část tohoto souboru TOML vypadá takto. Jedná se registration_id o ID zařízení:

[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" }

V další lekci skript nasazení, který použijete pro zařízení IoT Edge, upraví konfigurační soubor za vás.

Jak Azure IoT Central nasazuje moduly do modulu runtime IoT Edge?

V předchozí lekci jste při vytváření šablony zařízení pro senzor prostředí nahráli do šablony manifest nasazení. Když se modul runtime IoT Edge připojí k aplikaci Azure IoT Central, stáhne manifest nasazení. Modul runtime používá informace v manifestu nasazení k určení modulů, které se mají nainstalovat a jak je nakonfigurovat. Moduly se stahují z registru kontejneru, jako je Azure Container Registry nebo Docker Hub.

Manifest nasazení, který jste použili, edgeAgent nainstaluje dva požadované systémové moduly a edgeHubvlastní SimulatedTemperatureSensor modul. Tento vlastní modul odesílá telemetrii okolí a počítače do Azure IoT Central a má dvě vlastnosti SendData a SendInterval, které operátor může použít ke konfiguraci modulu:

{
  "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
      }
    }
  }
}

Nasazení IoT Edge na virtuální počítač

1.

Jak se zařízení IoT Edge připojuje k Azure IoT Central?

2.

Odkud zařízení IoT Edge stahuje moduly?