مشاركة عبر


تشغيل Azure IoT Edge على أجهزة Ubuntu الظاهرية

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

هام

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

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

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

تسرد هذه المقالة خطوات نشر جهاز ظاهري Ubuntu مع وقت تشغيل Azure IoT Edge المثبت والمكون باستخدام سلسلة اتصال الجهاز المتوفرة. يستخدم التوزيع قالب Azure Resource Manager المستند إلى cloud-init من مستودع مشروع iotedge-vm-deploy.

عند التمهيد الأول، يقوم الجهاز الظاهري بتثبيت أحدث إصدار من وقت تشغيل Azure IoT Edge باستخدام cloud-init. كما أنه يعين سلسلة اتصال متوفرة قبل بدء وقت التشغيل، بحيث يمكنك إعداد جهاز IoT Edge وتوصيله بسرعة دون بدء SSH أو جلسة عمل سطح المكتب البعيد.

النشر باستخدام زر النشر في Azure

يتيح لك الزر Deploy to Azure نشر قوالب Azure Resource Manager بسرعة من GitHub. يوضح هذا القسم كيفية استخدام الزر Deploy to Azure في مستودع مشروع iotedge-vm-deploy .

  1. نشر جهاز Linux VM ممكن ل Azure IoT Edge باستخدام قالب iotedge-vm-deploy Azure Resource Manager. للبدء، حدد الزر التالي:

    الزر

  2. في النافذة الجديدة، أدخل قيم حقول النموذج المتوفرة:

    لقطة شاشة تعرض قالب iotedge-vm-deploy.

    الحقل ‏‏الوصف
    الاشتراك اشتراك Azure النشط لنشر الجهاز الظاهري فيه.
    مجموعة الموارد مجموعة موارد موجودة أو جديدة لاحتواء الجهاز الظاهري والموارد المقترنة به.
    المنطقة المنطقة الجغرافية حيث تقوم بنشر الجهاز الظاهري. تعين هذه القيمة افتراضيًا إلى موقع مجموعة الموارد المحددة.
    بادئة تسمية DNS قيمة مطلوبة تختارها لبادئة اسم مضيف الجهاز الظاهري.
    اسم مستخدم المسؤول اسم مستخدم مع امتيازات الجذر عند النشر.
    سلسلة اتصال الجهاز سلسلة اتصال جهاز لجهاز قمت بإنشائه في مركز IoT.
    حجم الجهاز الظاهري حجم الجهاز الظاهري المراد نشره.
    إصدار نظام التشغيل Ubuntu إصدار نظام التشغيل Ubuntu لتثبيته على الجهاز الظاهري الأساسي.
    نوع المصادقة اختر sshPublicKey أو كلمة المرور استنادا إلى تفضيلاتك.
    كلمة مرور أو مفتاح المسؤول مفتاح SSH العام أو قيمة كلمة المرور، اعتمادا على نوع المصادقة الذي تختاره.

    حدد Next : Review + create لمراجعة الشروط، ثم حدد إنشاء لبدء النشر.

  3. تحقق من اكتمال النشر بنجاح. يتم نشر مورد الجهاز الظاهري في مجموعة الموارد المحددة. دوّن اسم الجهاز، الموجود بالتنسيق vm-0000000000000. لاحظ أيضا اسم DNS المقترن، وهو بالتنسيق <dnsLabelPrefix>.<location>. cloudapp.azure.com.

    يمكنك العثور على اسم DNS في قسم نظرة عامة على الجهاز الظاهري الجديد في مدخل Microsoft Azure.

    لقطة شاشة تعرض اسم dns لجهاز IoT Edge الظاهري.

  4. إذا أردت SSH في هذا الجهاز الافتراضي بعد الإعداد، استخدم DNS Nameبالأمر:.ssh <adminUsername>@<DNS_Name>

النشر من Azure CLI

  1. تأكد من تثبيت ملحق Azure CLI iot مع:

    az extension add --name azure-iot
    
  2. بعد ذلك، إذا كنت تستخدم Azure CLI على سطح المكتب، فابدأ بتسجيل الدخول:

    az login
    
  3. إذا كان لديك اشتراكات متعددة، فحدد الاشتراك الذي تريد استخدامه:

    1. سرد اشتراكاتك:

      az account list --output table
      
    2. انسخ حقل SubscriptionID للاشتراك الذي تريد استخدامه.

    3. قم بتعيين اشتراك العمل الخاص بك بالمعرف الذي نسخته:

      az account set -s <SubscriptionId>
      
  4. إنشاء مجموعة موارد جديدة (أو تحديد مجموعة موجودة في الخطوات التالية):

    az group create --name IoTEdgeResources --location westus2
    
  5. إنشاء جهاز ظاهري جديد:

    لاستخدام authenticationType من password، استخدم المثال التالي:

    az deployment group create \
    --resource-group IoTEdgeResources \
    --template-uri "https://raw.githubusercontent.com/Azure/iotedge-vm-deploy/main/edgeDeploy.json" \
    --parameters dnsLabelPrefix='my-edge-vm1' \
    --parameters adminUsername='<REPLACE_WITH_USERNAME>' \
    --parameters deviceConnectionString=$(az iot hub device-identity connection-string show --device-id <REPLACE_WITH_DEVICE-NAME> --hub-name <REPLACE-WITH-HUB-NAME> -o tsv) \
    --parameters authenticationType='password' \
    --parameters adminPasswordOrKey="<REPLACE_WITH_SECRET_PASSWORD>"
    

    للمصادقة باستخدام مفتاح SSH، حدد authenticationType من sshPublicKey، ثم قم بتوفير قيمة مفتاح SSH في المعلمة adminPasswordOrKey. راجع المثال التالي:

    #Generate the SSH Key
    ssh-keygen -m PEM -t rsa -b 4096 -q -f ~/.ssh/iotedge-vm-key -N ""
    
    #Create a VM using the iotedge-vm-deploy script
    az deployment group create \
    --resource-group IoTEdgeResources \
    --template-uri "https://raw.githubusercontent.com/Azure/iotedge-vm-deploy/main/edgeDeploy.json" \
    --parameters dnsLabelPrefix='my-edge-vm1' \
    --parameters adminUsername='<REPLACE_WITH_USERNAME>' \
    --parameters deviceConnectionString=$(az iot hub device-identity connection-string show --device-id <REPLACE_WITH_DEVICE-NAME> --hub-name <REPLACE-WITH-HUB-NAME> -o tsv) \
    --parameters authenticationType='sshPublicKey' \
    --parameters adminPasswordOrKey="$(< ~/.ssh/iotedge-vm-key.pub)"
    
  6. تحقق من اكتمال النشر بنجاح. يجب نشر مورد جهاز ظاهري في مجموعة الموارد المحددة. دون اسم الجهاز، إنه بالتنسيق vm-0000000000000. أيضا، لاحظ اسم DNS المقترن، وهو بالتنسيق <dnsLabelPrefix>.<location>. cloudapp.azure.com.

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

    "outputs": {
      "public SSH": {
        "type": "String",
        "value": "ssh <adminUsername>@<DNS_Name>"
      }
    }
    

    يمكنك أيضا الحصول على اسم DNS من قسم نظرة عامة على الجهاز الظاهري المنشور حديثا في مدخل Microsoft Azure.

    لقطة شاشة تعرض اسم dns لجهاز IoT Edge الظاهري.

  7. إذا أردت SSH في هذا الجهاز الافتراضي بعد الإعداد، استخدم DNS Nameبالأمر:.ssh <adminUsername>@<DNS_Name>

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

الآن بعد أن قمت بتوفير جهاز IoT Edge مع تثبيت وقت التشغيل، انشر وحدات IoT Edge النمطية.

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

لتحديث تثبيت موجود إلى أحدث إصدار من IoT Edge، راجع تحديث البرنامج الخفي لأمان IoT Edge ووقت التشغيل.

إذا كنت ترغب في فتح المنافذ للوصول إلى الجهاز الظاهري من خلال SSH أو الاتصالات الواردة الأخرى، فشاهد وثائق Azure Virtual Machines حول فتح المنافذ ونقاط النهاية إلى جهاز Linux الظاهري.