Sdílet prostřednictvím


Nasazení modulů IoT Edge ve velkém měřítku pomocí editoru Visual Studio Code

Platí pro:Značka zaškrtnutí IoT Edge 1.5 IoT Edge 1.5 Značka zaškrtnutí IoT Edge 1.4 IoT Edge 1.4

Důležité

Podporované verze ioT Edge 1.5 LTS a IoT Edge 1.4 LTS. IoT Edge 1.4 LTS je konec životnosti 12. listopadu 2024. Pokud používáte starší verzi, podívejte se na článek Aktualizace IoT Edge.

Automatické nasazení IoT Edge můžete vytvořit pomocí editoru Visual Studio Code ke správě probíhajících nasazení pro mnoho zařízení najednou. Automatické nasazení pro IoT Edge jsou součástí funkce automatické správy zařízení ioT Hubu. Nasazení jsou dynamické procesy, které umožňují nasadit více modulů do více zařízení. Můžete také sledovat stav a stav modulů a v případě potřeby provádět změny.

Další informace najdete v tématu Vysvětlení automatických nasazení IoT Edge pro jednotlivá zařízení nebo ve velkém měřítku.

V tomto článku nastavíte Visual Studio Code a rozšíření IoT. Pak se dozvíte, jak nasadit moduly do sady zařízení IoT Edge.

Požadavky

Přihlášení pro přístup ke službě IoT Hub

K provádění operací s centrem můžete použít rozšíření Azure IoT pro Visual Studio Code. Aby tyto operace fungovaly, musíte se přihlásit ke svému účtu Azure a vybrat centrum IoT, na které pracujete.

  1. V editoru Visual Studio Code otevřete zobrazení Průzkumníka.

  2. V dolní části Průzkumníka rozbalte část Azure IoT Hub .

  3. Klikněte na ... v hlavičce oddílu Azure IoT Hub . Pokud tři tečky nevidíte, najeďte myší na záhlaví.

  4. Zvolte Vybrat IoT Hub.

  5. Pokud nejste přihlášení ke svému účtu Azure, postupujte podle pokynů.

  6. Vyberte své předplatné Azure.

  7. Vyberte centrum IoT.

Konfigurace manifestu nasazení

Manifest nasazení je dokument JSON, který popisuje, které moduly se mají nasadit. Popisuje také toky dat mezi moduly a požadovanými vlastnostmi dvojčat modulů. Další informace najdete v tématu O nasazení modulů a vytváření tras v IoT Edge.

Pokud chcete nasadit moduly pomocí editoru Visual Studio Code, uložte manifest nasazení místně jako . Soubor JSON. Při spuštění příkazu budete muset zadat jeho umístění, aby se na zařízení použila konfigurace.

Tady je základní manifest nasazení s jedním modulem jako příkladem:

Poznámka:

Tento ukázkový manifest nasazení používá schéma verze 1.1 pro agenta a centrum IoT Edge. Verze schématu 1.1 byla vydána společně se službou IoT Edge verze 1.0.10 a umožňuje funkce, jako je pořadí spuštění modulu a stanovení priorit tras.

{
  "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.5",
              "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
        }
      }
    }
  }
}

Pokud potřebujete určit, která zařízení IoT Edge můžete aktuálně konfigurovat, spusťte příkaz IoT Edge: Získat informace o zařízení.

Identifikace zařízení s cílovými podmínkami

Pokud chcete identifikovat zařízení IoT Edge, která mají přijímat nasazení, musíte zadat cílovou podmínku. Cílová podmínka se splní, když se zadaná kritéria shodují s id zařízení, hodnotou značky nebo hlášenou hodnotou vlastnosti.

Značky nakonfigurujete ve dvojčeti zařízení. Tady je příklad dvojčete zařízení se značkami:

"tags":{
  "location":{
    "building": "20",
    "floor": "2"
  },
  "roomtype": "conference",
  "environment": "prod"
}

Toto zařízení obdrží nasazení, pokud cílová podmínka pro nasazení obsahuje výraz, který odpovídá jedné z hodnot značky, například tag.location.building = '20'.

Pokud chcete cílit na konkrétní zařízení bez ohledu na jeho značky nebo jiné hodnoty, stačí zadat deviceId pro cílovou podmínku.

Tady je několik dalších příkladů:

  • deviceId ='linuxprod1'
  • deviceId = 'linuxprod1' OR deviceId = 'linuxprod2' OR deviceId = 'linuxprod3'
  • tags.environment ='prod'
  • tags.environment = 'prod' AND tags.location = 'westus2'
  • tags.environment = 'prod' OR tags.location = 'westus2'
  • tags.operator = 'John' AND tags.environment = 'prod' AND NOT deviceId = 'linuxprod1'

Podrobnosti najdete v cílové podmínce . Další informace o dvojčatech a značkách zařízení najdete v tématu Principy a používání dvojčat zařízení ve službě IoT Hub.

Úprava dvojčete zařízení

Pokud chcete konfigurovat značky, můžete upravit dvojče zařízení v editoru Visual Studio Code. V nabídce Zobrazení vyberte Paletu příkazů a spusťte příkaz IoT Edge: Upravit dvojče zařízení. Vyberte zařízení IoT Edge a zobrazí se dvojče zařízení.

V tomto příkladu nebyly definovány žádné značky. Nahraďte aktuální prázdný oddíl "tags": {} definicí vlastních značek.

{
    "deviceId": "myEdgeDevice",
    "etag": "AAAAAAAAAAE=",
    "deviceEtag": "NTgwMDg5MDAz",
    "status": "enabled",
    "statusUpdateTime": "0001-01-01T00:00:00Z",
    "connectionState": "Disconnected",
    "lastActivityTime": "0001-01-01T00:00:00Z",
    "cloudToDeviceMessageCount": 0,
    "authenticationType": "sas",
    "x509Thumbprint": {
        "primaryThumbprint": null,
        "secondaryThumbprint": null
    },
    "version": 2,
    "properties": {
        "desired": {
            "$metadata": {
                "$lastUpdated": "2019-12-29T00:58:49.9315265Z"
            },
            "$version": 1
        },
        "reported": {
            "$metadata": {
                "$lastUpdated": "2019-12-29T00:58:49.9315265Z"
            },
            "$version": 1
        }
    },
    "capabilities": {
        "iotEdge": true
    },
    "deviceScope": "ms-azure-iot-edge://myEdgeDevice-637131779299315265",
    "tags": {}
}

Po uložení místního souboru spusťte příkaz IoT Edge: Aktualizace dvojčete zařízení.

Vytvoření nasazení ve velkém měřítku

Jakmile nakonfigurujete manifest nasazení a nakonfigurujete značky ve dvojčeti zařízení, můžete ho nasadit.

  1. V nabídce Zobrazení vyberte Paletu příkazů a vyberte Azure IoT Edge: Vytvořit nasazení ve velkém měřítku.

  2. Přejděte do souboru JSON manifestu nasazení, který chcete použít, a klikněte na Vybrat manifest nasazení Edge.

  3. Zadejte hodnoty podle výzvy počínaje ID nasazení.

    Snímek obrazovky znázorňující, jak zadat ID nasazení

    Zadejte hodnoty pro tyto parametry:

Parametr Popis
ID nasazení Název nasazení, které se vytvoří v centru IoT. Dejte nasazení jedinečný název, který je až 128 malých písmen. Vyhněte se mezerám a následujícím neplatným znakům: & ^ [ ] { } \ | " < > /.
Cílová podmínka Zadejte cílovou podmínku, která určí, na která zařízení budou cílem tohoto nasazení. Podmínka je založená na značkách dvojčat zařízení nebo ohlášených vlastnostech dvojčete zařízení a měla by odpovídat formátu výrazu. Například tags.environment='test' and properties.reported.devicemodel='4000x'
Priorita Kladné celé číslo. Pokud se na jedno zařízení cílí dvě nebo více nasazení, použije se nasazení s nejvyšší číselnou hodnotou priority.

Po zadání priority by měl terminál zobrazit výstup podobný následujícímu znázornění:

[Edge] Start deployment with deployment id [{specified-value}] and target condition [{specified-value}]
[Edge] Deployment with deployment id [{specified-value}] succeeded.

Monitorování a úpravy nasazení

Pomocí webu Azure Portal nebo Azure CLI můžete monitorovat, upravovat a odstraňovat nasazení. Obě poskytují metriky pro vaše nasazení.

Další kroky

Přečtěte si další informace o nasazení modulů do zařízení IoT Edge.