خصائص عامل IoT Edge وتوائم وحدة مركز IoT Edge

ينطبق على: علامة اختيار IoT Edge 1.5 IoT Edge 1.5 علامة اختيار IoT Edge 1.4 IoT Edge 1.4

هام

IoT Edge 1.5 LTS وIoT Edge 1.4 LTS هي إصدارات مدعومة. IoT Edge 1.4 LTS هو نهاية العمر الافتراضي في 12 نوفمبر 2024. إذا كنت تستخدم إصدارا سابقا، فشاهد تحديث IoT Edge.

عامل IoT Edge ومركز IoT Edge هما وحدتان تشكلان وقت تشغيل IoT Edge. لمزيد من المعلومات حول مسؤوليات كل وحدة نمطية لوقت التشغيل، راجع فهم وقت تشغيل Azure IoT Edge وهندسته.

توفر هذه المقالة الخصائص المطلوبة والخصائص المبلغ عنها لتوائم وحدة وقت التشغيل. لمزيد من المعلومات حول كيفية نشر الوحدات النمطية على أجهزة IoT Edge، راجع التعرف على كيفية نشر الوحدات النمطية وإنشاء المسارات في IoT Edge.

تتضمن الوحدة المزدوجة ما يلي:

  • الخصائص المرغوبة. يمكن أن تحدد الواجهة الخلفية للحل الخصائص المطلوبة، ويمكن للوحدة النمطية قراءتها. يمكن للوحدة النمطية أيضًا تلقي إخطارات بالتغييرات في الخصائص المطلوبة. يتم استخدام الخصائص المرغوبة جنبا إلى جنب مع الخصائص المبلغ عنها لمزامنة تكوين الوحدة النمطية أو الشروط.

  • الخصائص المبلغ عنها. يمكن للوحدة النمطية تعيين الخصائص التي تم الإبلاغ عنها، ويمكن للواجهة الخلفية للحل قراءتها والاستعلام عنها. يتم استخدام الخصائص التي تم الإبلاغ عنها مع الخصائص المرغوبة لمزامنة تكوين الوحدة النمطية أو الشروط.

حافة العامل الخاصة بالخصائص المطلوبة

يتم استدعاء الوحدة النمطية المزدوجة لعامل IoT Edge$edgeAgentوتنسيق الاتصالات بين عامل IoT Edge الذي يشغل على الجهاز وIoT Hub. يتم تعيين الخصائص المطلوبة عند تطبيق بيان التوزيع على جهاز معين كجزء من توزيع جهاز واحد أو على نطاق توزيع واسع.

الخاصية الوصف مطلوب
نهج وحدة معالجة الصورة متى يتم سحب الصورة إما في OnCreate أو Never (لا يمكن استخدام أبدا إذا كانت الصورة موجودة بالفعل على الجهاز) ‏‏نعم‬
restartPolicy متى يجب إعادة تشغيل الوحدة النمطية. القيم المحتملة هي: أبدا: لا تقم بإعادة تشغيل الوحدة النمطية إذا لم تكن قيد التشغيل، دائما: إعادة تشغيل الوحدة النمطية دائما إذا لم تكن قيد التشغيل، تشغيل غير صحي: إعادة تشغيل الوحدة النمطية إذا كانت غير صحية. غير سليم هو ما تقارير Docker استنادا إلى فحص السلامة، على سبيل المثال "غير صحية - الحاوية لا تعمل بشكل صحيح"، عند الفشل: إعادة التشغيل إذا فشل. ‏‏نعم‬
نوع. وقت التشغيل يجب أن يكون docker. ‏‏نعم‬
وقت التشغيل.الخاص بإعداد إصدار Docker قم بالتعيين الخاص بإصدار Docker الحد الأدنى المطلوب من قبل بيان التوزيع هذا. ‏‏نعم‬
خيارات إعدادات تسجيل الدخول في وقت التشغيل JSON مشدد يحتوي على خيارات التسجيل ل حاوية عامل IoT Edge. خيارات تسجيل Docker لا
runtime.settings.registryCredentials. {registryId}.username اسم المستخدم لسجل الحاوية. بالنسبة لـAzure Container Registry، يكون اسم المستخدم عادة هو اسم التسجيل. بيانات اعتماد السجل ضرورية لأي صور وحدة نمطية خاصة. لا
runtime.settings.registryCredentials. {registryId}.password رمز الوصول الخاص بتسجيل الحاوية. لا
runtime.settings.registryCredentials. {registryId}.address عنوان التسجيل الخاص بالحاوية. بالنسبة إلى Azure Container Registry، يكون العنوان عادة {registry name}.azurecr.io. لا
schemaVersion إما 1.0 أو 1.1. تم تقديم الإصدار 1.1 مع IoT Edge الإصدار 1.0.10 ، ويوصى به. ‏‏نعم‬
الحالة الحالة المطلوبة للوحدة النمطية: قيد التشغيل أو متوقف. المطلوب
systemModules.edgeAgent.type يجب أن يكون docker. ‏‏نعم‬
systemModules.edgeAgent.startupOrder قيمة عدد صحيح للموقع الذي تحتوي عليه الوحدة النمطية في ترتيب بدء التشغيل. القيمة 0 هي الأولى والحد الأقصى لعدد صحيح (4294967295) هو الأخير. إذا لم يتم توفير قيمة، فإن القيمة الافتراضية هي الحد الأقصى للعدد الصحيح. لا
systemModules.edgeAgent.settings.image URI الخاص بصورة عامل IoT Edge. حاليا، عامل IoT Edge غير قادر على تحديث نفسه. ‏‏نعم‬
systemModules.edgeAgent.settings.createOptions JSON مشدد يحتوي على خيارات لإنشاء حاوية عامل IoT Edge. خيارات إنشاء Docker لا
systemModules.edgeAgent.configuration.id معرف التوزيع الذي يوزع هذه الوحدة النمطية. يقوم مركز IoT بتعيين هذه الخاصية عند تطبيق البيان باستخدام التوزيع. ليس جزءا من بيان التوزيع.
systemModules.edgeHub.type يجب أن يكون docker. ‏‏نعم‬
systemModules.edgeHub.status يجب أن يكون قيد التشغيل. ‏‏نعم‬
systemModules.edgeHub.restartPolicy يجب أن يكون دائما. ‏‏نعم‬
systemModules.edgeHub.startupOrder القيمة الخاصة بعدد صحيح تحتوي على موضع في الوحدة النمطية بترتيب بدء التشغيل. القيمة 0 هي الأولى والحد الأقصى لعدد صحيح (4294967295) هو الأخير. إذا لم يتم توفير قيمة، فإن القيمة الافتراضية هي الحد الأقصى للعدد الصحيح. لا
systemModules.edgeHub.settings.image URI الصورة الخاصة بمركز IoT Edge. ‏‏نعم‬
systemModules.edgeHub.settings.createOptions JSON سلسلة تحتوي على خيارات لإنشاء حاوية مركز IoT الحاوية. خيارات إنشاء Docker لا
systemModules.edgeHub.configuration.id معرف التوزيع الذي يوزع هذه الوحدة النمطية. يقوم مركز IoT بتعيين هذه الخاصية عند تطبيق البيان باستخدام التوزيع. ليس جزءا من بيان التوزيع.
modules.{moduleId}.version سلسلة الخاصة بالمعرف من قبل المستخدم تمثل إصدار هذه الوحدة النمطية. ‏‏نعم‬
modules.{moduleId}.type يجب أن يكون docker. ‏‏نعم‬
modules.{moduleId}.status {تم إيقاف التشغيل | } ‏‏نعم‬
modules.{moduleId}.restartPolicy {أبدا دائما | } ‏‏نعم‬
modules.{moduleId}.startupOrder قيمة عدد صحيح للموقع الذي تحتوي عليه الوحدة النمطية في ترتيب بدء التشغيل. القيمة 0 هي الأولى والحد الأقصى لعدد صحيح (4294967295) هو الأخير. إذا لم يتم توفير قيمة، فإن القيمة الافتراضية هي الحد الأقصى للعدد الصحيح. لا
modules.{moduleId}.imagePullPolicy {on-create | never} لا
وحدات. {moduleId}.env قائمة متغيرات البيئة لتمريرها إلى الوحدة النمطية. يأخذ التنسيق "<name>": {"value": "<value>"}. لا
modules.{moduleId}.settings.image URI إلى الصورة الخاصة بالوحدة النمطية. ‏‏نعم‬
modules.{moduleId}.settings.createOptions JSON سلسلة تحتوي على خيارات لإنشاء حاوية خاصة بالوحدة النمطية. خيارات إنشاء Docker لا
modules.{moduleId}.configuration.id معرف التوزيع الذي يوزع هذه الوحدة النمطية. يقوم مركز IoT بتعيين هذه الخاصية عند تطبيق البيان باستخدام التوزيع. ليس جزءا من بيان التوزيع.
إصدار التكرار الحالي الذي يحتوي على إصدار وتثبيت وبناء. لا

EdgeAgent الخصائص المبلغ عنها

يتضمن عامل IoT Edge المبلغ عنه ثلاث قطع رئيسية من المعلومات:

  1. حالة تطبيق الخصائص المطلوبة الأحدث،
  2. حالة الوحدات النمطية قيد التشغيل حاليا على الجهاز، كما تم الإبلاغ عنها من قبل عامل IoT Edge،
  3. نسخة من الخصائص المرغوبة قيد التشغيل حاليا على الجهاز.

نسخة الخصائص المطلوبة الحالية مفيدة لمعرفة ما إذا كان الجهاز قد طبق أحدث عملية نشر أو لا يزال يقوم بتشغيل بيان نشر سابق.

إشعار

تعد الخصائص المبلغ عنها لعامل IoT Edge مفيدة حيث يمكن الاستعلام عنها باستخدام لغة استعلام IoT Hub للتحقيق في حالة عمليات النشر على نطاق واسع. لمزيد من المعلومات حول كيفية استخدام خصائص عامل IoT Edge للحالة، راجع فهم عمليات نشر IoT Edge للأجهزة الفردية أو على نطاق واسع.

لا يحتوي الجدول التالي المعلومات التي يتم نسخها من الخصائص المطلوبة.

الخاصية ‏‏الوصف
lastDesiredStatus.code يشير تعليمة برمجية الحالة هذا إلى الخصائص المطلوبة الأخيرة التي يشاهدها عامل IoT Edge. القيم المسموح بها: 200 نجاح، 400 تكوين غير صالح، 412 إصدار مخطط غير صالح، 417 الخصائص المطلوبة فارغة، 500 فاشلة.
lastDesiredStatus.description الوصف النصي الخاص بالحالة.
lastDesiredVersion يشير هذا العدد الصحيح إلى الإصدار الأخير من الخصائص المطلوبة معالجتها بواسطة عامل IoT Edge.
runtime.platform.OS الإبلاغ عن تشغيل النظام الخاص بالتشغيل على الجهاز.
runtime.platform.architecture الإبلاغ عن البنية الخاصة بوحدة المعالجة المركزية على الجهاز.
schemaVersion إصدار المخطط للخصائص التي تم الإبلاغ عنها.
systemModules.edgeAgent.runtimeStatus الحالة المبلغ عنها لعامل IoT Edge: {running | unhealthy}.
systemModules.edgeAgent.statusDescription وصف نصي للحالة المبلغ عنها عامل IoT Edge.
systemModules.edgeAgent.exitCode رمز الخروج الذي تم الإبلاغ عنه بواسطة حاوية عامل IoT Edge إذا خرجت الحاوية.
systemModules.edgeAgent.lastStartTimeUtc الوقت الذي بدأ فيه عامل IoT Edge آخر مرة.
systemModules.edgeAgent.lastExitTimeUtc الوقت الذي تم فيه إنهاء عامل IoT Edge آخر مرة.
systemModules.edgeHub.runtimeStatus حالة مركز IoT Edge: فشل التراجع غير السليم {قيد التشغيل | | غير | | السليم }.
systemModules.edgeHub.statusDescription وصف نصي لحالة مركز IoT Edge، إذا كان غير سليم.
systemModules.edgeHub.exitCode رمز الخروج الذي تم الإبلاغ عنه بواسطة حاوية مركز IoT Edge، إذا خرجت الحاوية.
systemModules.edgeHub.lastStartTimeUtc الوقت الذي تم فيه تشغيل مركز IoT Edge آخر مرة.
systemModules.edgeHub.lastExitTimeUtc الوقت الذي تم فيه إنهاء مركز IoT Edge آخر مرة.
systemModules.edgeHub.lastRestartTimeUtc الوقت الذي تم فيه إعادة تشغيل مركز IoT Edge آخر مرة.
systemModules.edgeHub.restartCount عدد المرات التي تمت فيها إعادة تشغيل هذه الوحدة النمطية كجزء من نهج إعادة التشغيل.
modules.{moduleId}.runtimeStatus حالة الوحدة النمطية: فشل التراجع | غير السليم { قيد التشغيل | المتوقف | | }.
modules.{moduleId}.statusDescription وصف نصي لحالة الوحدة النمطية، إذا كان غير سليم.
modules.{moduleId}.exitCode التعليمة البرمجية للخروج التي تم الإبلاغ عنها بواسطة حاوية الوحدة النمطية، إذا تم إنهاء الحاوية.
وحدات. {moduleId}.lastStartTimeUtc الوقت الذي تم فيه التشغيل الخاص بالوحدة النمطية آخر مرة.
modules.{moduleId}.lastExitTimeUtc الوقت الذي تم فيه إنهاء الوحدة النمطية آخر مرة.
modules.{moduleId}.lastRestartTimeUtc الوقت الذي تم فيه إعادة التشغيل الخاص بالوحدة النمطية آخر مرة.
modules.{moduleId}.restartCount عدد المرات التي تمت فيها إعادة تشغيل هذه الوحدة النمطية كجزء من نهج إعادة التشغيل.
إصدار إصدار الصورة. مثال: "version": { "version": "1.2.7", "build": "50979330", "commit": "d3ec971caa0af0fc39d2c1f91aef21e95bd0c03c" }.

الخصائص المطلوبة لمركز الحافة

يتم استدعاء الوحدة النمطية المزدوجة لعامل IoT Edge$edgeHubوإحداثيات الاتصالات بين عامل IoT Edge الذي يشغل على الجهاز وIoT Hub. يتم تعيين الخصائص المطلوبة عند تطبيق بيان التوزيع على جهاز معين كجزء من توزيع جهاز واحد أو على نطاق توزيع واسع.

الخاصية ‏‏الوصف المطلوب في بيان التوزيع
schemaVersion إما 1.0 أو 1.1. تم تقديم الإصدار 1.1 مع IoT Edge الإصدار 1.0.10 ، ويوصى به. ‏‏نعم‬
routes.{routeName} سلسلة تمثل مسار مركز IoT Edge. لمزيد من المعلومات، راجع تعريف المسارات. routes يمكن أن يكون العنصر موجودا ولكنه فارغ.
storeAndForwardConfiguration.timeToLiveSecs وقت الجهاز بالثوان الذي يحتفظ فيه مركز IoT Edge بالرسائل إذا تم قطع اتصاله بنقاط نهاية التوجيه، سواء كان IoT Hub أو وحدة نمطية محلية. يستمر هذا الوقت عبر أي إيقاف تشغيل أو إعادة تشغيل. لمزيد من المعلومات، راجع قدرات دون اتصال. ‏‏نعم‬

الخصائص مركز الحافة المبلغ عنها

الخاصية ‏‏الوصف
lastDesiredVersion يشير هذا العدد الصحيح إلى الإصدار الأخير من الخصائص المطلوبة معالجتها بواسطة مركز IoT Edge.
lastDesiredStatus.code تعليمة برمجية الحالة يشير إلى آخر الخصائص المطلوبة التي يشاهدها مركز IoT Edge. القيم المسموح بها: 200 نجاح، 400 تكوين غير صالح، 500 فشل
lastDesiredStatus.description الوصف النصي الخاص بالحالة.
العملاء جميع العملاء المتصلين ب edgeHub بالحالة وآخر وقت متصل. مثال: "العملاء": { "device2/SimulatedTemperatureSensor": { "status": "Connected", "lastConnectedTimeUtc": "2022-11-17T21:49:16.4781564Z" } }.
clients.{device or moduleId}.status حالة الاتصال الخاصة بهذا الجهاز أو الوحدة النمطية. القيم المحتملة {connected | disconnected}. يمكن أن تكون الهويات الخاصة بالوحدة النمطية فقط في حالة قطع الاتصال. تظهر أجهزة انتقال البيانات من الخادم المتلقين للمعلومات المتصل إلى مركز IoT Edge فقط عند الاتصال.
clients.{device or moduleId}.lastConnectTime آخر وقت اتصل فيه الجهاز أو الوحدة النمطية.
clients.{device or moduleId}.lastDisconnectTime آخر وقت تم قطع اتصال الجهاز أو الوحدة النمطية.
schemaVersion إصدار المخطط للخصائص التي تم الإبلاغ عنها.
إصدار إصدار الصورة. مثال: "version": { "version": "1.2.7", "build": "50979330", "commit": "d3ec971caa0af0fc39d2c1f91aef21e95bd0c03c" }.

الخطوات التالية

لمعرفة كيفية استخدام هذه الخصائص لإنشاء بيانات النشر، راجع فهم كيفية استخدام وحدات IoT Edge وتكوينها وإعادة استخدامها.