إنشاء المسارات ونقاط النهاية وحذفها باستخدام Azure Resource Manager
توضح لك هذه المقالة كيفية تصدير قالب Azure IoT Hub، وإضافة مسار إلى مركز IoT الخاص بك، ثم إعادة توزيع القالب إلى مركز IoT الخاص بك باستخدام Azure CLI أو Azure PowerShell. استخدم قالب Azure Resource Manager لإنشاء مسارات ونقاط نهاية لمراكز أحداث Azure وقوائم الانتظار والمواضيع ناقل خدمة Azure وتخزين Azure.
تكون قوالب azure Resource Manager مفيدة عندما تريد تعريف الموارد باستخدام ملف JSON. يحتوي كل مورد Azure على قالب يحدد المكونات المستخدمة في هذا المورد. يمكنك تصدير جميع قوالب موارد Azure.
هام
عند استخدام قالب Resource Manager لنشر مورد، يحل القالب محل أي مورد موجود من النوع الذي تقوم بنشره.
عند إنشاء مركز IoT جديد، فإن الكتابة فوق مورد موزع موجود ليس مصدر قلق. لإنشاء مركز IoT جديد، يمكنك استخدام قالب أساسي يحتوي على الخصائص المطلوبة بدلا من تصدير قالب موجود من مركز IoT الذي تم نشره بالفعل.
ومع ذلك، إذا أضفت مسارا إلى قالب Resource Manager مركز IoT موجود، فاستخدم قالب تقوم بتصديره من مركز IoT للتأكد من أن جميع الموارد والخصائص الموجودة تظل متصلة بعد نشر القالب المحدث. لن يتم استبدال الموارد التي تم توزيعها بالفعل. على سبيل المثال، قد يحتوي قالب Resource Manager المصدر الذي قمت بنشره مسبقا على معلومات تخزين لمركز IoT إذا قمت بتوصيله بالتخزين.
لمعرفة المزيد حول كيفية عمل التوجيه في IoT Hub، راجع استخدام توجيه رسائل IoT Hub لإرسال رسائل من جهاز إلى سحابة إلى نقاط نهاية مختلفة. للتنقل عبر خطوات إعداد مسار يرسل رسائل إلى التخزين ثم الاختبار على جهاز محاكاة، راجع البرنامج التعليمي: إرسال بيانات الجهاز إلى Azure Storage باستخدام توجيه رسائل IoT Hub.
المتطلبات الأساسية
تستخدم الإجراءات الموضحة في المقالة الموارد التالية:
- قالب Azure Resource Manager
- مركز IoT
- خدمة نقطة نهاية في Azure
قالب Azure Resource Manager
تستخدم هذه المقالة قالب Azure Resource Manager في مدخل Microsoft Azure للعمل مع IoT Hub وخدمات Azure الأخرى. لمعرفة المزيد حول كيفية استخدام قوالب Resource Manager، راجع ما هي قوالب Azure Resource Manager؟
مركز IoT
لإنشاء مسار مركز IoT، تحتاج إلى مركز IoT الذي قمت بإنشائه باستخدام Azure IoT Hub. تنشأ رسائل الجهاز وسجلات الأحداث في مركز IoT الخاص بك.
تأكد من أن لديك مورد المركز التالي لاستخدامه عند إنشاء مسار مركز IoT الخاص بك:
- مركز IoT في اشتراك Azure الخاص بك. إذا لم يكن لديك مركز حتى الآن، يمكنك اتباع الخطوات لإنشاء مركز IoT باستخدام قالب Azure Resource Manager (PowerShell).
خدمة نقطة النهاية
لإنشاء مسار مركز IoT، تحتاج إلى خدمة Azure أخرى واحدة على الأقل لاستخدامها كنقطة نهاية للمسار. تتلقى نقطة النهاية رسائل الجهاز وسجلات الأحداث. يمكنك اختيار خدمة Azure التي تستخدمها لنقطة نهاية للاتصال بمسار مركز IoT الخاص بك: مراكز الأحداث أو قوائم انتظار ناقل الخدمة أو الموضوعات أو Azure Storage.
تأكد من أن لديك أحد الموارد التالية لاستخدامها عند إنشاء نقطة نهاية لمسار مركز IoT الخاص بك:
مورد مراكز الأحداث (مع حاوية). إذا كنت بحاجة إلى إنشاء مورد مراكز أحداث جديد، فشاهد التشغيل السريع: إنشاء مركز أحداث باستخدام قالب Resource Manager.
مورد قائمة انتظار ناقل خدمة Microsoft Azure. إذا كنت بحاجة إلى إنشاء قائمة انتظار ناقل خدمة Microsoft Azure جديدة، فشاهد التشغيل السريع: إنشاء مساحة اسم ناقل خدمة Microsoft Azure وقائمة انتظار باستخدام قالب Resource Manager.
مورد موضوع ناقل خدمة Microsoft Azure. إذا كنت بحاجة إلى إنشاء موضوع ناقل خدمة Azure جديد، فشاهد التشغيل السريع: إنشاء مساحة اسم ناقل خدمة Microsoft Azure مع الموضوع والاشتراك باستخدام قالب Resource Manager.
مورد Azure Storage. إذا كنت بحاجة إلى إنشاء Azure Storage جديد، فشاهد إنشاء حساب تخزين.
إنشاء مسار
في IoT Hub، يمكنك إنشاء مسار لإرسال الرسائل أو التقاط الأحداث. يحتوي كل مسار على مصدر بيانات ونقطة نهاية. مصدر البيانات هو المكان الذي تنشأ فيه الرسائل أو سجلات الأحداث. نقطة النهاية هي المكان الذي تنتهي فيه الرسائل أو سجلات الأحداث. يمكنك اختيار مواقع لمصدر البيانات ونقطة النهاية عند إنشاء مسار جديد في مركز IoT الخاص بك. بعد ذلك، يمكنك استخدام استعلامات التوجيه لتصفية الرسائل أو الأحداث قبل الانتقال إلى نقطة النهاية.
يمكنك استخدام مركز أحداث أو قائمة انتظار أو موضوع ناقل خدمة Microsoft Azure أو حساب تخزين Azure ليكون نقطة النهاية لمسار مركز IoT الخاص بك. يجب أن تكون الخدمة التي تستخدمها لإنشاء نقطة النهاية موجودة أولا في حساب Azure الخاص بك.
تصدير قالب Resource Manager من مركز IoT
أولا، قم بتصدير قالب Resource Manager من مركز IoT الخاص بك، ثم أضف مسارا إليه.
في مدخل Microsoft Azure، انتقل إلى مركز IoT. في قائمة الموارد ضمن Automation، حدد Export template.
في قالب التصدير، في علامة التبويب قالب ، أكمل الخطوات التالية:
عرض ملف JSON الذي تم إنشاؤه لمركز IoT الخاص بك.
قم بإلغاء تحديد خانة الاختيار تضمين المعلمات .
حدد تنزيل لتنزيل نسخة محلية من ملف JSON.
يحتوي القالب على العديد من العناصر النائبة التي يمكنك استخدامها لإضافة ميزات أو خدمات إلى مركز IoT الخاص بك. بالنسبة لهذه المقالة، أضف قيما فقط إلى الخصائص الموجودة في أو المتداخلة ضمن
routing
.
إضافة نقطة نهاية جديدة إلى قالب Resource Manager
في ملف JSON، ابحث عن الخاصية "endpoints": []
المتداخلة ضمن "routing"
. أكمل الخطوات لإضافة نقطة نهاية جديدة استنادا إلى خدمة Azure التي تختارها لنقطة النهاية: مراكز الأحداث أو قوائم انتظار أو مواضيع ناقل خدمة Microsoft Azure أو Azure Storage.
لمعرفة كيفية إنشاء مورد مراكز الأحداث (باستخدام الحاوية)، راجع التشغيل السريع: إنشاء مركز أحداث باستخدام قالب Resource Manager.
في مدخل Microsoft Azure، احصل على سلسلة الاتصال الأساسية من مورد مراكز الأحداث. في جزء نهج الوصول المشترك للمورد، حدد أحد النهج الخاصة بك لمشاهدة معلومات المفتاح وسلسلة الاتصال. أضف اسم مركز الحدث إلى مسار الكيان في نهاية سلسلة الاتصال. على سبيل المثال، استخدم ;EntityPath=my-event-hubs
. هذا الاسم هو اسم مركز الحدث الخاص بك، وليس اسم مساحة الاسم.
بالنسبة إلى name
، استخدم قيمة فريدة لنقطة نهاية مراكز الأحداث. اترك المعلمة id
كسلسلة فارغة. توفر id
خدمة Azure قيمة عند توزيع نقطة النهاية.
"routing": {
"endpoints": {
"serviceBusQueues": [],
"serviceBusTopics": [],
"eventHubs": [
{
"connectionString": "my Event Hubs connection string + entity path",
"authenticationType": "keyBased",
"name": "my-event-hubs-endpoint",
"id": "",
"subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"resourceGroup": "my-resource-group"
}
],
"storageContainers": [],
"cosmosDBSqlCollections": []
},
},
إضافة مسار جديد إلى قالب Resource Manager
في ملف JSON، ابحث عن الخاصية "routes": []
، المتداخلة ضمن "routing"
، وأضف المسار الجديد التالي، وفقا لخدمة نقطة النهاية التي اخترتها: مراكز الأحداث أو قوائم انتظار أو مواضيع ناقل الخدمة أو Azure Storage.
يجمع المسار الاحتياطي الافتراضي الرسائل من DeviceMessages
. اختر خيارا مختلفا، مثل DeviceConnectionStateEvents
. لمزيد من المعلومات حول خيارات المصدر، راجع az iot hub route.
تنبيه
إذا قمت باستبدال أي قيم موجودة ل "routes"
بقيم المسار المستخدمة في أمثلة التعليمات البرمجية التالية، فستتم إزالة المسارات الموجودة عند التوزيع. للحفاظ على المسارات الموجودة، أضف كائن المسار الجديد إلى "routes"
القائمة.
لمزيد من المعلومات حول القالب، راجع تعريف مورد قالب Azure Resource Manager.
"routes": [
{
"name": "MyIotHubRoute",
"source": "DeviceConnectionStateEvents",
"condition": "true",
"endpointNames": [
"my-event-hubs-endpoint"
],
"isEnabled": true
}
],
احفظ ملف JSON الخاص بك.
انشر قالب Azure Resource Manager
مع إضافة نقطة النهاية الجديدة والمسار إلى قالب Resource Manager، يمكنك الآن نشر ملف JSON مرة أخرى إلى مركز IoT الخاص بك.
التوزيع المحلي
az deployment group create \
--name my-iot-hub-template \
--resource-group my-resource-group \
--template-file "my\path\to\template.json"
توزيع Azure Cloud Shell
نظرا لأن Azure Cloud Shell يعمل في مستعرض ويب، يمكنك تحميل ملف القالب قبل تشغيل أمر النشر. مع تحميل الملف، تحتاج فقط إلى اسم ملف القالب (بدلا من مسار الملف بأكمله) لاستخدامه في المعلمة template-file
.
az deployment group create \
--name my-iot-hub-template \
--resource-group my-resource-group \
--template-file "template.json"
ملاحظة
إذا فشل التوزيع، فاستخدم-verbose
رمز التبديل للحصول على معلومات حول الموارد التي تقوم بإنشائها. استخدم مفتاح -debug
للحصول على مزيد من المعلومات لتصحيح الأخطاء.
تأكيد النشر
للتأكد من أن القالب الخاص بك تم توزيعه بنجاح إلى Azure، في مدخل Microsoft Azure، انتقل إلى مورد مجموعة الموارد. في قائمة الموارد ضمن Settings، حدد Deployments لمشاهدة القالب في قائمة عمليات التوزيع الخاصة بك.
لعرض المسار الجديد في مدخل Microsoft Azure، انتقل إلى مورد IoT Hub. في جزء "Message routing "، في علامة التبويب "Routes "، تأكد من إدراج المسار الخاص بك.
الخطوات التالية
في هذه المقالة الإرشادية، تعلمت كيفية إنشاء مسار ونقطة نهاية لمراكز الأحداث وقوائم انتظار وموضوعات ناقل الخدمة وتخزين Azure.
لمعرفة المزيد حول توجيه الرسائل، راجع البرنامج التعليمي: إرسال بيانات الجهاز إلى Azure Storage باستخدام توجيه رسائل IoT Hub. في البرنامج التعليمي، يمكنك إنشاء مسار تخزين واختباره باستخدام جهاز في مركز IoT الخاص بك.