موارد VMware vSphere: شرح HotAdd/HotPlug

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

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

ما هو VMware Hot Add؟

VMware Hot Add هي ميزة تسمح لك بإضافة أجهزة مجازية إلى جهاز مجازي أثناء تشغيل الجهاز المجازي. بشكل افتراضي، يمكنك إضافة أجهزة مجازية مثل القرص الصلب المجازي (ليس IDE)، ووصلات الشبكة، وأجهزة الـ USB أثناء تشغيل الجهاز المجازي. تجعل ميزة VMware Hot Add من الممكن إضافة معالج مجازي (المعالج المركزي) وذاكرة RAM (الوصول العشوائي للذاكرة) على الطاول. مع تمكين VMware Hot Add، لا داعي لإيقاف تشغيل الجهاز المجازي لإضافة أجهزة مجازية.

VMware Hot Add مقابل Hot Plug

قد تلاحظ أن ميزة CPU Hot Add تشارك أحيانًا باسم CPU hot plug. نفس المنطق ينطبق على ميزة memory hot add وmemory hot plug. تشير هاتان العبارتان إلى نفس الشيء ويمكن استبدالهما.

ملاحظة: لا تخلط بين ذاكرة VMware الديناميكية وإضافة ذاكرة VMware الساخنة لأن هذه الميزات مختلفة. ذاكرة VMware الديناميكية هي تقنية لإدارة ذاكرة VMware بكفاءة لآلات الظاهرية. هذا الاسم ليس رسميًا لهذه الميزة، ولكن يذكرها المستخدمون كنظير متقدم لذاكرة Hyper-V الديناميكية. تشمل تقنيات إدارة ذاكرة VMware مشاركة الصفحات الشفافة، والتضخيم الذاكري، والضغط على الذاكرة، وتبديل الذاكرة.

المتطلبات والقيود

هناك متطلبات وقيود لإضافة vCPUs (وحدات المعالجة المركزية الظاهرية) والذاكرة إلى آلات الظاهرية الجارية:

  • يجب أن يدعم نظام التشغيل الضيف (OS) إضافة الأجهزة الساخنة.
  • توافق أجهزة الظاهرة الظاهرية (إصدار الأجهزة الظاهرية) هو 7 أو أعلى.
  • أدوات VMware يجب أن تكون مثبتة على نظام التشغيل الضيف.
  • يجب ألا يكون الاعتماد على التحمل ممكَّنًا لآلة الظاهرية.
  • يجب أن يكون الجهاز الظاهر متوقفًا لتمكين ميزة الإضافة الساخنة.
  • A VMware vSphere Advanced, Enterprise, or Enterprise Plus license must be used. VMware vSphere Enterprise Plus supports both CPU hot add and memory hot add. Refer to the VMware licensing guide to check available functionality for other editions and guest OSs.

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

الأنظمة الضيف التي تدعم الإضافة الساخنة هي Windows Server 2003 والأحدث، و Linux باستخدام النواة 3.8 وما فوق. تدعم الإصدارات الأعلى من Windows Server كل من إضافة الوحدة المعالجة المركزية والذاكرة بشكل ساخن. بعض الإصدارات الأدنى من Windows Server تدعم إضافة الذاكرة فقط.

نظام التشغيل الضيف ترخيص / طبعة إضافة الذاكرة الساخنة إضافة الـ CPU الساخنة
ويندوز سيرفر 2003 32 بت / 64 بت قياسي، مؤسسة نعم لا
ويندوز سيرفر 2008 32 بت قياسي، مؤسسة، مركز البيانات نعم لا
ويندوز سيرفر 2008 64 بت قياسي، مؤسسة نعم لا
ويندوز سيرفر 2008 64 بت مركز البيانات نعم نعم
ويندوز سيرفر 2008 R2 قياسي، مؤسسة نعم لا
ويندوز سيرفر 2008 R2 مركز البيانات نعم نعم
ويندوز سيرفر 2012 قياسي، مركز البيانات نعم نعم
ويندوز سيرفر 2012 R2 قياسي، مركز البيانات نعم نعم
ويندوز سيرفر 2016 قياسي، مركز البيانات نعم نعم
ويندوز سيرفر 2019 قياسي، مركز البيانات نعم نعم

مزايا وعيوب إضافة VMware Hot Add

VMware Hot Add هي ميزة مفيدة في العديد من الحالات. ومع ذلك، يجب ملاحظة أن هناك عيوب في استخدام هذه الميزة عندما لا يكون الإضافة الساخنة ضرورية حقًا. تكون VMware Hot Add معطلة بشكل افتراضي لأسباب مختلفة. لنتعرف على السبب.

VMware vCPU Hot Add و vNUMA

عند تمكين VMware Hot Add ، يتم تعطيل vNUMA تلقائيًا للآلة الظاهرية. بشكل افتراضي، يتم تمكين vNUMA لجميع الآلات الظاهرية التي تحتوي على 8 وحدات معالجة مركزية أو أكثر لتحسين الأداء. لنلقي نظرة أقرب على مفهوم NUMA و vNUMA.

ما هو NUMA؟

NUMA (الوصول غير المتجانس للذاكرة) هي البنية المعمارية لأنظمة المعالج المتعدد التي تسمح للوحدات المعالجة المركزية بمشاركة الذاكرة محليًا. يعتمد الوقت المستغرق للوصول إلى الذاكرة بواسطة وحدة المعالجة المركزية على موقع الذاكرة على اللوحة الأم. لكل معالج أولوية لاستخدام “ذاكرته المحلية” بدلاً من استخدام الذاكرة المثبتة في الفتحات بالقرب من معالج آخر. بعبارة أخرى، NUMA هي طريقة تحدد كيفية تفاعل معالج واحد مع وحدات الذاكرة التابعة لمعالج آخر. تعتبر أنظمة NUMA منصات تحتوي على أكثر من حافلة نظام حيث يمكن لكل معالج الوصول إلى كل الذاكرة على اللوحة الأم. يسمى المعالج الذي يحتوي على ذاكرة مثبتة في الفتحات بالقرب من هذا المعالج بـ عقدة NUMA.

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

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

ما هو vNUMA؟

الـ NUMA الافتراضي (vNUMA) هو طريقة تحسين في VMware vSphere. يضمن أداء الآليات الافتراضية الكبيرة بشكل مثالي من خلال مراعاة توبولوجيا NUMA وتجنب عقبات عرض الذاكرة. يتم عرض توبولوجيا NUMA الفعلية لنظام التشغيل الضيف باستخدام vNUMA. نتيجة لذلك، تعتمد توبولوجيا NUMA الافتراضية على توبولوجيا NUMA للعتاد الفعلي الذي يستخدمه مضيف ESXi. يمكن لوحدات المعالجة المركزية الافتراضية للآلية الافتراضية جدولة الوصول إلى الذاكرة الموجودة على نفس عقد NUMA.

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

ماذا يحدث عند تعطيل vNUMA؟

عند تمكين الإضافة الساخنة وتعطيل vNUMA، لا تدرك الجهاز الظاهري عقد NUMA الأساسية على مضيف ESXi وتزيد من الوصول إلى الذاكرة على عقد NUMA البعيدة. جدولة معالج/ذاكرة نظام التشغيل الضيف ليست مثلى. نتيجة لذلك، تتدهور أداء الجهاز الظاهري. يلاحظ تدهور الأداء بوضوح في الجهاز الظاهري الواسع مع زيادة الخيوط بواسطة التطبيق. على سبيل المثال، إذا قمت بتمكين الإضافة الساخنة على جهاز ظاهري كان نظام التشغيل الضيف الخاص به يستخدم عقدي NUMA، فإن هذا النظام الضيف يمكن أن يكتشف عقد NUMA واحد فقط بعد ذلك لأن البنية التحتية المثلى لـ vNUMA لم تُنشأ.

قم بتمكين VMware Hot Add فقط إذا كنت تتوقع استخدام هذه الميزة أثناء تشغيل الجهاز الظاهري. وإلا، فمن الأفضل تعطيل Hot Add للجهزة الظاهرية التي تمتد عبر أكثر من عقد NUMA واحد. إذا لم تكن متأكدًا مما إذا كنت بحاجة إلى إضافة ساخنة للمعالج والذاكرة، يمكنك توفير موارد المعالج والذاكرة أكثر للجهاز الظاهري من البداية.

قيود إضافة VMware Hot

لا يمكن الإضافة الساخنة

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

قيود توسع الذاكرة

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

لديك أيضًا قيد على الآليات الافتراضية التي تحتوي على 3 غيغابايت من الذاكرة (بالضبط 3072 ميغابايت) أو أقل. قد تحصل على خطأ أو لا يمكن لنظام التشغيل الضيف (لينكس 64 بت وويندوز 32 بت) تحديد الذاكرة المضافة. الحل هو إيقاف تشغيل الآلية الافتراضية، ثم زيادة كمية الذاكرة إلى أكثر من 3072 ميغابايت. بعد ذلك يمكنك تشغيل الآلية الافتراضية واستخدام إضافة الذاكرة الساخنة في VMware.

كيفية تكوين إضافة الذاكرة الساخنة في VMware

هناك طرق متعددة لتمكين إضافة معالجات vCPUs الساخنة وإضافة الذاكرة الساخنة في VMware. يمكنك استخدام واجهة المستخدم الرسومية أو واجهة سطر الأوامر.

تمكين الإضافة الساخنة في vCenter

لتمكين خيار VMware Hot Add باستخدام vCenter، قم بتسجيل الدخول إلى عميل VMware vSphere وقم باتباع الخطوات التالية:

  1. انتقل إلى Hosts and Clusters.
  2. حدد الآلة الافتراضية المطلوبة في اللوحة التنقل. يجب أن تكون الآلية الافتراضية متوقفة.
  3. انقر فوق أيقونة Edit Settings. بديلاً عن ذلك، يمكنك نقر بزر الماوس الأيمن فوق اسم الآلية الافتراضية وفي القائمة التي تفتح، اضغط على Edit Settings.

اتبع الخطوات التالية لتمكين الإضافة الساخنة للمعالجات:

  1. في نافذة Edit Settings، قم بتوسيع إعدادات المعالج.
  2. في خط CPU Hot Plug، حدد مربع الاختيار Enable CPU Hot Add.

اتبع الخطوات التالية لتمكين إضافة الذاكرة الساخنة:

  1. في نافذة Edit Settings، قم بتوسيع إعدادات الذاكرة.
  2. في خط الذاكرة الساخنة، حدد مربع الاختيار تمكين.
  3. انقر فوق موافق لحفظ إعدادات الآلة الظاهرية وإغلاق النافذة.

الآن يمكنك بدء التشغيل الآلي وإضافة VMware vCPUs والذاكرة إلى الآلة الظاهرية.

تمكين VMware Hot Add في PowerCLI

PowerCLI لـ VMware هو أداة السطر الأمرية القوية لإدارة VMware vSphere. لنلق نظرة على كيفية تمكين VMware Hot Add في PowerCLI.

  1. قم بالاتصال بمركز التحكم الخاص بك أو مضيف ESXi باستخدام الأمر التالي وإدخال عنوان IP المناسب (192.168.101.205 في هذا المثال) أو اسم المضيف:

    Connect-VIServer 192.168.101.205

  2. أدخل بيانات الاعتماد عند الطلب.
  3. قائمة الآلات الظاهرية على مضيف ESXi الذي قمت بالاتصال به.

    Get-VM

  4. تأكد من أن الآلة الظاهرية التي تريد تمكين Hot Add لها متوقفة.
  5. تشغيل هذه الأوامر لتمكين إضافة الذاكرة الساخنة وإضافة الوحدة المعالجة المركزية الساخنة للجهاز الافتراضي المحدد.

    $VM = Get-VM Windows-VM
    $spec = New-Object VMware.Vim.VirtualMachineConfigSpec
    $spec.memoryHotAddEnabled = $true
    $spec.cpuHotAddEnabled = $true
    $VM.ExtensionData.ReconfigVM_Task($spec)
     
    حيث:
    Windows-VM
    هو اسم الجهاز الافتراضي المطلوب
    $spec.memoryHotAddEnabled = $true هو الأمر لتمكين إضافة الذاكرة الساخنة
    $spec.cpuHotAddEnabled = $true هو الأمر لتمكين إضافة الوحدة المعالجة المركزية الساخنة

  6. استدعِ نظرة الـ VM للتحقق مما إذا كانت ميزات إضافة الـ CPU وإضافة الذاكرة مفعلة:

    Get-VM | Get-View | Select Name, `
    @{N=”CpuHotAddEnabled”;E={$_.Config.CpuHotAddEnabled}}, `
    @{N=”CpuHotRemoveEnabled”;E={$_.Config.CpuHotRemoveEnabled}}, `
    @{N=”MemoryHotAddEnabled”;E={$_.Config.MemoryHotAddEnabled}}

تمكين الإضافة الساخنة في ملف تكوين الـ VM

طريقة أخرى لتمكين VMware Hot Add هي استخدام واجهة الأوامر سطر الأوامر ESXi وتعديل ملف تكوين VMX للآلة الافتراضية. افتح جر shell ESXi أو الاتصال بمضاف ESXi عبر SSH. ثم قم بتشغيل الأوامر التالية في سطر الأوامر لتمكين Hot Add:

  1. انتقل إلى دليل الآلة الافتراضية:
    cd /vmfs/volumes/datastore10a/Windows-VM/
  2. تأكد من أن الآلة الافتراضية مطفأة.
  3. افتح ملف تكوين VMX الآلة الافتراضية في محرر نص:
    vi Windows-VM.vmx
  4. أضف هذا السطر إلى ملف التكوين لتمكين vCPU Hot Add:
    vcpu.hotadd = “TRUE”
  5. أضف هذا السطر إلى ملف التكوين لتمكين إضافة الذاكرة Hot Add:
    mem.hotadd = “TRUE”
  6. احفظ ملف تكوين VMX وأغلق محرر النص.

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

devices.hotplug = “false”

لا يؤثر هذا الإعداد على تكوين CPU hotplug وإضافة الذاكرة الساخنة للآلة الافتراضية.

تعديل تكوين VMX في VMware vSphere Client

يمكنك أيضًا تعديل تكوين VMX في VMware vSphere Client:

  1. حدد الآلة الافتراضية المطلوبة في VMware vSphere Client.
  2. أطفئ الآلة الافتراضية إذا كانت تعمل.
  3. انقر تحرير الإعدادات.
  4. حدد علامة خيارات الآلة الظاهرية في نافذة إعدادات الآلة الظاهرية.
  5. انقر فوق متقدم لتوسيع الخيارات وانقر فوق تحرير التكوين.
  6. انقر فوق إضافة معلمات التكوين في نافذة معلمات التكوين.
  7. في القسم إضافة معلمات تكوين جديدة، أدخل القيم لتمكين إضافة الذاكرة الساخنة لـ VMware و vCPUs لـ VMware على التوالي.
     
    الاسم: mem.hotadd       القيمة: صحيح
    الاسم: vcpu.hotadd        القيمة: صحيح
  8. اضغط على موافق لحفظ الإعدادات وإغلاق النافذة.

الاستنتاج

فعّل VMware Hot Add فقط عندما تتوقع استخدام هذه الميزة لإضافة المعالجات الظاهرية والذاكرة إلى جهاز الكمبيوتر الظاهري أثناء تشغيله. إذا قمت بتمكين VMware Hot Add ولم تستخدم هذه الميزة، فإن الأداء قد يتدهور للأجهزة الظاهرية الكبيرة، حيث أن التوبولوجيا مع عدة عقد NUMA لن تُستخدم. استخدم مراقبة أداء الأجهزة الظاهرية VMware VM لمراقبة أداء الجهاز الظاهري واستخدام الموارد في vSphere. يساعدك هذا النهج في تحديد ما إذا كان الجهاز الظاهري بحاجة إلى تمكين ميزة Hot Add أم لا.

Source:
https://www.nakivo.com/blog/vmware-vsphere-resources-hotadd-hotplug-explained/