إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
عند إنشاء تجمع Azure Batch، يمكنك تحديد خصائص معينة تحدد تكوين التجمع. تتضمن الأمثلة تحديد حجم الجهاز الظاهري وصورة الجهاز الظاهري لاستخدامها وتكوين الشبكة الظاهرية وإعدادات التشفير. ومع ذلك، قد تحتاج إلى تحديث خصائص التجمع مع تطور حمل العمل بمرور الوقت أو إذا وصلت صورة الجهاز الظاهري إلى نهاية العمر الافتراضي.
يمكن تصحيح بعض خصائص التجمع هذه، وليس كلها، أو تحديثها لاستيعاب هذه الحالات. توفر هذه المقالة معلومات حول خصائص التجمع القابلة للتحديث والسلوكيات المتوقعة لتحديثات خصائص التجمع والأمثلة.
تلميح
يمكن تحديث بعض خصائص التجمع فقط باستخدام واجهات برمجة تطبيقات مستوى إدارة الدفعات أو SDKs باستخدام مصادقة Entra. ستحتاج إلى تثبيت أو استخدام واجهة برمجة التطبيقات أو SDK المناسبة لتكون هذه العمليات متاحة.
خصائص التجمع القابلة للتحديث
يوفر Batch أساليب متعددة لتحديث الخصائص على تجمع. تحديد واجهة برمجة التطبيقات التي يجب استخدامها يحدد مجموعة خصائص التجمع التي يمكن تحديثها بالإضافة إلى سلوك التحديث.
إشعار
إذا كنت ترغب في تحديث خصائص التجمع التي ليست جزءا من واجهات برمجة تطبيقات التحديث أو التصحيح التالية، فيجب عليك إعادة إنشاء التجمع لتعكس الحالة المطلوبة.
مستوى الإدارة: تجمع - تحديث
المسار الموصى به لتحديث خصائص التجمع هو استخدام تجمع - تحديث واجهة برمجة التطبيقات كجزء من واجهة برمجة تطبيقات مستوى إدارة الدفعات أو SDK. توفر واجهة برمجة التطبيقات هذه الطريقة الأكثر شمولا ومرونة لتحديث خصائص التجمع. يسمح استخدام واجهة برمجة التطبيقات هذه بتحديث محدد لخصائص تجمع مستوى الإدارة فقط والقدرة على تحديث الخصائص الأخرى التي ستكون غير قابلة للتغيير عبر واجهات برمجة تطبيقات مستوى البيانات.
هام
يجب استخدام إصدار API 2024-07-01 أو أحدث من واجهة برمجة تطبيقات مستوى إدارة الدفعات لتحديث خصائص التجمع كما هو موضح في هذا القسم.
نظرا لأن هذه العملية هي PATCH، يتم تحديث خصائص التجمع المحددة في الطلب فقط.
إذا لم يتم تحديد الخصائص كجزء من الطلب، فستظل القيم الموجودة غير معدلة.
يمكن تحديث بعض الخصائص فقط عندما لا يحتوي التجمع على عقد نشطة فيه أو عندما يكون العدد الإجمالي لعقد الحوسبة في التجمع صفرا. الخصائص التي لا تتطلب أن يكون التجمع بحجم صفر حتى تصبح القيمة الجديدة سارية المفعول هي:
- حزم التطبيقات
- الشهادات
- بيانات التعريف
- إعدادات المقياس
- startTask
إذا كانت هناك عقد نشطة عند تحديث التجمع بهذه الخصائص، فقد تكون هناك حاجة إلى إعادة تشغيل عقد الحوسبة النشطة حتى تصبح التغييرات سارية المفعول. لمزيد من المعلومات، راجع الوثائق الخاصة بكل خاصية تجمع فردية.
تتطلب جميع خصائص التجمع الأخرى القابلة للتحديث أن يكون التجمع من عقد صفرية الحجم ليتم قبولها كجزء من طلب التحديث.
يمكنك أيضا استخدام Pool - Create API لتحديث خصائص التحديد هذه، ولكن نظرا لأن العملية هي PUT، فإن الطلب يحل محل جميع الخصائص الموجودة بشكل كامل. لذلك، تتم إزالة أي خاصية غير محددة في الطلب أو تعيينها مع الافتراضي المقترن.
مثال: تحديث مواصفات صورة الجهاز الظاهري
يوضح المثال التالي كيفية تحديث تكوين صورة جهاز ظاهري للمجموعة عبر Management Plane C# SDK:
public async Task UpdatePoolVmImage()
{
// Authenticate
var clientId = Environment.GetEnvironmentVariable("CLIENT_ID");
var clientSecret = Environment.GetEnvironmentVariable("CLIENT_SECRET");
var tenantId = Environment.GetEnvironmentVariable("TENANT_ID");
var subscriptionId = Environment.GetEnvironmentVariable("SUBSCRIPTION_ID");
ClientSecretCredential credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
ArmClient client = new ArmClient(credential, subscriptionId);
// Get an existing Batch account
string resourceGroupName = "<resourcegroup>";
string accountName = "<batchaccount>";
ResourceIdentifier batchAccountResourceId = BatchAccountResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, accountName);
BatchAccountResource batchAccount = client.GetBatchAccountResource(batchAccountResourceId);
// get the collection of this BatchAccountPoolResource
BatchAccountPoolCollection collection = batchAccount.GetBatchAccountPools();
// Update the pool
string poolName = "mypool";
BatchAccountPoolData data = new BatchAccountPoolData()
{
DeploymentConfiguration = new BatchDeploymentConfiguration()
{
VmConfiguration = new BatchVmConfiguration(new BatchImageReference()
{
Publisher = "MicrosoftWindowsServer",
Offer = "WindowsServer",
Sku = "2022-datacenter-azure-edition-smalldisk",
Version = "latest",
},
nodeAgentSkuId: "batch.node.windows amd64"),
},
};
ArmOperation<BatchAccountPoolResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, poolName, data);
BatchAccountPoolResource result = lro.Value;
BatchAccountPoolData resourceData = result.Data;
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
}
مثال: تحديث حجم الجهاز الظاهري ووضع اتصال العقدة الهدف
يوضح المثال التالي كيفية تحديث حجم صورة تجمع VM ووضع اتصال العقدة الهدف ليتم تبسيطه عبر واجهة برمجة تطبيقات REST:
PATCH https://management.azure.com/subscriptions/<subscriptionid>/resourceGroups/<resourcegroupName>/providers/Microsoft.Batch/batchAccounts/<batchaccountname>/pools/<poolname>?api-version=2024-07-01
نص الطلب
{
"type": "Microsoft.Batch/batchAccounts/pools",
"parameters": {
"properties": {
"vmSize": "standard_d32ads_v5",
"targetNodeCommunicationMode": "simplified"
}
}
}
مستوى البيانات: تجمع - تصحيح أو تحديث الخصائص
توفر وحدة البيانات القدرة على تصحيح خصائص مجموعة محددة أو تحديثها. واجهة برمجة التطبيقات المتاحة هي واجهة تجمع - تحديث خصائص المجموعات كجزء من واجهة برمجة تطبيقات مستوى البيانات الدفعية أو SDK.
تسمح واجهة برمجة تطبيقات تحديث الخصائص بتحديد تحديث خصائص التجمع كما هو محدد في الوثائق. يحل هذا الطلب محل الخصائص الموجودة بشكل كامل، وبالتالي تتم إزالة أي خاصية غير محددة في الطلب.
يجب إعادة تشغيل عقد الحوسبة حتى تصبح التغييرات سارية المفعول للخصائص التالية:
- applicationPackageReferences
- مرجعات الشهادة
- startTask
يجب تغيير حجم التجمع إلى صفر عقد نشطة لتحديثات الخاصية targetNodeCommunicationMode .
الأسئلة المتداولة
- هل أحتاج إلى إجراء أي عمليات أخرى بعد تحديث خصائص التجمع بينما يحتوي التجمع على عقد نشطة؟
نعم، بالنسبة لخصائص التجمع التي يمكن تحديثها باستخدام العقد النشطة، هناك خصائص محددة تتطلب إعادة تشغيل عقد الحوسبة. بدلا من ذلك، يمكن تحجيم التجمع إلى صفر عقد لتعكس الخصائص المعدلة.
- هل يمكنني تعديل مجموعة الهوية المدارة على التجمع بينما يحتوي التجمع على عقد نشطة؟
نعم، لكن لا يجب عليك ذلك. بينما لا تحظر Batch تحول المجموعة مع العقد النشطة، نوصي بتجنب القيام بذلك لأن ذلك يؤدي إلى عدم الاتساق في مجموعة الهوية إذا تم توسيع نطاق التجمع. نوصي بتحديث هذه الخاصية فقط عندما يكون حجم التجمع صفرا. لمزيد من المعلومات، راجع مقالة تكوين الهويات المدارة .
الخطوات التالية
- تعرف على المزيد حول واجهات برمجة التطبيقات والأدوات الدفعية المتوفرة.
- تعرف على كيفية التحقق من التجمعات والعقد بحثا عن الأخطاء.