Aracılığıyla paylaş


Azure CLI kullanarak Azure IoT Edge modüllerini dağıtma

Şunlar için geçerlidir:IoT Edge 1.5 onay işareti IoT Edge 1.5

Önemli

IoT Edge 1.5 LTS desteklenen sürümdür. IoT Edge 1.4 LTS, 12 Kasım 2024 itibarıyla kullanım ömrü sona erer. Önceki bir sürümdeyseniz bkz. IoT Edge’i güncelleştirme.

İş mantığınızla Azure IoT Edge modülleri oluşturduktan sonra uçta çalışmak üzere bunları cihazlarınıza dağıtın. Verileri toplamak ve işlemek için birden çok modül birlikte çalışıyorsa hepsini bir kerede dağıtın. Bunları bağlayan yönlendirme kurallarını da bildirin.

Azure CLI , IoT Edge gibi Azure kaynaklarını yönetmeye yönelik açık kaynaklı, platformlar arası bir komut satırı aracıdır. Azure IoT Hub kaynaklarını, cihaz sağlama hizmeti örneklerini ve bağlı hub'ları kullanıma hazır olarak yönetmenize olanak tanır. Yeni IoT uzantısı, Azure CLI'yi cihaz yönetimi ve tam IoT Edge özellikleri gibi özelliklerle zenginleştirir.

Bu makalede, bir JSON dağıtım bildiriminin nasıl oluşturulacağı ve dağıtımı bir IoT Edge cihazına göndermek için bu dosyanın nasıl kullanılacağı açıklanmaktadır. Paylaşılan etiketlerine göre birden çok cihazı hedefleyen bir dağıtım oluşturma hakkında bilgi için bkz . Büyük ölçekte IoT Edge modüllerini dağıtma ve izleme.

Önkoşullar

Dağıtım bildirimi yapılandırma

Dağıtım bildirimi, dağıtılacak modülleri, modüller arasında verilerin nasıl aktığını ve modül ikizlerinin istenen özelliklerini açıklayan bir JSON belgesidir. Dağıtım bildirimlerinin nasıl çalıştığı ve nasıl oluşturulacağı hakkında daha fazla bilgi için bkz. IoT Edge modüllerinin nasıl kullanılabileceğini, yapılandırılabileceğini ve yeniden kullanılabileceğini anlama.

Azure CLI kullanarak modülleri dağıtmak için dağıtım bildirimini yerel olarak .json dosyası olarak kaydedin. Sonraki bölümdeki dosya yolunu kullanarak komutunu çalıştırın ve yapılandırmayı cihazınıza uygulayın.

Örnek olarak tek modül içeren temel bir dağıtım bildirimi aşağıda verilmiştir:

Not

Bu örnek dağıtım bildirimi, IoT Edge aracısı ve hub'ı için şema sürümü 1.1'i kullanır. Şema sürümü 1.1, IoT Edge sürüm 1.0.10'a dahildir ve modül başlatma sırası ve yol önceliklendirmesi gibi özellikleri etkinleştirir.

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

Cihazınıza dağıtma

Modül bilgileriyle yapılandırdığınız dağıtım bildirimini uygulayarak modülleri cihazınıza dağıtırsınız.

Dizinleri dağıtım bildiriminizi kaydettiğiniz klasöre değiştirin. Visual Studio Code IoT Edge şablonlarından birini kullandıysanız, deployment.json dosyayı değil çözüm dizininizin yapılandırma klasöründe kullanın deployment.template.json .

Yapılandırmayı bir IoT Edge cihazına uygulamak için aşağıdaki komutu kullanın:

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

Cihaz kimliği parametresi büyük/küçük harfe duyarlıdır. İçerik parametresi, kaydettiğiniz dağıtım bildirimi dosyasını gösterir.

az iot edge set-modules komut satırı çıkışını gösteren ekran görüntüsü.

Cihazınızda modülleri görüntüleme

Modülleri cihazınıza dağıttıktan sonra, aşağıdaki komutla bunların tümünü görüntüleyebilirsiniz:

IoT Edge cihazınızda modülleri görüntüleme:

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

Cihaz kimliği parametresi büyük/küçük harfe duyarlıdır.

az iot hub module-identity list komut çıkışını gösteren ekran görüntüsü.

Sonraki adımlar

IoT Edge modüllerini büyük ölçekte dağıtmayı ve izlemeyi öğrenin