مشاركة عبر


البدء السريع: نشر أول وحدة IoT Edge على جهاز Windows

ينطبق على:IoT Edge 1.5 علامة صحية IoT Edge 1.5

هام

IoT Edge 1.5 LTS هو الإصدار المدعوم release. وصل IoT Edge 1.4 LTS إلى نهاية صلاحيته في 12 نوفمبر 2024. إذا كنت تستخدم إصدارا أقدم، راجع Update IoT Edge.

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

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

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

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

هذا البدء السريع يشرح لك كيفية إعداد Azure IoT Edge الخاص بك على لينكس على جهاز 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 جيجابايت

إنشاء مركز IoT

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

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

الفئة المجانية ل Azure IoT Hub تعمل لهذا البدء السريع. إذا كنت قد استخدمت IoT Hub سابقا ولديك مركزا بالفعل، يمكنك استخدام هذا المركز IoT hub.

تعمل التعليمات البرمجية التالية على إنشاء مركز 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 في مركز إنترنت الأشياء الذي أنشأته حديثا.

رسم تخطيطي يوضح خطوة تسجيل جهاز بهوية مركز I o T.

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

تتصرف أجهزة IoT Edge ويمكن إدارتها بشكل مختلف عن أجهزة إنترنت الأشياء التقليدية. استخدم علم --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. اعرض سلسلة connection string لجهازك، والتي تربط جهازك الفعلي بهويته في IoT Hub. يحتوي على اسم مركز IoT الخاص بك، واسم جهازك، ومفتاح مشترك يعمل على مصادقة الاتصالات بينهما.

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

    على سبيل المثال، يجب أن يبدو connection string الخاص بك مشابها ل HostName=contoso-hub.azure-devices.net;DeviceId=myEdgeDevice;SharedAccessKey=<DEVICE_SHARED_ACCESS_KEY>.

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

قم بتثبيت IoT Edge for Linux على Windows على جهازك، وقم بتكوينه باستخدام سلسلة connection string الخاصة بالجهاز.

رسم تخطيطي يوضح خطوة بدء وقت تشغيل I o T Edge.

شغل أوامر PowerShell التالية على الجهاز المستهدف حيث تريد نشر Azure IoT Edge for 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 for Linux على Windows.

    • X64/AMD64

      $msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))
      $ProgressPreference = 'SilentlyContinue'
      Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_5_LTS_X64" -OutFile $msiPath
      
    • ARM64

      $msiPath = $([io.Path]::Combine($env:TEMP, 'AzureIoTEdge.msi'))
      $ProgressPreference = 'SilentlyContinue'
      Invoke-WebRequest "https://aka.ms/AzEFLOWMSI_1_5_LTS_ARM64" -OutFile $msiPath
      
  3. قم بتثبيت IoT Edge for 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 لنشر لينكس على Windows.

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

  7. أدخل O أو R لتفعيل أو إيقاف بيانات التشخيص الاختيارية ، حسب تفضيلك. يظهر النشر الناجح في الصورة التالية.

    لقطة شاشة توضح أن التوزيع الناجح سيقول

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

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

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

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

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

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

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

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

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

  1. سجل الدخول إلى بوابة Azure واذهب إلى IoT Hub الخاص بك.

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

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

    إشعار

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

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

    اختر الوحدات النمطية التي تريد تشغيلها على جهازك. يمكنك الاختيار من بين الوحدات التي أنشأتها بالفعل، أو وحدات من Microsoft Artifact Registry، أو وحدات بنيتها بنفسك. في هذه البداية السريعة، تقوم بنشر وحدة من سجل القطع الأثرية في مايكروسوفت.

  5. في قسم IoT Edge modules، اختر Add ثم اختر IoT Edge Module.

  6. تحديث إعدادات الوحدة النمطية التالية:

    الإعداد القيمة‬
    اسم وحدة IoT النمطية SimulatedTemperatureSensor
    URI للصورة mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:latest
    نهج إعادة تشغيل دائمًا
    الحالة المطلوبة تشغيل
  7. حدد Next: Routes لمتابعة تكوين المسارات.

  8. أضف مسارا يرسل جميع الرسائل من وحدة درجة الحرارة المحاكاة إلى IoT Hub.

    الإعداد القيمة‬
    الاسم SimulatedTemperatureSensorToIoTHub
    القيمة‬ FROM /messages/modules/SimulatedTemperatureSensor/* INTO $upstream
  9. حدّد Next: Review + create.

  10. راجع ملف JSON، ثم حدّد "Create". ملف JSON يحدد جميع الوحدات التي تقوم بنشرها على جهاز IoT Edge الخاص بك.

    إشعار

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

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

يجب أن تشاهد ثلاث وحدات نمطية: $edgeAgent، و$edgeHub، وSimulatedTemperatureSensor. إذا كان لدى وحدة أو أكثر Yes تحت محدد في النشر ولكن ليس تحت المبلغ عنه بواسطة Device، فإن جهاز IoT Edge لا يزال يبدأها. انتظر بضع دقائق، ثم قم بتحديث الصفحة.

لقطة شاشة تعرض SimulatedTemperatureSensor في قائمة الوحدات النمطية المنشورة.

إذا واجهت مشاكل في نشر الوحدات، راجع Troubleshoot IoT Edge الأجهزة من بوابة Azure.

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

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

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

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

    Connect-EflowVm
    

    إشعار

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

  2. بعد تسجيل الدخول، تحقق من قائمة وحدات IoT Edge التي تعمل باستخدام أمر لينكس التالي:

    sudo iotedge list
    

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

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

    sudo iotedge logs SimulatedTemperatureSensor -f
    

    لقطة شاشة تعرض سجلات الإخراج لوحدة Simulated Temperature Sensor عند تشغيلها.

    تلميح

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

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

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

إذا أنشأت جهازك الافتراضي ومركز إنترنت الأشياء في مجموعة موارد جديدة، احذف تلك المجموعة وجميع الموارد المرتبطة بها. إذا لم ترغب في حذف المجموعة كاملة، احذف الموارد الفردية بدلا من ذلك.

هام

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

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

az group delete --name IoTEdgeResources

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

az group list

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

لإزالة تثبيت Azure IoT Edge for Linux على Windows من جهازك، استخدم الخطوات التالية.

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

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

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

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