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 skutečných zařízení IoT Edge do vašich obchodů chcete ověřit, že zařízení budou fungovat 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 se seznámíte s některými základními koncepty IoT Edge, zjistíte, jak se zařízení IoT Edge připojuje k aplikaci IoT Central a jak IoT Central nasazuje 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ými zařízeními a zařízením IoT Edge, mezi moduly na zařízení IoT Edge, mezi zařízením IoT Edge a cloudem a mezi zařízeními 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 skutečné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 IoT Central. Operátor 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 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 IoT Central. V předchozí lekci jste si při přidání zařízení do aplikace IoT Central poznamenali ID oboru, ID zařízení 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 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 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 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 IoT Central?

2.

Odkud zařízení IoT Edge stahuje moduly?