استخدم معرض حساب Azure لإنشاء تجمع صور مخصص

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

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

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

يؤدي استخدام صورة مشتركة إلى توفير الوقت في إعداد العقد الحسابية لمجموعتك لتشغيل أعباء العمل المجمعة. من الممكن استخدام صورة Azure Marketplace وتثبيت البرامج على كل عقدة حسابية بعد التوفير، ولكن استخدام الصورة المشتركة يكون عادةً أكثر كفاءة. بالإضافة إلى ذلك، يمكنك تحديد عدة نسخ متماثلة للصورة المشتركة، لذلك عند إنشاء مجموعات بها العديد من الأجهزة الظاهرية (أكثر من 600 جهاز ظاهري)، ستوفر الوقت في إنشاء التجمع.

يمكن أن يوفر استخدام صورة مشتركة تم تكوينها للسيناريو الخاص بك العديد من المزايا:

  • استخدم نفس الصور عبر المناطق. يمكنك إنشاء نسخ متماثلة للصور المشتركة عبر مناطق مختلفة بحيث تستخدم جميع مجموعاتك نفس الصورة.
  • تكوين نظام التشغيل (OS). يمكنك تخصيص تكوين قرص نظام تشغيل الصورة.
  • تثبيت التطبيقات مسبقاً. يعد التثبيت المسبق للتطبيقات على قرص نظام التشغيل أكثر كفاءة وأقل عرضة للخطأ من تثبيت التطبيقات بعد تزويد عقد الحوسبة بمهمة بدء.
  • نسخ كميات كبيرة من البيانات مرة واحدة. اجعل البيانات الثابتة جزءاً من الصورة المشتركة المُدارة عن طريق نسخها إلى أقراص بيانات الصورة المُدارة. يجب القيام بذلك مرة واحدة فقط ويجعل البيانات متاحة لكل عقدة في التجمع.
  • تنمية التجمعات لأحجام أكبر. باستخدام Azure Compute Gallery، يمكنك إنشاء مجموعات أكبر مع صورك المخصصة بالإضافة إلى المزيد من النسخ المتماثلة للصور المشتركة.
  • أداء أفضل من استخدام صورة مدارة فقط كصورة مخصصة. بالنسبة إلى تجمع صور مخصص للصور المشتركة، يكون وقت الوصول إلى الحالة الثابتة أسرع بنسبة تصل إلى 25٪، وزمن انتقال الخمول VM أقصر بنسبة 30٪.
  • إصدار وتجميع الصور لتسهيل الإدارة. يحتوي تعريف تجميع الصور على معلومات حول سبب إنشاء الصورة، وما الغرض من نظام التشغيل، ومعلومات حول استخدام الصورة. يسمح تجميع الصور بإدارة الصور بشكل أسهل. لمزيد من المعلومات، راجع تعريفات الصور .

المتطلبات الأساسية

إشعار

المصادقة باستخدام معرف Microsoft Entra مطلوبة. إذا كنت تستخدم Shared Key Auth، فستحصل على خطأ مصادقة.

  • صورة Azure Compute Gallery . لإنشاء صورة مشتركة، تحتاج إلى امتلاك أو إنشاء مورد صورة مُدار. يجب إنشاء الصورة من لقطات قرص نظام التشغيل الخاص بـ جهاز ظاهري واختيارياً أقراص البيانات المرفقة.

إشعار

إذا لم تكن الصورة المشتركة في نفس الاشتراك مثل حساب الدُفعة، فيجب عليك تسجيل موفر موارد Microsoft.Batch لهذا الاشتراك. يجب أن يكون الاشتراكان في نفس مستأجر Microsoft Entra.

يمكن أن تكون الصورة في منطقة مختلفة طالما أنها تحتوي على نسخ متماثلة في نفس المنطقة مثل حساب الدُفعة الخاص بك.

إذا كنت تستخدم تطبيق Microsoft Entra لإنشاء تجمع صور مخصص مع صورة Azure Compute Gallery، فيجب أن يكون هذا التطبيق قد تم منحه دورا مضمنا في Azure يمنحه حق الوصول إلى الصورة المشتركة. يمكنك منح هذا الوصول في مدخل Microsoft Azure بالانتقال إلى الصورة المشتركة، وتحديد التحكم في الوصول (IAM) وإضافة تعيين دور للتطبيق.

إشعار

أذونات القارئ لصورة معرض الحوسبة Azure غير كافية لأنها تتطلب تنفيذ الحد الأدنى من الإجراء التالي: Microsoft.Compute/disks/beginGetAccess/action للوصول المناسب.

تحضير صورة مشتركة

في Azure، يمكنك تحضير صورة مشتركة من صورة مُدارة، والتي يمكن إنشاؤها من:

  • لقطات من نظام تشغيل Azure VM وأقراص البيانات
  • Azure VM معمم مع الأقراص المدارة
  • قرص صلب ظاهري "VHD" محلي عام مُحمّل على السحابة

إشعار

تدعم الدفعة فقط الصور المشتركة المعممة؛ لا يمكن استخدام صورة مشتركة متخصصة لإنشاء تجمع.

توضح الخطوات التالية كيفية تحضير جهاز ظاهري والتقاط لقطة، وإنشاء صورة من اللقطة.

تحضير VM

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

للحصول على قائمة كاملة بمراجع صور Azure Marketplace الحالية المدعومة من Azure Batch، استخدم إحدى واجهات برمجة التطبيقات التالية لإرجاع قائمة بصور Windows وLinux VM:

اتبع هذه الإرشادات عند إنشاء أجهزة ظاهرية:

  • تأكد من إنشاء الجهاز الظاهري مع قرص مُدار. هذا هو إعداد التخزين الظاهري عند إنشاء جهاز ظاهري.
  • لا تقم بتثبيت ملحقات Azure، مثل ملحق البرنامج النصي المخصص، على الجهاز الظاهري. إذا كانت الصورة تحتوي على ملحق مثبت مسبقاً، قد تواجه Azure مشاكل عند نشر تجمع الدُفعات.
  • عند استخدام أقراص البيانات المرفقة، تحتاج إلى تحميل وتنسيق الأقراص من داخل الجهاز الظاهري لاستخدامها.
  • تأكد من أن صورة نظام التشغيل الأساسي "OS" الذي توفره تستخدم محرك الأقراص المؤقت الظاهري. يتوقع عامل عقدة الدُفعة حالياً محرك الأقراص المؤقت الظاهري.
  • تأكد من عدم تشفير قرص نظام التشغيل.
  • بمجرد تشغيل الجهاز الظاهري، اتصل به عبر RDP (ويندوز) أو SSH (لينكس). تأكد من تثبيت أي برامج ضرورية أو نسخ البيانات المطلوبة.
  • لتوفير أسرع للتجمع، استخدم إعداد ذاكرة التخزين المؤقت للقرص ReadWrite لقرص نظام التشغيل الخاص بـ VM.

تحتاج إلى إنشاء معرض حوسبة Azure لتوفير صورتك المخصصة. حدد هذا المعرض عند إنشاء صورة في الخطوات التالية. لمعرفة كيفية إنشاء معرض حوسبة Azure لصورك، راجع إنشاء معرض حوسبة Azure .

إنشاء صورة

لإنشاء صورة من جهاز ظاهري في المدخل، راجع التقاط صورة لجهاز ظاهري.

لإنشاء صورة باستخدام مصدر آخر غير جهاز ظاهري، راجع إنشاء صورة.

إشعار

إذا كانت الصورة الأساسية تحتوي على معلومات خطة الشراء، فتأكد من أن صورة المعرض تحتوي على معلومات خطة شراء متطابقة كصورة أساسية. لمزيد من المعلومات حول إنشاء صورة تحتوي على خطة شراء، راجع معلومات خطة شراء Supply Azure Marketplace عند إنشاء الصور.

إذا لم تكن الصورة الأساسية تحتوي على معلومات خطة الشراء، فتجنب تحديد أي معلومات خطة شراء لصورة المعرض.

للحصول على معلومات خطة الشراء حول صور Marketplace هذه، راجع إرشادات Linux أو Windows VMs.

استخدم Azure PowerShell Get-AzGalleryImageDefinition أو Azure CLI az sig image-definition show للتحقق مما إذا كانت صورة المعرض تحتوي على معلومات الخطة الصحيحة.

أنشئ مجموعة من صورة مشتركة باستخدام Azure CLI

لإنشاء مجموعة من صورتك المشتركة باستخدام Azure CLI، استخدم الأمر az batch pool create. حدد معرف الصورة المشتركة في الحقل --image. تأكد من تطابق نوع نظام التشغيل وSKU مع الإصدارات المحددة بواسطة --node-agent-sku-id

هام

يجب أن يتوافق معرف SKU لعامل العقدة مع الناشر/العرض/SKU حتى تبدأ العقدة.

az batch pool create \
    --id mypool --vm-size Standard_A1_v2 \
    --target-dedicated-nodes 2 \
    --image "/subscriptions/{sub id}/resourceGroups/{resource group name}/providers/Microsoft.Compute/galleries/{gallery name}/images/{image definition name}/versions/{version id}" \
    --{node-agent-sku-id}

إنشاء تجمع من صورة مشتركة باستخدام C#‎

بدلاً من ذلك، يمكنك إنشاء تجمع من صورة مشتركة باستخدام C# SDK.

private static VirtualMachineConfiguration CreateVirtualMachineConfiguration(ImageReference imageReference)
{
    return new VirtualMachineConfiguration(
        imageReference: imageReference,
        nodeAgentSkuId: {});
}

private static ImageReference CreateImageReference()
{
    return new ImageReference(
        virtualMachineImageId: "/subscriptions/{sub id}/resourceGroups/{resource group name}/providers/Microsoft.Compute/galleries/{gallery name}/images/{image definition name}/versions/{version id}");
}

private static void CreateBatchPool(BatchClient batchClient, VirtualMachineConfiguration vmConfiguration)
{
    try
    {
        CloudPool pool = batchClient.PoolOperations.CreatePool(
            poolId: PoolId,
            targetDedicatedComputeNodes: PoolNodeCount,
            virtualMachineSize: PoolVMSize,
            virtualMachineConfiguration: vmConfiguration);

        pool.Commit();
    }
    ...
}

قم بإنشاء تجمع من صورة مشتركة باستخدام بايثون

يمكنك أيضاً إنشاء تجمع من صورة مشتركة باستخدام Python SDK:

# Import the required modules from the
# Azure Batch Client Library for Python
import azure.batch as batch
import azure.batch.models as batchmodels
from azure.common.credentials import ServicePrincipalCredentials

# Specify Batch account and service principal account credentials
account = "{batch-account-name}"
batch_url = "{batch-account-url}"
ad_client_id = "{sp-client-id}"
ad_tenant = "{tenant-id}"
ad_secret = "{sp-secret}"

# Pool settings
pool_id = "LinuxNodesSamplePoolPython"
vm_size = "STANDARD_D2_V3"
node_count = 1

# Initialize the Batch client with Azure AD authentication
creds = ServicePrincipalCredentials(
    client_id=ad_client_id,
    secret=ad_secret,
    tenant=ad_tenant,
    resource="https://batch.core.windows.net/"
)
client = batch.BatchServiceClient(creds, batch_url)

# Configure the start task for the pool
start_task = batchmodels.StartTask(
    command_line="printenv AZ_BATCH_NODE_STARTUP_DIR"
)
start_task.run_elevated = True

# Create an ImageReference which specifies the image from
# Azure Compute Gallery to install on the nodes.
ir = batchmodels.ImageReference(
    virtual_machine_image_id="/subscriptions/{sub id}/resourceGroups/{resource group name}/providers/Microsoft.Compute/galleries/{gallery name}/images/{image definition name}/versions/{version id}"
)

# Create the VirtualMachineConfiguration, specifying
# the VM image reference and the Batch node agent to
# be installed on the node.
vmc = batchmodels.VirtualMachineConfiguration(
    image_reference=ir,
    {node_agent_sku_id}
)

# Create the unbound pool
new_pool = batchmodels.PoolAddParameter(
    id=pool_id,
    vm_size=vm_size,
    target_dedicated_nodes=node_count,
    virtual_machine_configuration=vmc,
    start_task=start_task
)

# Create pool in the Batch service
client.pool.add(new_pool)

إنشاء تجمع من صورة مشتركة أو صورة مخصصة باستخدام مدخل Microsoft Azure

استخدم الخطوات التالية لإنشاء تجمع من صورة مشتركة في مدخل Microsoft Azure.

  1. افتح مدخل Azure.
  2. انتقل إلى حسابات الدفعات وحدد حسابك.
  3. حدد مجموعات ثم إضافة لإنشاء مستودع جديد.
  4. في قسم نوع الصورة ، حدد معرض حساب Azure .
  5. أكمل الأقسام المتبقية بمعلومات حول صورتك المُدارة.
  6. حدد موافق.
  7. بمجرد تخصيص العقدة، استخدم الاتصال لإنشاء مستخدم وملف RDP ل Windows OR استخدم SSH إلى ل Linux لتسجيل الدخول إلى العقدة المخصصة والتحقق.

قم بإنشاء تجمع من صورة مشتركة مع البوابة الإلكترونية.

اعتبارات للتجمعات الكبيرة

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

  • أرقام النسخ المماثلة لمعرض Azure Compute Gallery. لكل تجمع به ما يصل إلى 300 مثيل، نوصي بالاحتفاظ بنسخة متماثلة واحدة على الأقل. على سبيل المثال، إذا كنت تقوم بإنشاء تجمع مع 3000 جهاز ظاهري، فيجب عليك الاحتفاظ ب 10 نسخ متماثلة على الأقل من صورتك. نقترح دائماً الاحتفاظ بنسخ متماثلة أكثر من الحد الأدنى من المتطلبات للحصول على أداء أفضل.

  • انقضاء مهلة تغيير الحجم. إذا كان حمام السباحة الخاص بك يحتوي على عدد ثابت من العقد (إذا لم يتم قياسه تلقائياً)، فقم بزيادة خاصية resizeTimeout الخاصة بالتجمع وفقاً لحجم التجمع. لكل 1000 جهاز ظاهري، مهلة تغيير الحجم الموصى بها هي 15 دقيقة على الأقل. على سبيل المثال، مهلة تغيير الحجم الموصى بها لتجمع به 2000 جهاز ظاهري هي 30 دقيقة على الأقل.

الخطوات التالية