التشغيل السريع: توزيع وحدة IoT Edge النمطية خاصتك الأولى على جهاز Windows

ينطبق على: أيقونة نعم IoT Edge 1.1

هام

كان تاريخ انتهاء دعم IoT Edge 1.1 هو 13 ديسمبر 2022. تحقق من دورة حياة المنتج من Microsoft للحصول على معلومات حول كيفية دعم هذا المنتج أو الخدمة أو التقنية أو API. لمزيد من المعلومات حول التحديث إلى أحدث إصدار من IoT Edge، راجع تحديث IoT Edge.

جرِّب Azure IoT Edge في هذا التشغيل السريع عن طريق نشر التعليمات البرمجية المعبأة في حاويات إلى Linux على جهاز IoT Edge يعمل بنظام التشغيل Windows. يُتيح لك IoT Edge إدارة التعليمات البرمجية على أجهزتك عن بعد حتى يُمكنك إرسال المزيد من أحمال العمل الخاصة بك إلى الحافة. لهذا التشغيل السريع، نوصي باستخدام جهاز عميل Windows الخاص بك لمعرفة مدى سهولة استخدام Azure IoT Edge ل Linux على Windows. إذا كنت ترغب في استخدام Windows Server أو Azure VM لإنشاء النشر الخاص بك، فاتبع الخطوات الواردة في دليل الكيفية حول تثبيت Azure IoT Edge لنظام التشغيل Linux وتوفيره على جهاز Windows.

في هذا التشغيل السريع، ستتعلم كيفية:

  • إنشاء مركز IoT.
  • تسجيل جهاز IoT Edge في مركز IoT الخاص بك.
  • تثبيت IoT Edge لـ Linux على وقت تشغيل Windows وبدء تشغيله على جهازك.
  • نشر وحدة نمطية عن بعد إلى جهاز IoT Edge عن بُعد وإرسال بيانات تتبع الاستخدام.

رسم تخطيطي يُوضّح تصميم هذا التشغيل السريع لجهازك والسحابة لديك.

يُوجّهك هذا التشغيل السريع خلال كيفية إعداد Azure IoT Edge لـ Linux على جهاز Windows الخاص بك. بعد ذلك، ستقوم بنشر وحدة نمطية من مدخل Azure إلى جهازك. الوحدة النمطية التي ستستخدمها عبارة عن أداة استشعار للمحاكاة تُنشئ بيانات درجة الحرارة، والرطوبة والضغط. تستكمل برامج Azure IoT Edge التعليمية الأخرى العمل الذي تقوم به هنا من خلال نشر الوحدات النمطية التي تُحلل البيانات التي تمت محاكاتها لرؤى الأعمال.

في حال لم يكن لديك اشتراك Azure نشط، يُمكنك إنشاء حساب مجاني قبل البدء.

المتطلبات الأساسية

تحضير البيئة الخاصة بك لـAzure CLI.

قم بإنشاء مجموعة موارد السحابة لإدارة جميع الموارد التي ستستخدمها في هذا التشغيل السريع.

az group create --name IoTEdgeResources --location westus2

تأكّد من أن جهاز IoT Edge الخاص بك يُلبّي المتطلبات التالية:

  • متطلبات النظام

    • Windows 101/11 (Pro, Enterprise, IoT Enterprise) 1 Windows 10 الحد الأدنى للإصدار 17763 مع تثبيت جميع التحديثات التراكمية الحالية.
  • متطلبات الجهاز

    • الحدّ الأدنى للذاكرة الحرة: 1 غيغابايت
    • الحدّ الأدنى للمساحة الفارغة على القرص: 10 غيغابايت

إشعار

يستخدم هذا التشغيل السريع PowerShell لإنشاء عملية نشر IoT Edge لـ Linux على Windows. يُمكنك أيضاً استخدام Windows Admin Center. إذا كنت ترغب في استخدام Windows Admin Center لإنشاء عملية النشر الخاصة بك، فاتبع الخطوات في الدليل حول كيفية تثبيت Azure IoT Edge لنظام Linux على جهاز Windows وتشغيله.

إنشاء مركز IoT

ابدأ بإنشاء مركز IoT باستخدام Azure CLI.

رسم تخطيطي يُوضّح خطوة إنشاء مركز IoT.

يعمل المستوى المجاني من Azure IoT Hub لهذا التشغيل السريع. إذا كنت قد استخدمت IoT Hub في الماضي ولديك مركز مُنشأ بالفعل، يُمكنك استخدام مركز IoT هذا.

تعمل التعليمات البرمجية التالية على إنشاء مركز F1 مجاني في مجموعة الموارد IoTEdgeResources. استبدل {hub_name} باسم فريد لـ IoT hub. قد يستغرق إنشاء مركز IoT بضع دقائق.

az iot hub create --resource-group IoTEdgeResources --name {hub_name} --sku F1 --partition-count 2

إذا حدث خطأ ما لأن لديك مركزاً مجانياً واحداً بالفعل في اشتراكك، فقم بتغيير وحدة SKU إلى S1. إذا حدث خطأ ما بسبب أن اسم مركز IoT غير متوفّر، يعني ذلك أن شخصاً آخر لديه مركز يحمل هذا الاسم بالفعل. جرب اسماً جديداً.

تسجيل جهاز IoT Edge

سجل جهاز IoT Edge مع IoT hub الذي تم إنشاؤه حديثاً.

رسم تخطيطي يوضّح خطوة تسجيل جهاز باستخدام هوية مركز IoT.

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

تعمل أجهزة IoT Edge ويُمكن إدارتها بشكل مختلف عن أجهزة IoT النموذجية. استخدم علامة --edge-enabled لتوضيح أن هذه الهوية خاصة بجهاز IoT Edge.

  1. في Azure Cloud Shell، أدخِل الأمر التالي لإنشاء جهاز باسم "myEdgeDevice" في المركز الخاص بك.

    az iot hub device-identity create --device-id myEdgeDevice --edge-enabled --hub-name {hub_name}
    

    إذا حصلت على خطأ بشأن مفاتيح نهج iothubowner، فتأكّد من تشغيل Cloud Shell لأحدث إصدار من ملحق Azure IoT.

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

    az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name {hub_name}
    
  3. انسخ قيمة المفتاح connectionString من ناتج JSON وقم بحفظها. فتكون هذه القيمة هي سلسلة اتصال الجهاز. ستستخدمها لتكوين وقت تشغيل IoT Edge في القسم التالي.

    لقطة شاشة توضّح إخراج connectionString في Cloud Shell.

تثبيت وقت تشغيل IoT Edge وبدء تشغيله

قم بتثبيت IoT Edge لـ Linux على نظام التشغيل Windows على جهازك، وتكوينه باستخدام سلسلة اتصال الجهاز.

رسم تخطيطي يُوضّح خطوة بدء وقت تشغيل IoT Edge.

قم بتشغيل أوامر PowerShell التالية على الجهاز الهدف حيث تريد نشر Azure IoT Edge لـ Linux على نظام التشغيل Windows. لنشر جهاز هدف عن بعد باستخدام PowerShell، استخدم "Remote PowerShell" لتأسيس اتصال بجهاز عن بعد وشغل هذه الأوامر عن بعد على هذا الجهاز.

  1. في جلسة عمل PowerShell غير مقيدة، قم بتشغيل الأمر التالي لتمكين Hyper-V. لمزيد من المعلومات، تحقق من Hyper-V على Windows 10.

    Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
    
  2. في جلسة عمل PowerShell غير مقيدة، قم بتشغيل كل من الأوامر التالية لتنزيل IoT Edge لـ Linux على نظام التشغيل Windows.

    $msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))
    $ProgressPreference = 'SilentlyContinue'
    ​Invoke-WebRequest "https://aka.ms/AzEflowMSI" -OutFile $msiPath
    
  3. قم بتثبيت IoT Edge لـ Linux على نظام التشغيل Windows على جهازك.

    Start-Process -Wait msiexec -ArgumentList "/i","$([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))","/qn"
    
  4. عيِّن نهج التنفيذ على الجهاز الهدف إلى AllSigned في حال لم يكن عند هذا الإعداد بالفعل. يُمكنك التحقق من نهج التنفيذ الحالي في طلب PowerShell غير مقيد باستخدام:

    Get-ExecutionPolicy -List
    

    إذا لم يُعيِّن نهج تنفيذ local machine إلى AllSigned، يُمكنك تعيين نهج التنفيذ من خلال:

    Set-ExecutionPolicy -ExecutionPolicy AllSigned -Force
    
  5. إنشاء عملية نشر IoT Edge لـ Linux على نظام التشغيل Windows.

    Deploy-Eflow
    
  6. إدخال 'Y' لقبول شروط الترخيص.

  7. إدخال 'O' أو 'R' للتبديل بين تشغيل بيانات التشخيص الاختيارية أو إيقاف تشغيلها وفقاً لتفضيلاتك. يتم التقاط صورة لعملية نشر ناجحة أدناه.

    عند نجاح عملية النشر، ستجد جملة 'Deployment successful' في نهاية الرسائل

  8. قم بتوفير جهازك باستخدام سلسلة اتصال الجهاز التي قمت باستردادها في القسم السابق. استبدل نص العنصر النائب بقيمتك الخاصة.

    Provision-EflowVm -provisioningType ManualConnectionString -devConnString "<CONNECTION_STRING_HERE>"​
    

تم تكوين جهاز IoT Edge الآن. إنه جاهز لتشغيل الوحدات النمطية التي يتم استخدامها على السحابة.

نشر الوحدة النمطية

قم بإدارة جهاز Azure IoT Edge الخاص بك من السحابة لنشر وحدة نمطية تُرسل بيانات تتبع الاستخدام إلى IoT Hub.

رسم تخطيطي يوضّح خطوة نشر وحدة نمطية.

تتمثّل إحدى القدرات الرئيسية لـ Azure IoT Edge في نشر التعليمات البرمجية على أجهزة IoT Edge الخاصة بك من السحابة. وحدات IoT Edge النمطية عبارة عن حِزم تنفيذية يتم تطبيقها كحاويات. في هذا القسم، ستنشر وحدة نمطية مُنشأة مسبقاً من قسم "IoT Edge Modules" في Azure Marketplaceمن Azure IoT Hub مباشرةً.

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

اتبع هذه الخطوات لنشر وحدتك النمطية الأولى من Azure Marketplace.

  1. سجل فيمدخل Azure ثم انتقل إلى مركز IoT.

  2. من القائمة على اليسار، حدد الأجهزة ضمن قائمة إدارة الأجهزة.

  3. حدد معرف الجهاز للجهاز المستهدف من قائمة الأجهزة.

    عند إنشائك جهاز IoT Edge جديدًا، فإنه سيعرض رمز الحالة 417 -- The device's deployment configuration is not set في مدخل Microsoft Azure. هذه الحالة طبيعية، وتعني أن الجهاز جاهز لتلقي وحدة نشر.

  4. في الشريط العلوي، حدد "Set Modules".

    لقطة شاشة تظهر تحديد تعيين الوحدات النمطية.

  5. ضمن "IoT Edge Modules"، وافتح القائمة المنسدلة "Add"، ومن ثمَّ حدد "Marketplace Module".

    لقطة شاشة تعرض القائمة المنسدلة

  6. في "IoT Edge Module Marketplace"، ابحث عن الوحدة النمطية Simulated Temperature Sensor وحددها.

    تُضاف الوحدة النمطية إلى قسم "IoT Edge Modules" مع حالة التشغيل المطلوبة.

  7. حدد "Next: Routes" للمتابعة إلى الخطوة التالية من المعالج.

    لقطة شاشة توضح المتابعة إلى الخطوة التالية بعد إضافة الوحدة النمطية.

  8. في علامة التبويب "Routes"، قم بإزالة المسار الافتراضي، والمسار، ومن ثمَّ حدد "Next: Review + create" للمتابعة إلى الخطوة التالية من المعالج.

    إشعار

    يتم إنشاء الطرق باستخدام أزواج الاسم والقيمة. يجب أن ترى طريقين على هذه الصفحة. المسار الافتراضي، "route"، يُرسل كافة الرسائل إلى IoT Hub (الذي يُسمَّى $upstream). تم إنشاء مسار ثانٍ، "SimulatedTemperatureSensorToIoTHub"، تلقائيًّا عندما أضفت الوحدة النمطية من Azure Marketplace. يرسل هذا المسار جميع الرسائل من وحدة محاكاة درجة الحرارة إلى IoT Hub. يمكنك حذف المسار الافتراضي لأنه زائد في هذه الحالة.

    لقطة شاشة تعرض إزالة المسار الافتراضي ثمّ الانتقال إلى الخطوة التالية.

  9. راجع ملف JSON، ثم حدّد "Create". يحدد ملف JSON جميع الوحدات النمطية التي تنشرها على جهاز IoT Edge الخاص بك. سترى الوحدة النمطية لـ "SimulatedTemperatureSensor" واثنين من الوحدات النمطية لوقت التشغيل، و"edgeAgent" و"edgeHub".

    إشعار

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

  10. بعد إنشاء تفاصيل نشر الوحدة النمطية، يعيدك المعالج إلى صفحة تفاصيل الجهاز. اعرض حالة النشر في علامة التبويب "Modules".

    يجب أن تشاهد ثلاث وحدات نمطية: $edgeAgent، و$edgeHub، وSimulatedTemperatureSensor. إذا كانت وحدة نمطية واحدة أو أكثر تعرض "YES" ضمن "SPECIFIED IN DEPLOYMENT" ولكن ليس ضمن "REPORTED BY DEVICE"، يعني ذلك أن جهاز IoT Edge الخاص بك لا يزال يبدأ تشغيلها. انتظر بضع دقائق، ثم قم بتحديث الصفحة.

    لقطة شاشة تعرض

عرض البيانات التي تم إنشاؤها

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

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

  1. سجِّل الدخول إلى IoT Edge لـ Linux الخاص بك على جهاز Windows الظاهري باستخدام الأمر التالي في جلسة عمل PowerShell لديك:

    Connect-EflowVm
    

    إشعار

    الحساب الوحيد المسموح له باستخدام بروتوكول SSH إلى الجهاز الظاهري هو المستخدم الذي قام بإنشائه.

  2. بمجرّد تسجيلك الدخول، يُمكنك التحقق من قائمة وحدات IoT Edge النمطية قيد التشغيل باستخدام أمر Linux التالي:

    sudo iotedge list
    

    تحقق من أن أداة استشعار درجة الحرارة، والعامل والمركز لديك قيد التشغيل.

  3. اعرض الرسائل المُرسلة من الوحدة النمطية لأداة استشعار درجة الحرارة إلى السحابة باستخدام أمر Linux التالي:

    sudo iotedge logs SimulatedTemperatureSensor -f
    

    هام

    تُعدّ أوامر IoT Edge حساسة لحالة الأحرف عندما تُشير إلى أسماء الوحدة النمطية.

    اعرض سجلات الإخراج للوحدة النمطية

يُمكنك أيضاً استخدام ملحق Azure IoT Hub لـ Visual Studio Code لمشاهدة وصول الرسائل إلى مركز IoT الخاص بك.

تنظيف الموارد

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

إذا قمت بإنشاء الجهاز الظاهري ومركز IoT في مجموعة موارد جديدة، يمكنك حذف هذه المجموعة وكافة الموارد المقترنة. إذا كنت لا ترغب في حذف المجموعة بأكملها، يُمكنك حذف الموارد الفردية بدلاً من ذلك.

هام

تحقق من محتويات مجموعة الموارد للتأكّد من عدم وجود شيء تريد الاحتفاظ به. حذف مجموعة الموارد لا يمكن التراجع عنه.

استخدم الأمر التالي لإزالة مجموعة "IoTEdgeResources". قد يستغرق الحذف بضع دقائق.

az group delete --name IoTEdgeResources

يُمكنك تأكيد إزالة مجموعة الموارد باستخدام هذا الأمر لعرض قائمة مجموعات الموارد.

az group list

إلغاء تثبيت IoT Edge ل Linux على Windows

إذا كنت ترغب في إزالة Azure IoT Edge ل Linux على تثبيت Windows من جهازك، فاستخدم الأوامر التالية.

  1. فتح الإعدادات على Windows
  2. حدد إضافة برامج أو إزالتها
  3. حدد تطبيق Azure IoT Edge LTS
  4. حدد إلغاء التثبيت

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

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

في البرنامج التعليمي التالي، ستتعرف على كيفية مراقبة نشاط وصحة جهازك من مدخل Microsoft Azure.