خصائص عامل IoT Edge وتوائم وحدة مركز IoT Edge
ينطبق على: IoT Edge 1.5 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 المبلغ عنه ثلاث قطع رئيسية من المعلومات:
- حالة تطبيق الخصائص المطلوبة الأحدث،
- حالة الوحدات النمطية قيد التشغيل حاليا على الجهاز، كما تم الإبلاغ عنها من قبل عامل IoT Edge،
- نسخة من الخصائص المرغوبة قيد التشغيل حاليا على الجهاز.
نسخة الخصائص المطلوبة الحالية مفيدة لمعرفة ما إذا كان الجهاز قد طبق أحدث عملية نشر أو لا يزال يقوم بتشغيل بيان نشر سابق.
إشعار
تعد الخصائص المبلغ عنها لعامل 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 وتكوينها وإعادة استخدامها.