تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية

تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية

إذا كنت تدير بنية أساسية افتراضية تعتمد على VMware vSphere (أو أي مكدس تكنولوجي آخر) ، فغالبًا ما تسمع شكاوى من المستخدمين: "الجهاز الظاهري بطيء!". في هذه السلسلة من المقالات ، سأحلل مقاييس الأداء وأخبرك بماذا ولماذا "يبطئ" وكيفية التأكد من أنه لا "يتباطأ".

سأفكر في الجوانب التالية لأداء الآلة الافتراضية:

  • وحدة المعالجة المركزية،
  • الرامات " الذاكرة العشوائية في الهواتف والحواسيب،
  • القرص
  • شبكة الاتصال.

سأبدأ مع وحدة المعالجة المركزية.

لتحليل الأداء نحتاج:

  • عدادات أداء vCenter - عدادات الأداء ، الرسوم البيانية التي يمكن عرضها من خلال vSphere Client. تتوفر المعلومات حول هذه العدادات في أي إصدار من العميل (العميل "السميك" في C # ، وعميل الويب في Flex ، وعميل الويب في HTML5). في هذه المقالات ، سنستخدم لقطات شاشة من عميل C # ، فقط لأنها تبدو أفضل في الصورة المصغرة :)
  • إسكتوب هي أداة تعمل من سطر الأوامر ESXi. بمساعدتها ، يمكنك الحصول على قيم عدادات الأداء في الوقت الفعلي أو تحميل هذه القيم لفترة معينة إلى ملف .csv لمزيد من التحليل. بعد ذلك ، سأخبرك بالمزيد حول هذه الأداة وأقدم بعض الروابط المفيدة للوثائق والمقالات حول هذا الموضوع.

بعض نظرية

تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية

في ESXi ، تكون هناك عملية منفصلة مسؤولة عن تشغيل كل vCPU (نواة الجهاز الظاهري) - عالم في مصطلحات VMware. هناك أيضًا عمليات خدمة ، ولكن من وجهة نظر تحليل أداء VM ، فهي أقل إثارة للاهتمام.

يمكن أن تكون العملية في ESXi في واحدة من أربع حالات:

  • يجري العملية تقوم ببعض الأعمال المفيدة.
  • - لا تؤدي العملية أي عمل (خامل) أو تنتظر الإدخال / الإخراج.
  • كوستوب - حالة تحدث في الأجهزة الافتراضية متعددة النواة. يحدث ذلك عندما يتعذر على جدولة وحدة المعالجة المركزية الخاصة بـ Hypervisor (ESXi CPU Scheduler) جدولة جميع نوى الجهاز الظاهري النشطة للتشغيل على النوى الفعلية للخادم في نفس الوقت. في العالم المادي ، تعمل جميع نوى المعالج بالتوازي ، ويتوقع نظام التشغيل الضيف داخل الجهاز الظاهري سلوكًا مشابهًا ، لذلك يتعين على برنامج Hypervisor إبطاء نوى الجهاز الظاهري ، والتي لديها الفرصة لإنهاء الدورة بشكل أسرع. في الإصدارات الحديثة من ESXi ، يستخدم مجدول وحدة المعالجة المركزية آلية تسمى الجدولة المشتركة المريحة: يقوم برنامج Hypervisor بحساب الفجوة بين نواة الجهاز الظاهري "الأسرع" و "الأبطأ" (الانحراف). إذا تجاوزت الفجوة حدًا معينًا ، فإن النواة "السريعة" تدخل حالة التكلفة. إذا كانت نوى الجهاز الظاهري تقضي الكثير من الوقت في هذه الحالة ، فقد يتسبب ذلك في حدوث مشكلات في الأداء.
  • استعداد - تدخل العملية هذه الحالة عندما يتعذر على برنامج Hypervisor تخصيص الموارد لتنفيذه. يمكن أن تتسبب قيم الاستعداد العالية في حدوث مشكلات في أداء الجهاز الظاهري.

عدادات أداء وحدة المعالجة المركزية VM الرئيسية

استخدام المعالج، ٪. يظهر النسبة المئوية لاستخدام وحدة المعالجة المركزية لفترة معينة.

تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية

كيف تحلل؟ إذا كان الجهاز الظاهري يستخدم باستمرار وحدة المعالجة المركزية بنسبة 90٪ أو كانت هناك ارتفاعات تصل إلى 100٪ ، فسنواجه مشكلة. يمكن التعبير عن المشكلات ليس فقط في التشغيل "البطيء" للتطبيق داخل الجهاز الظاهري ، ولكن أيضًا في عدم إمكانية الوصول إلى الجهاز الظاهري عبر الشبكة. إذا أظهر نظام المراقبة أن الجهاز الظاهري يسقط بشكل دوري ، فاحرص على الانتباه إلى القمم على الرسم البياني لاستخدام وحدة المعالجة المركزية.

يوجد منبه قياسي يوضح حمل وحدة المعالجة المركزية للجهاز الظاهري:

تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية

ماذا تفعل؟ إذا كان استخدام الجهاز الظاهري خارج نطاق استخدام وحدة المعالجة المركزية باستمرار ، فيمكنك التفكير في زيادة عدد وحدات المعالجة المركزية الافتراضية (للأسف ، هذا لا يساعد دائمًا) أو نقل الجهاز الظاهري إلى خادم به معالجات أكثر كفاءة.

استخدام وحدة المعالجة المركزية بالميجاهيرتز

في الرسوم البيانية الموجودة على vCenter ، يمكن عرض الاستخدام في٪ فقط للجهاز الظاهري بالكامل ، ولا توجد رسوم بيانية للنوى الفردية (في Esxtop ، توجد قيم في٪ للنوى). لكل نواة ، يمكنك مشاهدة الاستخدام بالميغاهرتز.

كيف تحلل؟ يحدث أن التطبيق لم يتم تحسينه للبنية متعددة النواة: فهو يستخدم نواة واحدة فقط بنسبة 100٪ ، والباقي خامل بدون تحميل. على سبيل المثال ، مع إعدادات النسخ الاحتياطي الافتراضية ، يبدأ MS SQL العملية على نواة واحدة فقط. نتيجة لذلك ، يتباطأ النسخ الاحتياطي ليس بسبب بطء سرعة الأقراص (هذا ما اشتكى منه المستخدم في البداية) ، ولكن لأن المعالج لا يمكنه التعامل. تم حل المشكلة عن طريق تغيير المعلمات: بدأ النسخ الاحتياطي في العمل بالتوازي في عدة ملفات (على التوالي ، في عدة عمليات).

تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية
مثال على التحميل غير المتكافئ للنوى.

هناك أيضًا حالة (كما في الرسم البياني أعلاه) عندما يتم تحميل النوى بشكل غير متساو وبعضها يحتوي على قمم 100٪. كما هو الحال مع تحميل نواة واحدة فقط ، لن يعمل إنذار استخدام وحدة المعالجة المركزية (إنه موجود في جميع أنحاء الجهاز الظاهري) ، ولكن ستكون هناك مشاكل في الأداء.

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

يمكنك أيضًا محاولة التحقق من إعدادات الطاقة في BIOS الخاص بالخادم. يقوم العديد من المسؤولين بتمكين وضع الأداء العالي في BIOS وبالتالي تعطيل تقنيات توفير الطاقة في حالات C و P. تستخدم معالجات Intel الحديثة تقنية Turbo Boost ، التي تزيد من تكرار نوى المعالج الفردية على حساب النوى الأخرى. لكنها لا تعمل إلا عند تمكين تقنيات توفير الطاقة. إذا قمنا بتعطيلها ، فلن يتمكن المعالج من تقليل استهلاك الطاقة للأنوية التي لم يتم تحميلها.

توصي VMware بعدم تعطيل تقنيات توفير الطاقة على الخوادم ، ولكن اختيار الأوضاع التي توفر أقصى قدر من إدارة الطاقة لبرنامج Hypervisor. في نفس الوقت ، في إعدادات استهلاك الطاقة لبرنامج Hypervisor ، تحتاج إلى تحديد High Performance (أداء عالٍ).

إذا كان لديك أجهزة ظاهرية فردية (أو نوى VM) في بنيتك الأساسية تتطلب زيادة تردد وحدة المعالجة المركزية ، فإن تكوين استهلاك الطاقة بشكل صحيح يمكن أن يحسن أداءها بشكل كبير.

تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية

وحدة المعالجة المركزية جاهزة (الجاهزية)

إذا كان VM core (vCPU) في حالة الاستعداد ، فإنه لا يؤدي عملاً مفيدًا. تحدث هذه الحالة عندما لا يجد برنامج Hypervisor نواة مادية مجانية يمكن تعيين عملية وحدة المعالجة المركزية الافتراضية الخاصة بالجهاز الظاهري لها.

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

في vCenter ، يمكنك رؤية عدادات ذات صلة بـ CPU Ready:

  • الاستعداد،
  • جاهز.

يمكن عرض قيم كلا العدادات لكل من VM بأكمله وللنواة الفردية.
يُظهر الجاهزية القيمة فورًا كنسبة مئوية ، ولكن في الوقت الفعلي فقط (بيانات الساعة الأخيرة ، فاصل القياس 20 ثانية). من الأفضل استخدام هذا العداد فقط للعثور على مشاكل في المطاردة الساخنة.

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

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

(قيمة تجميع وحدة المعالجة المركزية الجاهزة / (فترة التحديث الافتراضية للمخطط بالثواني * 1000)) * 100 = وحدة المعالجة المركزية جاهزة٪

على سبيل المثال ، بالنسبة إلى الجهاز الظاهري في الرسم البياني أدناه ، ستكون قيمة الذروة الجاهزة للجهاز الظاهري بالكامل هي:

تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية

تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية

عند حساب القيمة الجاهزة كنسبة مئوية ، يجب الانتباه إلى نقطتين:

  • قيمة Ready عبر VM بالكامل هي مجموع Ready عبر النوى.
  • الفاصل الزمني للقياس. في الوقت الفعلي ، هذه 20 ثانية ، وعلى سبيل المثال ، على الرسوم البيانية اليومية ، هذه 300 ثانية.

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

دعونا نحسب جاهزًا بناءً على البيانات الواردة في الرسم البياني أدناه. (324474/(20*1000))*100 = 1622% للجهاز الافتراضي بأكمله. إذا نظرت إلى النوى، فالأمر ليس مخيفًا جدًا: 1622/64 = 25% لكل نواة. في هذه الحالة، من السهل جدًا اكتشاف المشكلة: قيمة الجاهزية غير واقعية. ولكن إذا كنا نتحدث عن 10-20٪ للجهاز الظاهري بأكمله مع عدة مراكز، فقد تكون القيمة لكل نواة ضمن النطاق الطبيعي.

تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية

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

شارك في التوقف

كيف تحلل؟ يحتوي هذا العداد أيضًا على نوع التجميع ويتم تحويله إلى نسب مئوية بنفس طريقة الاستعداد:

(قيمة التجميع المشترك لوحدة المعالجة المركزية / (الفاصل الزمني الافتراضي لتحديث الرسم البياني بالثواني * 1000)) * 100 = توقف وحدة المعالجة المركزية٪

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

تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية
في هذه الحالة ، من الواضح أن الحمل غير طبيعي :)

ماذا تفعل؟ إذا كان هناك العديد من أجهزة VM التي تحتوي على عدد كبير من النوى تعمل على نفس برنامج Hypervisor وكان هناك زيادة في الاشتراك بواسطة وحدة المعالجة المركزية (CPU) ، فقد يزيد عداد التوقف المشترك ، مما سيؤدي إلى مشاكل في أداء أجهزة VM هذه.

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

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

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

مقاييس وحدة المعالجة المركزية المفيدة الأخرى

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

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

- كم من الوقت (مللي ثانية) خلال فترة القياس كانت وحدة المعالجة المركزية الافتراضية في حالة الانتظار. نظرًا لتضمين IDLE في هذا العداد ، لا تشير قيم الانتظار العالية أيضًا إلى وجود مشكلة. ولكن إذا كان Wait IDLE منخفضًا عندما يكون مرتفعًا ، فإن VM كان ينتظر اكتمال عمليات الإدخال / الإخراج ، وهذا بدوره قد يشير إلى مشكلة في أداء القرص الصلب أو أي أجهزة افتراضية لجهاز VM.

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

تبادل الانتظار - كم من الوقت خلال فترة القياس انتظرت وحدة المعالجة المركزية الافتراضية (vCPU) لإجراء عملية باستخدام VMkernel Swap. إذا كانت قيمة هذا العداد أعلى من الصفر ، فمن المؤكد أن الجهاز الظاهري يعاني من مشاكل في الأداء. سنتحدث أكثر عن SWAP في المقالة حول عدادات ذاكرة الوصول العشوائي.

إسكتوب

إذا كانت عدادات الأداء في vCenter جيدة لتحليل البيانات التاريخية ، فمن الأفضل إجراء تحليل للمشكلة عبر الإنترنت في ESXTOP. هنا ، يتم تقديم جميع القيم في شكل نهائي (لا حاجة لترجمة أي شيء) ، والحد الأدنى لفترة القياس هو ثانيتان.
يتم استدعاء شاشة ESXTOP على وحدة المعالجة المركزية بالمفتاح "c" وتبدو كما يلي:

تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية

للراحة ، يمكنك ترك عمليات الآلة الافتراضية فقط بالضغط على Shift-V.
لعرض مقاييس نوى VM فردية ، اضغط على "e" واكتب معرّف GID للجهاز الظاهري الذي تهتم به (30919 في لقطة الشاشة أدناه):

تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية

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

NWLD (عدد العوالم) هو عدد العمليات في المجموعة. لتوسيع المجموعة والاطلاع على المقاييس لكل عملية (على سبيل المثال ، لكل نواة من جهاز افتراضي متعدد النواة) ، اضغط على "e". إذا كان هناك أكثر من عملية واحدة في المجموعة ، فإن مقاييس المجموعة تساوي مجموع المقاييس للعمليات الفردية.

٪مستخدم - عدد دورات وحدة المعالجة المركزية للخادم العملية أو مجموعة العمليات التي تستخدمها.

٪يجري - كم من الوقت خلال فترة القياس كانت العملية في حالة RUN ، أي قام بعمل مفيد. يختلف عن٪ USED من حيث أنه لا يأخذ في الاعتبار الترابط الفائق وقياس التردد والوقت الذي يقضيه في مهام النظام (٪ SYS).

٪ SYS - الوقت المستغرق في مهام النظام ، على سبيل المثال: معالجة المقاطعة ، I / O ، والشبكات ، إلخ. يمكن أن تكون القيمة عالية إذا كان الجهاز الظاهري يحتوي على الكثير من I / O.

٪ OVRLP - مقدار الوقت الذي يقضيه النواة المادية التي تعمل فيها عملية الأجهزة الظاهرية في مهام العمليات الأخرى.

ترتبط هذه المقاييس ببعضها البعض على النحو التالي:

٪ USED =٪ RUN +٪ SYS -٪ OVRLP.

عادةً ما يكون مقياس٪ USED أكثر إفادة.

٪انتظر - كم من الوقت خلال فترة القياس كانت العملية في حالة الانتظار. يشمل IDLE.

٪عاطل - كم من الوقت خلال فترة القياس كانت العملية في حالة الخمول.

٪ SWPWT - كم من الوقت خلال فترة القياس انتظرت وحدة المعالجة المركزية الافتراضية (vCPU) لإجراء عملية باستخدام VMkernel Swap.

٪ VMWAIT - كم من الوقت خلال فترة القياس كانت وحدة المعالجة المركزية الافتراضية في حالة انتظار حدث (عادةً I / O). لا يوجد عداد مماثل في vCenter. تشير القيم العالية إلى مشاكل في الإدخال / الإخراج على الجهاز الظاهري.

٪ الانتظار =٪ VMWAIT +٪ الخمول +٪ SWPWT.

إذا كان الجهاز الظاهري لا يستخدم VMkernel Swap ، فعند تحليل مشاكل الأداء ، يُنصح بالاطلاع على٪ VMWAIT ، لأن هذا المقياس لا يأخذ في الاعتبار الوقت الذي لم يفعل فيه الجهاز الظاهري شيئًا (٪ IDLE).

٪ RDY - كم من الوقت خلال فترة القياس كانت العملية في حالة الاستعداد.

٪ CSTP - كم من الوقت خلال فترة القياس كانت العملية في حالة التوقف.

٪ MLMTD - كم من الوقت خلال فترة القياس كانت وحدة المعالجة المركزية الافتراضية في حالة الاستعداد بسبب حد الموارد المحدد.

٪ WAIT +٪ RDY +٪ CSTP +٪ RUN = 100٪ - جوهر VM دائمًا في إحدى هذه الحالات الأربع.

وحدة المعالجة المركزية على برنامج Hypervisor

يحتوي vCenter أيضًا على عدادات أداء وحدة المعالجة المركزية لـ Hypervisor ، لكنها ليست مثيرة للاهتمام - إنها مجرد مجموع العدادات لجميع أجهزة VM على الخادم.
الطريقة الأكثر ملاءمة لعرض حالة وحدة المعالجة المركزية على الخادم هي في علامة تبويب الملخص:

تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية

بالنسبة للخادم ، وكذلك للجهاز الظاهري ، هناك منبه قياسي:

تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية

عندما يكون الحمل على وحدة المعالجة المركزية للخادم مرتفعًا ، تبدأ الأجهزة الظاهرية التي تعمل عليها في مواجهة مشكلات الأداء.

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

UTIL الأساسية (٪) - تحميل نواة الخادم المادي. يوضح هذا العداد مقدار الوقت الذي استغرقته النواة في العمل أثناء فترة القياس.

PCPU UTIL (٪) - إذا تم تمكين الترابط الفائق ، فهناك نوعان من الخيوط (PCPU) لكل نواة مادية. يوضح هذا المقياس المدة التي استغرقها كل مؤشر ترابط في العمل.

يستخدم PCPU (٪) - هو نفسه PCPU UTIL (٪) ، ولكنه يأخذ في الاعتبار مقياس التردد (إما خفض التردد الأساسي لتوفير الطاقة ، أو زيادة التردد الأساسي بسبب تقنية Turbo Boost) والترابط الفائق.

PCPU_USED٪ = PCPU_UTIL٪ * الساعة الأساسية الفعالة / الساعة الأساسية الاسمية.

تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية
في لقطة الشاشة هذه ، بالنسبة لبعض النوى ، بسبب Turbo Boost ، تكون القيمة المستخدمة أكبر من 100٪ ، نظرًا لأن التردد الأساسي أعلى من التردد الاسمي.

بضع كلمات حول كيفية أخذ الترابط الفائق في الاعتبار. إذا تم تنفيذ العمليات بنسبة 100٪ من الوقت على كلا الخيطين من النواة المادية للخادم ، بينما يعمل النواة بالتردد الاسمي ، إذن:

  • سيكون CORE UTIL للنواة الأساسية 100٪ ،
  • سيكون PCPU UTIL لكلا الخيوط 100٪ ،
  • ستكون PCPU المستخدمة لكلا الخيوط 50٪.

إذا لم يعمل كلا الخيطين بنسبة 100٪ من الوقت خلال فترة القياس ، فعند تلك الفترات التي تعمل فيها الخيوط بالتوازي ، يتم خفض PCPU المستخدم للنواة إلى النصف.

يحتوي ESXTOP أيضًا على شاشة بها خيارات طاقة وحدة المعالجة المركزية للخادم. يمكنك هنا معرفة ما إذا كان الخادم يستخدم تقنيات موفرة للطاقة: حالات C وحالات P. تم استدعاؤه بواسطة المفتاح "p":

تحليل أداء الآلة الافتراضية في برنامج VMware vSphere. الجزء 1: وحدة المعالجة المركزية

مشاكل أداء وحدة المعالجة المركزية الشائعة

أخيرًا ، سأستعرض الأسباب النموذجية لمشاكل أداء وحدة المعالجة المركزية VM وأعطي نصائح قصيرة لحلها:

لا توجد ساعة أساسية كافية. إذا لم يكن من الممكن ترقية VM إلى نوى أكثر قوة ، فيمكنك محاولة تغيير إعدادات الطاقة بحيث يعمل Turbo Boost بكفاءة أكبر.

تحجيم جهاز VM خاطئ (عدد كبير جدًا / عدد قليل من النوى). إذا وضعت القليل من النوى ، فسيكون هناك حمل كبير على وحدة المعالجة المركزية للجهاز الظاهري. إذا كان هناك الكثير ، فاحصل على وقف مشترك مرتفع.

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

طبولوجيا NUMA خاطئة على أجهزة ظاهرية كبيرة. يجب أن يتطابق هيكل NUMA الذي يراه الجهاز الظاهري (vNUMA) مع طبولوجيا NUMA للخادم (pNUMA). حول التشخيص والحلول الممكنة لهذه المشكلة مكتوب ، على سبيل المثال ، في الكتاب "VMware vSphere 6.5 Host Resources Deep Dive". إذا كنت لا تريد التعمق ولم يكن لديك قيود ترخيص على نظام التشغيل المثبت على الجهاز الظاهري ، فقم بإنشاء العديد من المقابس الافتراضية على الجهاز الظاهري لنواة واحدة. لن تخسر الكثير 🙂

هذا كل شيء عن وحدة المعالجة المركزية بالنسبة لي. اسال اسئلة. في الجزء التالي سأتحدث عن ذاكرة الوصول العشوائي.

وصلات مفيدةhttp://virtual-red-dot.info/vm-cpu-counters-vsphere/
https://kb.vmware.com/kb/1017926
http://www.yellow-bricks.com/2012/07/17/why-is-wait-so-high/
https://communities.vmware.com/docs/DOC-9279
https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpaper/performance/whats-new-vsphere65-perf.pdf
https://pages.rubrik.com/host-resources-deep-dive_request.html

المصدر: www.habr.com

إضافة تعليق