Properti agen IoT Edge dan kembar modul hub IoT Edge

Berlaku untuk:Tanda centang IoT Edge 1.5 IoT Edge 1.5 Tanda centang IoT Edge 1.4 IoT Edge 1.4

Penting

IoT Edge 1.5 LTS dan IoT Edge 1.4 LTS adalah rilis yang didukung. IoT Edge 1.4 LTS adalah akhir masa pakai pada 12 November 2024. Jika Anda menggunakan rilis sebelumnya, lihat Memperbarui IoT Edge.

Agen IoT Edge dan hub IoT Edge adalah dua modul yang membentuk runtime IoT Edge. Untuk informasi selengkapnya tentang tanggung jawab setiap modul runtime, lihat Memahami runtime Azure IoT Edge dan arsitekturnya.

Artikel ini berisi properti yang diinginkan dan properti yang dilaporkan dari modul runtime kembar. Untuk informasi selengkapnya tentang cara menggunakan modul di perangkat IoT Edge, lihat Mempelajari cara menyebarkan modul dan menetapkan rute di IoT Edge.

Modul kembar mencakup:

  • Properti yang diinginkan. Backend solusi dapat mengatur properti yang diinginkan, dan modul dapat membacanya. Modul juga dapat menerima pemberitahuan perubahan pada properti yang diinginkan. Properti yang diinginkan digunakan bersama dengan properti yang dilaporkan untuk menyinkronkan konfigurasi atau kondisi modul.

  • Properti yang dilaporkan. Modul dapat mengatur properti yang dilaporkan, dan backend solusi dapat membaca dan memintanya kueri. Properti yang dilaporkan digunakan bersama dengan properti yang diinginkan untuk menyinkronkan konfigurasi atau kondisi modul.

Properti yang diinginkan EdgeAgent

Modul kembar untuk agen IoT Edge dipanggil $edgeAgent dan mengoordinasikan komunikasi antara agen IoT Edge yang berjalan di perangkat dan IoT Hub. Properti yang diinginkan diatur saat menerapkan manifes penyebaran di perangkat tertentu sebagai bagian dari penyebaran satu-perangkat atau penyebaran luas.

Properti Deskripsi Wajib diisi
imagePullPolicy Kapan harus menarik gambar di OnCreate atau Never (Tidak pernah dapat digunakan jika gambar sudah ada di perangkat) Ya
restartPolicy Ketika modul harus dimulai ulang. Nilai yang mungkin adalah: Tidak pernah: jangan mulai ulang modul jika tidak berjalan, Selalu: selalu mulai ulang modul jika tidak berjalan, On-Unhealthy: restart modul jika tidak sehat. Tidak sehat adalah apa yang dilaporkan Docker berdasarkan pemeriksaan kesehatan, misalnya "Tidak Sehat - kontainer tidak berfungsi dengan benar", On-Failed: restart if Failed. Ya
runtime.type Harus docker. Ya
runtime.settings.minDockerVersion Atur ke versi Docker minimum yang diperlukan oleh manifes penyebaran ini. Ya
runtime.settings.loggingOptions JSON yang dirangkai yang berisi opsi pengelogan untuk kontainer agen IoT Edge. Opsi pengelogan Docker No
runtime.settings.registryCredentials. {registryId}.username Nama pengguna registri kontainer. Untuk Azure Container Registry, nama pengguna biasanya berupa nama registri. Informasi masuk registri diperlukan untuk setiap gambar modul pribadi. No
runtime.settings.registryCredentials. {registryId}.password Kata sandi untuk registri kontainer. No
runtime.settings.registryCredentials. {registryId}.address Alamat registri kontainer. Untuk Azure Container Registry, alamat biasanya berupa {nama registri}.azurecr.io. No
schemaVersion Baik 1.0 atau 1.1. Versi 1.1 diperkenalkan dengan IoT Edge versi 1.0.10, dan direkomendasikan. Ya
status Status modul yang diinginkan: Berjalan atau Dihentikan. Wajib
systemModules.edgeAgent.type Harus docker. Ya
systemModules.edgeAgent.startupOrder Nilai bilangan bulat untuk lokasi yang dimiliki modul dalam urutan startup. 0 adalah bilangan bulat pertama dan maks (4294967295) terakhir. Jika nilai tidak disediakan, defaultnya adalah bilangan bulat maks. No
systemModules.edgeAgent.settings.image URI citra agen IoT Edge. Saat ini, agen IoT Edge tidak dapat memperbarui sendiri. Ya
systemModules.edgeAgent.settings.createOptions JSON yang dirangkai yang berisi opsi pembuatan kontainer agen IoT Edge. Opsi pembuatan Docker No
systemModules.edgeAgent.configuration.id ID penyebaran yang menyebarkan modul ini. IoT Hub menetapkan properti ini saat manifes diterapkan menggunakan penyebaran. Bukan bagian dari manifes penyebaran.
systemModules.edgeHub.type Harus docker. Ya
systemModules.edgeHub.status Harus berjalan. Ya
systemModules.edgeHub.restartPolicy Harus selalu. Ya
systemModules.edgeHub.startupOrder Nilai bilangan bulat yang spot-nya dimiliki modul dalam urutan startup. 0 adalah bilangan bulat pertama dan maks (4294967295) terakhir. Jika nilai tidak disediakan, defaultnya adalah bilangan bulat maks. No
systemModules.edgeHub.settings.image URI citra hub IoT Edge. Ya
systemModules.edgeHub.settings.createOptions JSON yang dirangkai yang berisi opsi pembuatan kontainer hub IoT Edge. Opsi pembuatan Docker No
systemModules.edgeHub.configuration.id ID penyebaran yang menyebarkan modul ini. IoT Hub menetapkan properti ini saat manifes diterapkan menggunakan penyebaran. Bukan bagian dari manifes penyebaran.
modules.{moduleId}.version String yang ditentukan pengguna yang mewakili versi modul ini. Ya
modules.{moduleId}.type Harus docker. Ya
modules.{moduleId}.status {running | stop} Ya
modules.{moduleId}.restartPolicy {never | always} Ya
modules.{moduleId}.startupOrder Nilai bilangan bulat untuk lokasi yang dimiliki modul dalam urutan startup. 0 adalah bilangan bulat pertama dan maks (4294967295) terakhir. Jika nilai tidak disediakan, defaultnya adalah bilangan bulat maks. No
modules.{moduleId}.imagePullPolicy {on-create | never} No
modules.{moduleId}.env Daftar variabel lingkungan untuk diteruskan ke modul. Mengambil format "<name>": {"value": "<value>"}. No
modules.{moduleId}.settings.image URI ke citra modul. Ya
modules.{moduleId}.settings.createOptions JSON yang dirangkai yang berisi opsi pembuatan kontainer modul. Opsi pembuatan Docker No
modules.{moduleId}.configuration.id ID penyebaran yang menyebarkan modul ini. IoT Hub menetapkan properti ini saat manifes diterapkan menggunakan penyebaran. Bukan bagian dari manifes penyebaran.
versi Iterasi saat ini yang memiliki versi, penerapan, dan build. No

Properti yang dilaporkan EdgeAgent

Properti yang dilaporkan agen IoT Edge mencakup tiga informasi utama:

  1. Status aplikasi properti yang terakhir dilihat;
  2. Status modul yang saat ini berjalan pada perangkat, seperti yang dilaporkan oleh agen IoT Edge; dan
  3. Salinan properti yang diinginkan yang saat ini dijalankan pada perangkat.

Salinan properti yang diinginkan saat ini berguna untuk mengetahui apakah perangkat telah menerapkan penyebaran terbaru atau masih menjalankan manifes penyebaran sebelumnya.

Catatan

Properti yang dilaporkan agen IoT Edge berguna karena dapat dikueri dengan bahasa kueri IoT Hub untuk menyelidiki status penyebaran dalam skala besar. Untuk informasi selengkapnya tentang cara menggunakan properti agen IoT Edge untuk status, lihat Memahami penyebaran IoT Edge untuk satu perangkat atau dalam skala besar.

Tabel berikut ini tidak menyertakan informasi yang disalin dari properti yang diinginkan.

Properti Deskripsi
lastDesiredStatus.code Kode status ini mengacu pada properti terakhir yang diinginkan yang dilihat oleh agen IoT Edge. Nilai yang diizinkan: 200 Berhasil, 400 Konfigurasi tidak valid, 412 Versi skema tidak valid, 417 Properti yang diinginkan kosong, 500 Gagal.
lastDesiredStatus.description Deskripsi teks status.
lastDesiredVersion Bilangan bulat ini mengacu pada versi terakhir properti yang diinginkan yang diproses oleh agen IoT Edge.
runtime.platform.OS Melaporkan OS yang berjalan di perangkat.
runtime.platform.architecture Melaporkan arsitektur CPU pada perangkat.
schemaVersion Versi skema properti yang dilaporkan.
systemModules.edgeAgent.runtimeStatus Status agen IoT Edge yang dilaporkan: {menjalankan | tidak sehat}.
systemModules.edgeAgent.statusDescription Deskripsi teks tentang status agen IoT Edge yang dilaporkan.
systemModules.edgeAgent.exitCode Kode keluar yang dilaporkan oleh kontainer agen IoT Edge jika kontainer keluar.
systemModules.edgeAgent.lastStartTimeUtc Waktu ketika agen IoT Edge terakhir kali dimulai.
systemModules.edgeAgent.lastExitTimeUtc Waktu ketika agen IoT Edge terakhir kali keluar.
systemModules.edgeHub.runtimeStatus Status hub IoT Edge: { menjalankan | | backoff | gagal | gagal tidak sehat }.
systemModules.edgeHub.statusDescription Deskripsi teks status hub IoT Edge, jika tidak sehat.
systemModules.edgeHub.exitCode Kode keluar yang dilaporkan oleh kontainer hub IoT Edge, jika kontainer keluar.
systemModules.edgeHub.lastStartTimeUtc Waktu saat hub IoT Edge terakhir kali dimulai.
systemModules.edgeHub.lastExitTimeUtc Waktu ketika hub IoT Edge terakhir kali keluar.
systemModules.edgeHub.lastRestartTimeUtc Waktu saat hub IoT Edge terakhir kali dimulai ulang.
systemModules.edgeHub.restartCount Frekuensi modul ini dimulai ulang sebagai bagian dari kebijakan mulai ulang.
modules.{moduleId}.runtimeStatus Status modul: { menjalankan | backoff | gagal yang dihentikan | | tidak sehat }.
modules.{moduleId}.statusDescription Deskripsi teks status modul, jika tidak sehat.
modules.{moduleId}.exitCode Kode keluar yang dilaporkan oleh kontainer modul, jika kontainer keluar.
Modul. {moduleId}.lastStartTimeUtc Waktu ketika modul terakhir kali dimulai.
modules.{moduleId}.lastExitTimeUtc Waktu ketika modul terakhir keluar.
modules.{moduleId}.lastRestartTimeUtc Waktu ketika modul terakhir kali dihidupkan ulang.
modules.{moduleId}.restartCount Frekuensi modul ini dimulai ulang sebagai bagian dari kebijakan mulai ulang.
versi Versi gambar. Contoh: "version": { "version": "1.2.7", "build": "50979330", "commit": "d3ec971caa0af0fc39d2c1f91aef21e95bd0c03c" }.

Properti EdgeHub yang diinginkan

Modul kembar untuk hub IoT Edge dipanggil $edgeHub dan mengoordinasikan komunikasi antara hub IoT Edge yang berjalan di perangkat dan IoT Hub. Properti yang diinginkan diatur saat menerapkan manifes penyebaran di perangkat tertentu sebagai bagian dari penyebaran satu-perangkat atau penyebaran luas.

Properti Deskripsi Diperlukan dalam manifes penyebaran
schemaVersion Baik 1.0 atau 1.1. Versi 1.1 diperkenalkan dengan IoT Edge versi 1.0.10, dan direkomendasikan. Ya
routes.{routeName} String yang mewakili rute hub IoT Edge. Untuk informasi selengkapnya, lihat Menyatakan rute. Elemen routes bisa ada tapi kosong.
storeAndForwardConfiguration.timeToLiveSecs Waktu perangkat dalam detik hub IoT Edge menyimpan pesan jika terputus dari titik akhir perutean, baik IoT Hub atau modul lokal. Kali ini berlanjut pada pemadaman listrik atau mulai ulang. Untuk informasi lebih lanjut, lihat Kemampuan offline. Ya

Properti yang dilaporkan EdgeHub

Properti Deskripsi
lastDesiredVersion Bilangan bulat ini mengacu pada versi terakhir properti yang diinginkan yang diproses oleh hub IoT Edge.
lastDesiredStatus.code Kode status mengacu pada properti terakhir yang diinginkan yang dilihat oleh hub IoT Edge. Nilai yang diizinkan: 200 Berhasil, 400 Konfigurasi tidak valid, 500 Gagal
lastDesiredStatus.description Deskripsi teks status.
klien Semua klien terhubung ke edgeHub dengan status dan waktu terhubung terakhir. Contoh: "klien": { "device2/SimulatedTemperatureSensor": { "status": "Koneksi ed", "last Koneksi edTimeUtc": "2022-11-17T21:49:16.4781564Z" } }.
clients.{perangkat atau moduleId}.status Status konektivitas perangkat atau modul ini. Nilai yang mungkin {tersambung | terputus}. Hanya identitas modul yang dapat berada dalam status terputus. Perangkat hilir yang terhubung ke hub IoT Edge hanya muncul saat terhubung.
clients.{perangkat atau moduleId}.lastConnectTime Terakhir kali perangkat atau modul terhubung.
clients.{perangkat atau moduleId}.lastDisconnectTime Terakhir kali perangkat atau modul terputus.
schemaVersion Versi skema properti yang dilaporkan.
versi Versi gambar. Contoh: "version": { "version": "1.2.7", "build": "50979330", "commit": "d3ec971caa0af0fc39d2c1f91aef21e95bd0c03c" }.

Langkah berikutnya

Untuk mempelajari cara menggunakan properti ini untuk menyusun manifes penyebaran, lihat Memahami cara menggunakan, mengonfigurasi, dan menggunakan kembali modul IoT Edge.