CloudTask interface
ستقوم الدفعة بإعادة محاولة المهام عند تشغيل عملية استرداد على عقدة. تتضمن أمثلة عمليات الاسترداد (على سبيل المثال لا الحصر) عند إعادة تشغيل عقدة غير صحية أو اختفاء عقدة حساب بسبب فشل المضيف. عمليات إعادة المحاولة بسبب عمليات الاسترداد مستقلة عن ولا يتم حسابها مقابل maxTaskRetryCount. حتى إذا كان maxTaskRetryCount هو 0، فقد تحدث إعادة محاولة داخلية بسبب عملية استرداد. ولهذا السبب، يجب أن تكون كافة المهام غير فعالة. وهذا يعني أن المهام تحتاج إلى التسامح مع المقاطعة وإعادة التشغيل دون التسبب في أي تلف أو بيانات مكررة. أفضل ممارسة للمهام طويلة الأمد هي استخدام شكل من أشكال نقاط التفتيش.
الخصائص
| affinity |
تلميح محلي يمكن استخدامه بواسطة خدمة Batch لتحديد عقدة حساب لبدء المهمة الجديدة. |
| application |
قائمة بالحزم التي ستنشرها خدمة Batch إلى عقدة الحساب قبل تشغيل سطر الأوامر. يتم تنزيل حزم التطبيقات ونشرها في دليل مشترك، وليس دليل عمل المهمة. لذلك، إذا كانت الحزمة المشار إليها موجودة بالفعل على العقدة، وكانت محدثة، فلن تتم إعادة تنزيلها؛ يتم استخدام النسخة الموجودة على عقدة الحساب. إذا تعذر تثبيت حزمة مرجعية، على سبيل المثال بسبب حذف الحزمة أو فشل التنزيل، تفشل المهمة. |
| authentication |
إعدادات الرمز المميز للمصادقة التي يمكن للمهمة استخدامها لتنفيذ عمليات خدمة الدفعات. إذا تم تعيين هذه الخاصية، توفر خدمة Batch للمهمة رمزا مميزا للمصادقة يمكن استخدامه لمصادقة عمليات خدمة Batch دون الحاجة إلى مفتاح الوصول إلى الحساب. يتم توفير الرمز المميز عبر متغير البيئة AZ_BATCH_AUTHENTICATION_TOKEN. تعتمد العمليات التي يمكن للمهمة تنفيذها باستخدام الرمز المميز على الإعدادات. على سبيل المثال، يمكن لمهمة طلب أذونات الوظيفة لإضافة مهام أخرى إلى المهمة، أو التحقق من حالة الوظيفة أو المهام الأخرى ضمن المهمة. |
| command |
سطر الأوامر للمهمة. بالنسبة للمهام متعددة المثيلات، يتم تنفيذ سطر الأوامر كمهمة أساسية، بعد انتهاء المهمة الأساسية وجميع المهام الفرعية من تنفيذ سطر أوامر التنسيق. لا يعمل سطر الأوامر تحت shell، وبالتالي لا يمكن الاستفادة من ميزات shell مثل توسيع متغير البيئة. إذا كنت ترغب في الاستفادة من هذه الميزات، يجب استدعاء shell في سطر الأوامر، على سبيل المثال باستخدام "cmd /c MyCommand" في Windows أو "/bin/sh -c MyCommand" في Linux. إذا كان سطر الأوامر يشير إلى مسارات الملفات، فيجب أن يستخدم مسارا نسبيا (بالنسبة إلى دليل عمل المهمة)، أو استخدام متغير البيئة المقدم من Batch (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables). |
| constraints | قيود التنفيذ التي تنطبق على هذه المهمة. |
| container |
إعدادات الحاوية التي يتم تشغيل المهمة ضمنها. إذا كان التجمع الذي سيقوم بتشغيل هذه المهمة يحتوي على مجموعة تكوين الحاوية، يجب تعيين هذا أيضا. إذا لم يكن التجمع الذي سيقوم بتشغيل هذه المهمة يحتوي على مجموعة تكوين الحاوية، يجب عدم تعيين هذا. عند تحديد ذلك، يتم تعيين جميع الدلائل بشكل متكرر أسفل AZ_BATCH_NODE_ROOT_DIR (جذر دلائل Azure Batch على العقدة) في الحاوية، ويتم تعيين كافة متغيرات بيئة المهمة في الحاوية، ويتم تنفيذ سطر أوامر المهمة في الحاوية. قد لا تنعكس الملفات التي يتم إنتاجها في الحاوية خارج AZ_BATCH_NODE_ROOT_DIR على القرص المضيف، ما يعني أن واجهات برمجة تطبيقات ملف Batch لن تتمكن من الوصول إلى هذه الملفات. |
| creation |
وقت إنشاء المهمة. |
| depends |
المهام التي تعتمد عليها هذه المهمة. لن تتم جدولة هذه المهمة حتى تكتمل كافة المهام التي تعتمد عليها بنجاح. إذا فشلت أي من هذه المهام واستنفاد عدد مرات إعادة المحاولة الخاصة بها، فلن تتم جدولة هذه المهمة أبدا. |
| display |
اسم عرض للمهمة. لا يجب أن يكون اسم العرض فريدا ويمكن أن يحتوي على أي أحرف Unicode يصل طولها إلى 1024 كحد أقصى. |
| environment |
قائمة بإعدادات متغير البيئة للمهمة. |
| e |
ETag للمهمة. هذه سلسلة مبهمة. يمكنك استخدامه للكشف عما إذا كانت المهمة قد تغيرت بين الطلبات. على وجه الخصوص، يمكنك تمرير ETag عند تحديث مهمة لتحديد أن التغييرات يجب أن تصبح سارية المفعول فقط إذا لم يقم أي شخص آخر بتعديل المهمة في هذه الأثناء. |
| execution |
معلومات حول تنفيذ المهمة. |
| exit |
كيف يجب أن تستجيب خدمة Batch عند اكتمال المهمة. |
| id | سلسلة تعرف المهمة بشكل فريد داخل المهمة. يمكن أن يحتوي المعرف على أي تركيبة من الأحرف الأبجدية الرقمية بما في ذلك الواصلات والتسطير السفلي، ولا يمكن أن يحتوي على أكثر من 64 حرفا. |
| last |
آخر وقت تم تعديله للمهمة. |
| multi |
كائن يشير إلى أن المهمة مهمة متعددة المثيلات، ويحتوي على معلومات حول كيفية تشغيل المهمة متعددة المثيلات. |
| node |
معلومات حول عقدة الحساب التي تم تشغيل المهمة عليها. |
| output |
قائمة بالملفات التي ستقوم خدمة Batch بتحميلها من عقدة الحساب بعد تشغيل سطر الأوامر. بالنسبة للمهام متعددة المثيلات، سيتم تحميل الملفات فقط من عقدة الحساب التي يتم تنفيذ المهمة الأساسية عليها. |
| previous |
الحالة السابقة للمهمة. لم يتم تعيين هذه الخاصية إذا كانت المهمة في حالتها النشطة الأولية. تتضمن القيم المحتملة: "نشط" و"إعداد" و"قيد التشغيل" و"مكتمل" |
| previous |
الوقت الذي أدخلت فيه المهمة حالتها السابقة. لم يتم تعيين هذه الخاصية إذا كانت المهمة في حالتها النشطة الأولية. |
| required |
عدد فتحات الجدولة التي تتطلب المهمة تشغيلها. الإعداد الافتراضي هو 1. يمكن جدولة المهمة فقط للتشغيل على عقدة حساب إذا كانت العقدة تحتوي على فتحات جدولة مجانية كافية متوفرة. بالنسبة للمهام متعددة المثيلات، يجب أن يكون هذا 1. |
| resource |
قائمة بالملفات التي ستقوم خدمة Batch بتنزيلها إلى عقدة الحساب قبل تشغيل سطر الأوامر. بالنسبة للمهام متعددة المثيلات، سيتم تنزيل ملفات الموارد فقط إلى عقدة الحساب التي يتم تنفيذ المهمة الأساسية عليها. يوجد حد أقصى لحجم قائمة ملفات الموارد. عند تجاوز الحد الأقصى للحجم، سيفشل الطلب وسيكون رمز خطأ الاستجابة RequestEntityTooLarge. إذا حدث ذلك، يجب تصغير حجم مجموعة ResourceFiles. يمكن تحقيق ذلك باستخدام ملفات .zip أو حزم التطبيقات أو حاويات Docker. |
| state | الحالة الحالية للمهمة. تتضمن القيم المحتملة: "نشط" و"إعداد" و"قيد التشغيل" و"مكتمل" |
| state |
الوقت الذي أدخلت فيه المهمة حالتها الحالية. |
| stats | إحصائيات استخدام الموارد للمهمة. |
| url | عنوان URL للمهمة. |
| user |
هوية المستخدم التي يتم تشغيل المهمة بموجبها. إذا تم حذفها، يتم تشغيل المهمة كمستخدم غير إداري فريد للمهمة. |
تفاصيل الخاصية
affinityInfo
تلميح محلي يمكن استخدامه بواسطة خدمة Batch لتحديد عقدة حساب لبدء المهمة الجديدة.
affinityInfo?: AffinityInformation
قيمة الخاصية
applicationPackageReferences
قائمة بالحزم التي ستنشرها خدمة Batch إلى عقدة الحساب قبل تشغيل سطر الأوامر. يتم تنزيل حزم التطبيقات ونشرها في دليل مشترك، وليس دليل عمل المهمة. لذلك، إذا كانت الحزمة المشار إليها موجودة بالفعل على العقدة، وكانت محدثة، فلن تتم إعادة تنزيلها؛ يتم استخدام النسخة الموجودة على عقدة الحساب. إذا تعذر تثبيت حزمة مرجعية، على سبيل المثال بسبب حذف الحزمة أو فشل التنزيل، تفشل المهمة.
applicationPackageReferences?: ApplicationPackageReference[]
قيمة الخاصية
authenticationTokenSettings
إعدادات الرمز المميز للمصادقة التي يمكن للمهمة استخدامها لتنفيذ عمليات خدمة الدفعات. إذا تم تعيين هذه الخاصية، توفر خدمة Batch للمهمة رمزا مميزا للمصادقة يمكن استخدامه لمصادقة عمليات خدمة Batch دون الحاجة إلى مفتاح الوصول إلى الحساب. يتم توفير الرمز المميز عبر متغير البيئة AZ_BATCH_AUTHENTICATION_TOKEN. تعتمد العمليات التي يمكن للمهمة تنفيذها باستخدام الرمز المميز على الإعدادات. على سبيل المثال، يمكن لمهمة طلب أذونات الوظيفة لإضافة مهام أخرى إلى المهمة، أو التحقق من حالة الوظيفة أو المهام الأخرى ضمن المهمة.
authenticationTokenSettings?: AuthenticationTokenSettings
قيمة الخاصية
commandLine
سطر الأوامر للمهمة. بالنسبة للمهام متعددة المثيلات، يتم تنفيذ سطر الأوامر كمهمة أساسية، بعد انتهاء المهمة الأساسية وجميع المهام الفرعية من تنفيذ سطر أوامر التنسيق. لا يعمل سطر الأوامر تحت shell، وبالتالي لا يمكن الاستفادة من ميزات shell مثل توسيع متغير البيئة. إذا كنت ترغب في الاستفادة من هذه الميزات، يجب استدعاء shell في سطر الأوامر، على سبيل المثال باستخدام "cmd /c MyCommand" في Windows أو "/bin/sh -c MyCommand" في Linux. إذا كان سطر الأوامر يشير إلى مسارات الملفات، فيجب أن يستخدم مسارا نسبيا (بالنسبة إلى دليل عمل المهمة)، أو استخدام متغير البيئة المقدم من Batch (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables).
commandLine?: string
قيمة الخاصية
string
constraints
containerSettings
إعدادات الحاوية التي يتم تشغيل المهمة ضمنها. إذا كان التجمع الذي سيقوم بتشغيل هذه المهمة يحتوي على مجموعة تكوين الحاوية، يجب تعيين هذا أيضا. إذا لم يكن التجمع الذي سيقوم بتشغيل هذه المهمة يحتوي على مجموعة تكوين الحاوية، يجب عدم تعيين هذا. عند تحديد ذلك، يتم تعيين جميع الدلائل بشكل متكرر أسفل AZ_BATCH_NODE_ROOT_DIR (جذر دلائل Azure Batch على العقدة) في الحاوية، ويتم تعيين كافة متغيرات بيئة المهمة في الحاوية، ويتم تنفيذ سطر أوامر المهمة في الحاوية. قد لا تنعكس الملفات التي يتم إنتاجها في الحاوية خارج AZ_BATCH_NODE_ROOT_DIR على القرص المضيف، ما يعني أن واجهات برمجة تطبيقات ملف Batch لن تتمكن من الوصول إلى هذه الملفات.
containerSettings?: TaskContainerSettings
قيمة الخاصية
creationTime
وقت إنشاء المهمة.
creationTime?: Date
قيمة الخاصية
Date
dependsOn
المهام التي تعتمد عليها هذه المهمة. لن تتم جدولة هذه المهمة حتى تكتمل كافة المهام التي تعتمد عليها بنجاح. إذا فشلت أي من هذه المهام واستنفاد عدد مرات إعادة المحاولة الخاصة بها، فلن تتم جدولة هذه المهمة أبدا.
dependsOn?: TaskDependencies
قيمة الخاصية
displayName
اسم عرض للمهمة. لا يجب أن يكون اسم العرض فريدا ويمكن أن يحتوي على أي أحرف Unicode يصل طولها إلى 1024 كحد أقصى.
displayName?: string
قيمة الخاصية
string
environmentSettings
قائمة بإعدادات متغير البيئة للمهمة.
environmentSettings?: EnvironmentSetting[]
قيمة الخاصية
eTag
ETag للمهمة. هذه سلسلة مبهمة. يمكنك استخدامه للكشف عما إذا كانت المهمة قد تغيرت بين الطلبات. على وجه الخصوص، يمكنك تمرير ETag عند تحديث مهمة لتحديد أن التغييرات يجب أن تصبح سارية المفعول فقط إذا لم يقم أي شخص آخر بتعديل المهمة في هذه الأثناء.
eTag?: string
قيمة الخاصية
string
executionInfo
معلومات حول تنفيذ المهمة.
executionInfo?: TaskExecutionInformation
قيمة الخاصية
exitConditions
كيف يجب أن تستجيب خدمة Batch عند اكتمال المهمة.
exitConditions?: ExitConditions
قيمة الخاصية
id
سلسلة تعرف المهمة بشكل فريد داخل المهمة. يمكن أن يحتوي المعرف على أي تركيبة من الأحرف الأبجدية الرقمية بما في ذلك الواصلات والتسطير السفلي، ولا يمكن أن يحتوي على أكثر من 64 حرفا.
id?: string
قيمة الخاصية
string
lastModified
آخر وقت تم تعديله للمهمة.
lastModified?: Date
قيمة الخاصية
Date
multiInstanceSettings
كائن يشير إلى أن المهمة مهمة متعددة المثيلات، ويحتوي على معلومات حول كيفية تشغيل المهمة متعددة المثيلات.
multiInstanceSettings?: MultiInstanceSettings
قيمة الخاصية
nodeInfo
معلومات حول عقدة الحساب التي تم تشغيل المهمة عليها.
nodeInfo?: ComputeNodeInformation
قيمة الخاصية
outputFiles
قائمة بالملفات التي ستقوم خدمة Batch بتحميلها من عقدة الحساب بعد تشغيل سطر الأوامر. بالنسبة للمهام متعددة المثيلات، سيتم تحميل الملفات فقط من عقدة الحساب التي يتم تنفيذ المهمة الأساسية عليها.
outputFiles?: OutputFile[]
قيمة الخاصية
previousState
الحالة السابقة للمهمة. لم يتم تعيين هذه الخاصية إذا كانت المهمة في حالتها النشطة الأولية. تتضمن القيم المحتملة: "نشط" و"إعداد" و"قيد التشغيل" و"مكتمل"
previousState?: TaskState
قيمة الخاصية
previousStateTransitionTime
الوقت الذي أدخلت فيه المهمة حالتها السابقة. لم يتم تعيين هذه الخاصية إذا كانت المهمة في حالتها النشطة الأولية.
previousStateTransitionTime?: Date
قيمة الخاصية
Date
requiredSlots
عدد فتحات الجدولة التي تتطلب المهمة تشغيلها. الإعداد الافتراضي هو 1. يمكن جدولة المهمة فقط للتشغيل على عقدة حساب إذا كانت العقدة تحتوي على فتحات جدولة مجانية كافية متوفرة. بالنسبة للمهام متعددة المثيلات، يجب أن يكون هذا 1.
requiredSlots?: number
قيمة الخاصية
number
resourceFiles
قائمة بالملفات التي ستقوم خدمة Batch بتنزيلها إلى عقدة الحساب قبل تشغيل سطر الأوامر. بالنسبة للمهام متعددة المثيلات، سيتم تنزيل ملفات الموارد فقط إلى عقدة الحساب التي يتم تنفيذ المهمة الأساسية عليها. يوجد حد أقصى لحجم قائمة ملفات الموارد. عند تجاوز الحد الأقصى للحجم، سيفشل الطلب وسيكون رمز خطأ الاستجابة RequestEntityTooLarge. إذا حدث ذلك، يجب تصغير حجم مجموعة ResourceFiles. يمكن تحقيق ذلك باستخدام ملفات .zip أو حزم التطبيقات أو حاويات Docker.
resourceFiles?: ResourceFile[]
قيمة الخاصية
state
الحالة الحالية للمهمة. تتضمن القيم المحتملة: "نشط" و"إعداد" و"قيد التشغيل" و"مكتمل"
state?: TaskState
قيمة الخاصية
stateTransitionTime
الوقت الذي أدخلت فيه المهمة حالتها الحالية.
stateTransitionTime?: Date
قيمة الخاصية
Date
stats
url
عنوان URL للمهمة.
url?: string
قيمة الخاصية
string
userIdentity
هوية المستخدم التي يتم تشغيل المهمة بموجبها. إذا تم حذفها، يتم تشغيل المهمة كمستخدم غير إداري فريد للمهمة.
userIdentity?: UserIdentity