إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
باستخدام Azure Batch PowerShell cmdlets، يمكنك تنفيذ العديد من مهام Batch الشائعة وبرمجتها. هذه مقدمة سريعة إلى أوامر cmdlets التي يمكنك استخدامها لإدارة حسابات Batch الخاصة بك والعمل مع موارد Batch الخاصة بك مثل التجمعات والوظائف والمهام.
للحصول على قائمة كاملة ب Batch cmdlets وبناء جملة cmdlet التفصيلي، راجع مرجع #B0 Azure Batch cmdlet #A1 .
نوصي بتحديث وحدات Azure PowerShell بشكل متكرر للاستفادة من تحديثات الخدمة والتحسينات.
المتطلبات الأساسية
#B0 تثبيت وتكوين الوحدة النمطية Azure PowerShell #A1 . لتثبيت وحدة Azure Batch معينة، مثل وحدة ما قبل الإصدار، راجع #B0 معرض PowerShell #A1 .
قم بتشغيل #B0 Connect-AzAccount #C1 cmdlet للاتصال باشتراكك (يتم شحن Azure Batch cmdlets في الوحدة النمطية Azure Resource Manager):
Connect-AzAccount#B0 التسجيل باستخدام مساحة اسم موفر الدفعة #A1 . تحتاج فقط إلى تنفيذ هذه العملية #B0 مرة واحدة لكل اشتراك #A1 .
Register-AzResourceProvider -ProviderNamespace Microsoft.Batch
إدارة حسابات الدفعات والمفاتيح
أنشئ حساب Batch
#B0 يقوم New-AzBatchAccount #C1 بإنشاء حساب Batch في مجموعة موارد محددة. إذا لم يكن لديك مجموعة موارد بالفعل، فبادر بإنشاء مجموعة عن طريق تشغيل #B0 New-AzResourceGroup #C1 cmdlet. حدد إحدى مناطق Azure في المعلمة #C1 الموقع #B0، مثل "وسط الولايات المتحدة". على سبيل المثال:
New-AzResourceGroup –Name MyBatchResourceGroup –Location "Central US"
ثم قم بإنشاء حساب Batch في مجموعة الموارد. حدد اسما للحساب في #B0 #A1 account_name #A2 #A3 ، وموقع مجموعة الموارد واسمها. قد يستغرق إنشاء حساب Batch بعض الوقت لإكماله. على سبيل المثال:
New-AzBatchAccount –AccountName <account_name> –Location "Central US" –ResourceGroupName <res_group_name>
ملاحظة
يجب أن يكون اسم حساب Batch فريدا لمنطقة Azure لمجموعة الموارد، وأن يحتوي على ما بين 3 و24 حرفا، وأن يستخدم أحرفا صغيرة وأرقاما فقط.
الحصول على مفاتيح الوصول إلى الحساب
يعرض #B0 Get-AzBatchAccountKeys #C1 مفاتيح الوصول المقترنة بحساب Azure Batch. على سبيل المثال، قم بتشغيل ما يلي للحصول على المفاتيح الأساسية والثانوية للحساب الذي أنشأته.
$Account = Get-AzBatchAccountKeys –AccountName <account_name>
$Account.PrimaryAccountKey
$Account.SecondaryAccountKey
إنشاء مفتاح وصول جديد
#B0 ينشئ New-AzBatchAccountKey #C1 مفتاح حساب أساسي أو ثانوي جديد لحساب Azure Batch. على سبيل المثال، لإنشاء مفتاح أساسي جديد لحساب Batch الخاص بك، اكتب:
New-AzBatchAccountKey -AccountName <account_name> -KeyType Primary
ملاحظة
لإنشاء مفتاح ثانوي جديد، حدد "ثانوي" للمعلمة #B0 KeyType #C1. يجب إعادة إنشاء المفاتيح الأساسية والثانوية بشكل منفصل.
حذف حساب Batch
يقوم #B0 Remove-AzBatchAccount #C1 بحذف حساب Batch. على سبيل المثال:
Remove-AzBatchAccount -AccountName <account_name>
عند مطالبتك، تأكد من رغبتك في إزالة الحساب. قد تستغرق عملية إزالة الحساب بعض الوقت لإكمالها.
إنشاء كائن BatchAccountContext
يمكنك المصادقة لإدارة موارد Batch باستخدام إما مصادقة المفتاح المشترك أو مصادقة Microsoft Entra. للمصادقة باستخدام Batch PowerShell cmdlets، قم أولا بإنشاء كائن BatchAccountContext لتخزين بيانات اعتماد حسابك أو هويتك. يمكنك تمرير كائن BatchAccountContext إلى cmdlets التي تستخدم المعلمة #B0 BatchContext #C1.
مصادقة المفتاح المشترك
$context = Get-AzBatchAccountKeys -AccountName <account_name>
ملاحظة
بشكل افتراضي، يتم استخدام المفتاح الأساسي للحساب للمصادقة، ولكن يمكنك تحديد المفتاح المراد استخدامه بشكل صريح عن طريق تغيير خاصية #B0 KeyInUse #C1 لكائن BatchAccountContext: #B2 .
مصادقة Microsoft Entra
$context = Get-AzBatchAccount -AccountName <account_name>
إنشاء موارد Batch وتعديلها
استخدم cmdlets مثل #B0 New-AzBatchPool #A1 ، #B2 New-AzBatchJob #A3 ، #B4 New-AzBatchTask #C5 لإنشاء موارد ضمن حساب Batch. هناك أوامر cmdlets مطابقة #B0 Get-#C1 #B2 Set-#C3 لتحديث خصائص الموارد الموجودة، #B4 Remove-#C5 cmdlets لإزالة الموارد ضمن حساب Batch.
عند استخدام العديد من أوامر cmdlets هذه، بالإضافة إلى تمرير كائن BatchContext، تحتاج إلى إنشاء أو تمرير الكائنات التي تحتوي على إعدادات الموارد التفصيلية، كما هو موضح في المثال التالي. راجع التعليمات التفصيلية لكل cmdlet للحصول على أمثلة إضافية.
إنشاء تجمع Batch
عند إنشاء تجمع دفعة أو تحديثه، يمكنك تحديد تكوين #B0 #A1 . يجب تكوين التجمعات بشكل عام باستخدام تكوين الجهاز الظاهري، والذي يتيح لك إما تحديد إحدى صور Linux أو Windows VM المدعومة المدرجة في #B0 Azure Virtual Machines Marketplace #A1 ، أو توفير صورة مخصصة قمت بإعدادها. توفر تجمعات تكوين الخدمات السحابية عقد حساب Windows فقط ولا تدعم جميع ميزات Batch.
عند تشغيل #B0 New-AzBatchPool #A1 ، قم بتمرير إعدادات نظام التشغيل في عنصر PSVirtualMachineConfiguration أو PSCloudServiceConfiguration. على سبيل المثال، ينشئ القصاصة البرمجية التالية تجمع Batch بحجم Standard_A1 عقد حساب في تكوين الجهاز الظاهري، تم تصويره باستخدام Ubuntu Server 20.04-LTS. هنا، تحدد المعلمة #C1 #B0 VirtualMachineConfiguration متغير #B2 $configuration #C3 كعنصر PSVirtualMachineConfiguration. تحدد المعلمة #C1 #B0 BatchContext متغيرا معرفا مسبقا #B2 $context #C3 كعنصر BatchAccountContext.
$imageRef = New-Object -TypeName "Microsoft.Azure.Commands.Batch.Models.PSImageReference" -ArgumentList @("UbuntuServer","Canonical","20.04-LTS")
$configuration = New-Object -TypeName "Microsoft.Azure.Commands.Batch.Models.PSVirtualMachineConfiguration" -ArgumentList @($imageRef, "batch.node.ubuntu 20.04")
New-AzBatchPool -Id "mypspool" -VirtualMachineSize "Standard_a1" -VirtualMachineConfiguration $configuration -AutoScaleFormula '$TargetDedicated=4;' -BatchContext $context
يتم حساب العدد المستهدف لعقد الحوسبة في التجمع الجديد بواسطة صيغة تغيير الحجم التلقائي. في هذه الحالة، تكون الصيغة ببساطة #B0 $TargetDedicated=4 #A1 ، مما يشير إلى أن عدد عقد الحوسبة في التجمع هو 4 على الأكثر.
الاستعلام عن التجمعات والوظائف والمهام والتفاصيل الأخرى
استخدم cmdlets مثل #B0 Get-AzBatchPool #A1 ، #B2 Get-AzBatchJob #A3 ، #B4 Get-AzBatchTask #C5 للاستعلام عن الكيانات التي تم إنشاؤها ضمن حساب Batch.
الاستعلام عن البيانات
على سبيل المثال، استخدم #B0 Get-AzBatchPools #C1 للعثور على التجمعات الخاصة بك. بشكل افتراضي، هذه الاستعلامات لكافة التجمعات ضمن حسابك، على افتراض أنك قمت بالفعل بتخزين كائن BatchAccountContext في #B0 $context #A1 :
Get-AzBatchPool -BatchContext $context
استخدام عامل تصفية OData
يمكنك توفير عامل تصفية OData باستخدام المعلمة #B0 Filter #C1 للعثور على العناصر التي تهتم بها فقط. على سبيل المثال، يمكنك العثور على جميع التجمعات ذات المعرف بدءا من "myPool":
$filter = "startswith(id,'myPool')"
Get-AzBatchPool -Filter $filter -BatchContext $context
هذا الأسلوب غير مرن مثل استخدام "Where-Object" في البنية الأساسية لبرنامج ربط العمليات التجارية المحلية. ومع ذلك، يتم إرسال الاستعلام إلى خدمة Batch مباشرة بحيث تحدث جميع التصفية على جانب الخادم، ما يؤدي إلى حفظ عرض النطاق الترددي للإنترنت.
استخدام معلمة المعرف
بديل لعامل تصفية OData هو استخدام المعلمة #C1 معرف #B0. للاستعلام عن تجمع معين بالمعرف "myPool":
Get-AzBatchPool -Id "myPool" -BatchContext $context
تدعم المعلمة #C1 معرف #B0 البحث عن المعرف الكامل فقط؛ لا أحرف البدل أو عوامل تصفية نمط OData.
استخدام المعلمة MaxCount
بشكل افتراضي، يقوم كل cmdlet بإرجاع 1000 عنصر كحد أقصى. إذا وصلت إلى هذا الحد، فقم إما بتحسين عامل التصفية الخاص بك لإعادة عدد أقل من العناصر، أو تعيين حد أقصى بشكل صريح باستخدام المعلمة #B0 MaxCount #C1. على سبيل المثال:
Get-AzBatchTask -MaxCount 2500 -BatchContext $context
لإزالة الحد العلوي، قم بتعيين #B0 MaxCount #C1 إلى 0 أو أقل.
استخدام البنية الأساسية لبرنامج ربط العمليات التجارية PowerShell
تستخدم أوامر cmdlets الدفعية البنية الأساسية لبرنامج ربط العمليات التجارية PowerShell لإرسال البيانات بين أوامر cmdlets. هذا له نفس تأثير تحديد معلمة، ولكنه يجعل العمل مع كيانات متعددة أسهل.
على سبيل المثال، ابحث عن جميع المهام وعرضها ضمن حسابك:
Get-AzBatchJob -BatchContext $context | Get-AzBatchTask -BatchContext $context
أعد تشغيل (إعادة التشغيل) كل عقدة حساب في تجمع:
Get-AzBatchComputeNode -PoolId "myPool" -BatchContext $context | Restart-AzBatchComputeNode -BatchContext $context
إدارة حزمة التطبيق
#B0 توفر حزم التطبيقات #C1 طريقة مبسطة لنشر التطبيقات إلى عقد الحوسبة في التجمعات الخاصة بك. باستخدام Batch PowerShell cmdlets، يمكنك تحميل حزم التطبيقات وإدارتها في حساب Batch الخاص بك، ونشر إصدارات الحزمة لحساب العقد.
هام
يجب ربط حساب Azure Storage بحساب Batch الخاص بك لاستخدام حزم التطبيقات.
#B0 إنشاء #C1 تطبيق:
New-AzBatchApplication -AccountName <account_name> -ResourceGroupName <res_group_name> -ApplicationId "MyBatchApplication"
#B0 إضافة #C1 حزمة تطبيق:
New-AzBatchApplicationPackage -AccountName <account_name> -ResourceGroupName <res_group_name> -ApplicationId "MyBatchApplication" -ApplicationVersion "1.0" -Format zip -FilePath package001.zip
تعيين #C1 الإصدار الافتراضي #B0 للتطبيق:
Set-AzBatchApplication -AccountName <account_name> -ResourceGroupName <res_group_name> -ApplicationId "MyBatchApplication" -DefaultVersion "1.0"
#B0 List #C1 حزم التطبيق
$application = Get-AzBatchApplication -AccountName <account_name> -ResourceGroupName <res_group_name> -ApplicationId "MyBatchApplication"
$application.ApplicationPackages
#B0 حذف #C1 حزمة تطبيق
Remove-AzBatchApplicationPackage -AccountName <account_name> -ResourceGroupName <res_group_name> -ApplicationId "MyBatchApplication" -ApplicationVersion "1.0"
#B0 حذف #C1 تطبيق
Remove-AzBatchApplication -AccountName <account_name> -ResourceGroupName <res_group_name> -ApplicationId "MyBatchApplication"
ملاحظة
يجب حذف جميع إصدارات حزمة تطبيق التطبيق قبل حذف التطبيق. ستتلقى خطأ "تعارض" إذا حاولت حذف تطبيق يحتوي حاليا على حزم تطبيقات.
نشر حزمة تطبيق
يمكنك تحديد حزمة تطبيق واحدة أو أكثر للنشر عند إنشاء تجمع. عند تحديد حزمة في وقت إنشاء التجمع، يتم نشرها في كل عقدة حيث تنضم العقدة إلى التجمع. يتم أيضا نشر الحزم عند إعادة تشغيل عقدة أو إعادة تصورها.
حدد الخيار #D0 عند إنشاء تجمع لنشر حزمة تطبيق إلى عقد التجمع أثناء انضمامها إلى التجمع. أولا، أنشئ كائن #B0 PSApplicationPackageReference #C1، وقم بتكوينه باستخدام معرف التطبيق وإصدار الحزمة الذي تريد نشره إلى عقد حساب التجمع:
$appPackageReference = New-Object Microsoft.Azure.Commands.Batch.Models.PSApplicationPackageReference
$appPackageReference.ApplicationId = "MyBatchApplication"
$appPackageReference.Version = "1.0"
الآن قم بإنشاء التجمع، وحدد كائن مرجع الحزمة كوسيطة للخيار #D0:
New-AzBatchPool -Id "PoolWithAppPackage" -VirtualMachineSize "Small" -VirtualMachineConfiguration $configuration -BatchContext $context -ApplicationPackageReferences $appPackageReference
يمكنك العثور على مزيد من المعلومات حول حزم التطبيقات في #B0 نشر التطبيقات لحساب العقد باستخدام حزم تطبيقات Batch #A1 .
تحديث حزم تطبيقات التجمع
لتحديث التطبيقات المعينة إلى تجمع موجود، قم أولا بإنشاء كائن PSApplicationPackageReference بالخصائص المطلوبة (معرف التطبيق وإصدار الحزمة):
$appPackageReference = New-Object Microsoft.Azure.Commands.Batch.Models.PSApplicationPackageReference
$appPackageReference.ApplicationId = "MyBatchApplication"
$appPackageReference.Version = "2.0"
بعد ذلك، احصل على التجمع من Batch، وقم بإلغاء تحديد أي حزم موجودة، وأضف مرجع الحزمة الجديد، وقم بتحديث خدمة Batch بإعدادات التجمع الجديدة:
$pool = Get-AzBatchPool -BatchContext $context -Id "PoolWithAppPackage"
$pool.ApplicationPackageReferences.Clear()
$pool.ApplicationPackageReferences.Add($appPackageReference)
Set-AzBatchPool -BatchContext $context -Pool $pool
لقد قمت الآن بتحديث خصائص التجمع في خدمة Batch. لتوزيع حزمة التطبيق الجديدة فعليا لحساب العقد في التجمع، ومع ذلك، يجب إعادة تشغيل تلك العقد أو إعادة تعيينها. يمكنك إعادة تشغيل كل عقدة في تجمع باستخدام هذا الأمر:
Get-AzBatchComputeNode -PoolId "PoolWithAppPackage" -BatchContext $context | Restart-AzBatchComputeNode -BatchContext $context
تلميح
يمكنك نشر حزم تطبيقات متعددة إلى عقد الحوسبة في تجمع. إذا كنت ترغب في إضافة حزمة تطبيق بدلا من استبدال الحزم المنشورة حاليا، فاحذف سطر #D0 أعلاه.
الخطوات التالية
- راجع #C1 مرجع #B0 Azure Batch cmdlet للحصول على بناء جملة cmdlet وأمثلة مفصلة.
- تعرف على كيفية #B0 توزيع التطبيقات لحساب العقد باستخدام حزم تطبيقات Batch #A1 .