تشغيل المهام وإضافة حزم التطبيقات

مكتمل

تشغيل المهام على نحوٍ متزامن باستخدام واجهة برمجة تطبيقات Batch Rest

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

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

قد تتطلب منك بعض السيناريوهات تقليل عمليات نقل البيانات للمهام التي يمكنها مشاركة البيانات. يمكنك تقليل رسوم نقل البيانات بدرجة كبيرة عن طريق نسخ البيانات المشتركة إلى عدد أقل من العقد وتنفيذ المهام بالتوازي على كل عقدة. يؤدي هذا النهج إلى تقليل الوقت المستغرق لنقل البيانات لجميع العقد بدلًا من مشاركة البيانات مع عدد كبير من العقد.

تمكين تنفيذ المهمة المتوازية

يتحكم تنفيذ المهام المتوازية في عدد المهام التي يمكن لعقدة واحدة التعامل معها بشكل متزامن في مجموعة واحدة.

في خدمة Batch، تتحكم الخانات في تنفيذ المهام المتوازية. تحتوي المهام على خاصية تُسمى RequiredSlots، والتي تشير إلى مدى كثافة الموارد للمهمة. تتطلب المهام كثيفة الاستخدام الموارد مزيدًا من الخانات مقارنة بالمهام التي تتطلب موارد خفيفة.

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

على سبيل المثال، إذا تم تعيين خاصية taskSlotsPerNode للمجموعة على 16، فلن تتطلب المهام التي تعمل بشكل متزامن العقدة عقدة أكثر من 16 خانة. هذا الإعداد، على سبيل المثال يعني أنه:

  • يمكن تشغيل مهمتين تتطلبان ثماني فتحات في نفس الوقت لأن عدد الفتحات يساوي 16 (2 * 8 = 16)
  • يمكن تشغيل ثلاث مهام تتطلب خمس فتحات في نفس الوقت لأن عدد الفتحات أقل من 16 (3 * 5 = 15)
  • لا يمكن تشغيل خمس مهام تتطلب أربع فتحات في نفس الوقت لأن عدد الفتحات أكثر من 16 (5 * 4 = 20)

يمكن أن تصل الخاصية taskSlotsPerNode إلى أربعة أضعاف عدد وحدات المعالجة المركزية الظاهرية الموجودة في العقدة كحد أقصى. لمعرفة عدد وحدات vCPUs المتاحة على عقدة، راجع أحجام الأجهزة الظاهرية في Azure.

إشعار

بعد تعيين الخاصية taskSlotsPerNode ، لا يمكنك تعديلها. حيث يتطلب تغييرها إنشاء مجموعة جديدة.

قم بتعيين الخاصية RequiredSlots استنادا إلى مقدار وحدة المعالجة المركزية أو الذاكرة التي تتوقع أن تحتاجها المهمة، أو مدى كثافة الإدخال/الإخراج التي تتوقع أن تكون عليها المهمة. بالإضافة إلى ذلك، عيِّن الخاصية taskSlotsPerNode استنادًا إلى عدد المهام التي يمكن تشغيلها على نحوٍ متزامن دون تقليل أوقات تنفيذ المهمة.

أضف حزمة تطبيق وقم بتشغيل تطبيق حاوية على Azure Batch

حزم التطبيق

ضمن Azure Batch، يشير أحد التطبيقات إلى مجموعة من الثنائيات التي تم إصدارها والتي يمكن تنزيلها تلقائيًا إلى العقد الحوسبية في المجموعة الخاصة بك. يحتوي التطبيق على حزمة تطبيق واحدة أو أكثر، والتي تمثل إصدارات مختلفة من التطبيق.

يمكنك تحديد حزم التطبيقات على مستوى التجمع أو المهمة. تكون حزم تطبيقات المجموعة مناسبة عندما تقوم جميع العقد الموجودة في المجموعة بتشغيل مهام الوظيفة.

يمكنك تحديد أكثر من حزمة تطبيق عند إنشاء مجموعة. يتم نشر التطبيقات عند انضمام عقدة إلى مجموعة وعند إعادة تشغيل العقدة أو إعادة تصويرها. لتثبيت حزمة جديدة على مجموعة موجودة، يجب إعادة تشغيل العقد الخاصة بها.

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

يمكنك استخدام مدخل MicrosoftAzure أو واجهات برمجة التطبيقات لإدارة الدفعات لإدارة حزم التطبيقات في حساب الدفعة. لاستخدام حزم التطبيقات، يجب عليك ربط حساب Azure Storage بحساب Batch الخاص بك. تستخدم خدمة Batch حساب التخزين المقترن لتخزين حزم التطبيقات الخاصة بك. نوصي بأن تنشئ حساب تخزين خصيصًا للاستخدام مع حساب Batch خاصتك.

تطبيقات الحاويات

أصبحت الحاويات الطريقة المفضلة لحزم التطبيقات السحابية وتوزيعها وإدارتها. تُعد Azure Container Instances حلًا رائعًا لأي سيناريو يمكن أن يعمل في حاويات معزولة، بما في ذلك التطبيقات البسيطة وأتمتة المهام وإنشاء الوظائف.

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

يمكنك إنشاء تجمع مُمكَّن الحاوية مع صورة حاوية مسبقة الجلب أو من دونها. تتيح لك عملية الإحضار المسبق تحميل صور الحاوية مسبقًا من مركز Docker أو سجل حاويات آخر (مثل Azure Container Registry)على الإنترنت.

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