تتمتع الآلات الظاهرية في VMware vSphere بالعديد من المزايا. تعمل بموثوقية عالية مع أداء ممتاز إذا تم استخدام الأجهزة المناسبة وتطبيق التكوين البرمجي الصحيح. في بعض الأحيان يتم عرض حالة التجميع اللازم للآلة الظاهرية في عميل VMware vSphere، ويتعين على مسؤول النظام تصحيح هذا الخطأ. يشرح هذا المنشور على المدونة لماذا يتعين تجميع أقراص آلة VMware الظاهرية وكيف يمكن حل هذا الخطأ.
ما هو تجميع أقراص VMware؟
تجميع الأقراص الظاهرية هو عملية دمج ملفات الأقراص الظاهرية التي تم إنشاؤها بعد إجراء اللقطات الظاهرية للآلة الظاهرية. يمكنك بدء تجميع الأقراص عند الطلب لتجنب تدهور الأداء والمشاكل الأخرى. عندما تقوم بإجراء لقطة، يتم إنشاء أقراص دلتا ويتم كتابة التغييرات إلى القرص دلتا المناسب (القرص دلتا الأحدث بشكل افتراضي، حتى يتم اختيار إحدى اللقطات السابقة لاستعادة الآلة الظاهرية). نتيجة لذلك، يوجد بيانات متكررة في تخزين الآلة الظاهرية لأن كل قرص دلتا يحتوي على جميع التغييرات المقارنة بالحالة السابقة للقرص دلتا، ويبقى القرص الأصلي دون تغيير.
عندما يصبح سلسلة اللقطات وملفات الأقراص الظاهرية ذات الصلة كبيرة، يحدث تدهور في الأداء. عندما تقوم بتجميع أقراص VMware، يتم دمج البيانات من الأقراص الدلتا إلى قرص واحد، ولا يتبقى بيانات متكررة على متجر البيانات حيث توجد ملفات هذه الآلة الظاهرية. يتم تنظيف مساحة التخزين بعد تجميع ملفات أقراص الآلة الظاهرية. تذكر أن VMware توصي باستخدام لا يزيد عن 32 لقطة لكل آلة ظاهرية.
أسباب محتملة لخطأ تجميع أقراص VMware
تحتاج توحيد أقراص آلة افتراضية VMware الخطأ يظهر في علامة ملخص الآلة الافتراضية في عميل VMware vSphere (التقاط الشاشة أدناه). واحد من الأسباب الشائعة لهذه الرسالة هو حذف الصورة الفورية للآلة الافتراضية بطريقة غير صحيحة، مما يمكن أن يترك ملفات VMDK ذات الصلة بالصور الفورية وملفات السجل على مستودع البيانات (على سبيل المثال، بعد أدائك عملية الحذف الكلي أو الحذف لصور الآلة الافتراضية).
أسباب أكثر شيوعاً لحالة الحاجة إلى توحيد الآلة الافتراضية:
- عدم وجود مساحة كافية على مستودع بيانات VMFS لتوحيد صور الآلة الافتراضية وتوحيد ملفات الأقراص الافتراضية. إذا كان هناك أقل من 1 جيجابايت من المساحة الحرة على مستودع البيانات، فقد يحدث هذا الخطأ.
- أداء منخفض لنظام التخزين المرتبط بمضيف ESXi الذي يعمل عليه آلة افتراضية. إذا كان حجم الصورة الفورية كبيرًا أو تم إنهاء الوقت المحدد، فقد يفشل توحيد الصورة الفورية.
- مشاكل الاتصال بين مضيف ESXi ومركز vCenter.
- قفل ملفات الصورة الفورية بواسطة تطبيق طرف ثالث، على سبيل المثال، تطبيق النسخ الاحتياطي. يمكن أن يحدث هذا إذا لم ينتهِ تطبيق النسخ الاحتياطي من وظيفة النسخ الاحتياطي وقفل الصورة الفورية (يمكن لتطبيقات النسخ الاحتياطي إنشاء صورة فورية مؤقتة لآلة افتراضية عند تشغيل النسخ الاحتياطي). لا يمكن لتطبيقات النسخ الاحتياطي تثبيت القرص دون استخدام تقنيات الصورة الفورية لإنشاء نسخة احتياطية متسقة لآلة افتراضية قيد التشغيل.
بشكل أساسي، يجب استعادة تماثل ملفات الأقراص الافتراضية للآلة الافتراضية.
كيفية إصلاح الخطأ؟
لإصلاح الحالة التجميع الافتراضي للآلة الظاهرية مطلوب، انقر بزر الماوس الأيمن فوق اسم الآلة الظاهرية في عميل VMware vSphere وفي القائمة التي تظهر، انقر فوق لقطات > تجميع.
A confirmation message is displayed:
هذه العملية تجمع جميع سجلات إعادة القيد الزائدة على آلة الظاهرية الخاصة بك. هل أنت متأكد أنك تريد المتابعة؟
انقر فوق نعم لتأكيد وتجميع ملفات قرص الآلة الظاهرية.
ملاحظة: إذا كان هناك مخاوف من أن بعض البيانات يمكن أن تفقد أثناء تجميع قرص VMware، قم بإجراء نسخ احتياطية لآلة VMWare، على سبيل المثال، قم بنسخ جميع ملفات VM إلى مجلد آخر في مخزن البيانات ثم قم بإجراء تجميع قرص VMware.
انتظر حتى يكتمل تجميع القرص VMware وتم مسح السجلات. يمكنك رؤية تقدم المهمة في لوحة المهام في أسفل واجهة عميل VMware vSphere. إذا كانت الآلة الظاهرية قيد التشغيل، يمكن أن يتدهور أداء الآلة الظاهرية أثناء هذه العملية. الوقت اللازم لإنهاء هذه العملية يعتمد على حجم الآلة الظاهرية، وعدد اللقطات الفوتوغرافية، وحمل الآلة الظاهرية.
بعد انتهاء مهمة تجميع القرص VMware، يجب أن يختفي التحذير الذي يفيد بضرورة تجميع أقراص الآلة الظاهرية في VMware.
الأخطاء التي قد تحدث
في بعض الأحيان، قد تحدث خطأ آخر أثناء تجميع قرص VMware ويتم عرض رسالة الخطأ التالية:
غير قادر على الوصول إلى الملف لأنه مقفل. حدث خطأ أثناء تجميع الأقراص: فشل في قفل الملف. فشل التجميع لقرص العقدة ‘scsi0:0’.
الأقفال يمكن أيضًا أن تُنشأ عندما تستخدم تطبيقات النسخ الاحتياطي الخيار الساخن للقرص للنسخ الاحتياطي عند استخدام اللقطات الفورية. يُقصد بقفل ملف الآلة الظاهرية تجنب الكتابات المتزامنة إلى الملف من قبل عدة مضيفين ESXi.
حاول تنفيذ الإجراءات التالية لإصلاح هذا الخطأ.
- أعد تشغيل وكلاء الإدارة على خادم ESXi الذي تقع فيه الآلة الظاهرية. افتح شاشة ESXi أو قم بالاتصال بمضيف ESXi عبر SSH وقم بتشغيل الأمر بصلاحيات المسؤول:
services.sh restart
أو
/etc/init.d/hostd restart
/etc/init.d/vpxa restart
يمكنك أيضًا فتح واجهة التحكم المباشرة لـ ESXi، انتقل إلى خيارات استكشاف الأخطاء وإصلاحها، واختر إعادة تشغيل وكلاء الإدارة (اضغط Enter لتفعيل الخيار المطلوب، ثم اضغط F11 للتأكيد).
- تحقق من الملف المقفل باستخدام الأمر التالي:
vmfsfilelockinfo -p /vmfs/volumes/vm_datastore/vm_name/vm_name.vmx
- تحقق من ملف سجل hostd إذا كنت بحاجة لتحديد المسار على مخزن البيانات حيث تقع ملفات الآلة الظاهرية.
cat /var/log/hostd.log |grep -i vm_name
- انتقل إلى دليل الآلة الظاهرية على مخزن البيانات عندما تعرف موقع ملفات الآلة الظاهرية:
cd /vmfs/volumes/datastore_name/vm_name
- قم بتشغيل الأمر لعرض مضيفي ESXi الذين يقومون بقفل ملفات الآلة الظاهرية:
for i in `ls`; do vmfsfilelockinfo -p $i ;done|grep 'is locked in\|Host owning the lock\|Total time taken' | sed 's|Host owning the lock on file is||g'|sed 's|Total time|---|g' | awk '{print $1}' |uniq
- أعد تشغيل وكلاء إدارة ESXi، بما في ذلك hostd و vpxa كما هو موضح أعلاه، أو قم بتشغيل هذه الأوامر على مضيف ESXi الذي يقوم بقفل ملفات الآلة الظاهرة:
/etc/init.d/hostd restart
/etc/init.d/vpxa restart
طريقة أخرى لفتح ملفات الآلة الظاهرة
كبديل، جرب هذه الخطوات لإصلاح حدث خطأ أثناء توحيد الأقراص: فشل في قفل الملف.
- أوقف تشغيل الآلة الظاهرة.
- قم بإنشاء نسخة جديدة للقرص الظاهر.
- احذف جميع النسخ الظاهرة. انقر بزر الماوس الأيمن على اسم الآلة الظاهرة في عميل vSphere، حدد النسخ الظاهرة، وانقر على حذف جميع النسخ الظاهرة.
- انسخ الآلة الظاهرة أو قم بترحيلها إلى مضيف ESXi آخر باستخدام vMotion إذا لم يتم حل الخطأ بعد.
- حاول توحيد النسخ مرة أخرى، كما هو موضح أعلاه.
إذا لم تساعد هذه الإجراءات، جرب إيقاف تشغيل الآلة الظاهرية، افتح إعدادات الآلة الظاهرية، حدد علامة التبويب خيارات الآلة الظاهرية، ثم قم بتوسيع القسم المتقدم، وانقر على تحرير التكوين. في نافذة معلمات التكوين، انقر على إضافة معلمات التكوين. أضف معلمة asyncConsolidate.forceSync واضبط هذه المعلمة على صحيح.
في بعض الأحيان، قد تكون حالة توحيد الآلة الظاهرية مطلوبة بسبب ملفات -ctk.vmdk غير المتسقة التي تم إنشاؤها لتتبع الكتل المتغيرة (عن طريق برامج نسخ الآلة الظاهرية، على سبيل المثال). جرب حذف ملفات CTK. لا تحتاج إلى هذه الملفات لتوحيد اللقطة. لا تنسَ نسخ ملفات الآلة الظاهرية قبل حذف ملفات CTK. ثم حاول توحيد ملفات القرص الظاهرية مرة أخرى.
خيار التوحيد غير نشط
إذا كان خيار توحيد اللقطة في VMware رمادي اللون (غير نشط)، فقد يكون هناك مهمة نشطة تعمل على الآلة الظاهرية الآن. إذا رأيت خطأ “تم الكشف عن تكوين لقطة غير صالح”، قد تكون بعض اللقطات معطوبة أو هناك سلاسل من اللقطات المنقسمة. في هذه الحالة، جرب القيام بالإجراءات التالية.
- قم بالاتصال بخادم ESXi عبر SSH وانتقل إلى الدليل الذي توجد فيه ملفات الآلة الظاهرية على مستودع البيانات.
cd vmfs/volumes/اسم_مستودع_البيانات/اسم_مجلد_الآلة_الظاهرية
يمكنك التحقق من موقع ملفات الآلة الظاهرية في عميل VMware vSphere والعثور على موقع الأقراص الظاهرية من خلال عرض إعدادات الآلة الظاهرية.
- تحديد ما يُشير إليه لقطات القرص:
cat اسم-الآلة.vmx | grep scsi*
انظر إلى الإخراج لفحص ملفات القرص الافتراضي بما في ذلك ملفات لقطة القرص الافتراضي. على سبيل المثال، يتم عرض اسم ملف القرص الافتراضي في السطر. هذه ليست لقطة:
scsi 0:0.fileName = “اسم-الآلة.vmdk”
في السطر الناتج، يتم عرض اسم ملف لقطة القرص الافتراضي، وتُشير إلى لقطة:
scsi 0:0.fileName = “اسم-الآلة-000002.vmdk”
A SCSI virtual disk controller is used in VM configuration in this example.
- الأمر التالي يفحص ما الذي تشير إليه كل لقطة. استخدم هذا الأمر لاكتشاف أي لقطة تشير إلى الملف القرص التالي (ملف vmdk لللقطة أو ملف vmdk للقرص الأساسي) في سلسلة اللقطات.
cat اسم-الآلة-000002.vmdk | grep parentFileNameHint
قد تحتاج إلى تنفيذ هذا الأمر مرة أخرى لملفات vmdk الأخرى (مثل اسم-الآلة-000001.vmdk في هذا المثال) حتى تجد القرص الأساسي المطلوب. تساعدك هذه الطريقة في العثور على عدم الاتساق.
- إذا وجدت عدم الاتساق، على سبيل المثال، اسم-الآلة-000002.vmdk يشير إلى اسم-الآلة-000001.vmdk الذي يشير إلى اسم-الآلة.vmdk، قم بتشغيل vmkfstools على أعلى نقطة في سلسلة لقطات القرص (اسم-الآلة-000002.vmdk في هذه الحالة):
vmkfstools -q -v10 اسم-الآلة-000002.vmdk
يحاول هذا الأمر فتح وإغلاق جميع ملفات vmdk في السلسلة ويعلمك أين يحدث الفشل.
باستخدام PowerCLI
بديلاً عن تنفيذ تجميع قرص VMware في واجهة المستخدم الرسومية لـ VMware vSphere Client، يمكنك استخدام vSphere PowerCLI مع واجهة سطر الأوامر.
- قم بالاتصال بخادم vCenter الذي يدير مضيف ESXi الذي يحتوي على الجهاز الظاهري الذي يحتاج إلى تجميع الجهاز الظاهري المطلوب. أدخل بيانات الاعتماد عند الطلب.
Connect-VIServer vcenter01.test.com
- احصل على قائمة الأجهزة الظاهرية ذات الحالة تجميع الجهاز الظاهري المطلوب:
Get-VM | Where-Object {$_.Extensiondata.Runtime.ConsolidationNeeded}
- قم بتنفيذ تجميع أقراص VMware.
Get-VM | Where-Object {$_.Extensiondata.Runtime.ConsolidationNeeded} | foreach {$_.ExtensionData.ConsolidateVMDisks_Task()}
الاستنتاج
شرحت هذه المقالة التوصيات التي يمكن أن تساعدك في إصلاح الحالة التي تحتاج فيها إلى تجميع الجهاز الظاهري المطلوب. عادةً ما يكون تجميع أقراص الجهاز الظاهري من VMware مطلوبًا عندما يكون أحد اللقطات التي تم إنشاؤها تالفة، أو سلسلة اللقطات غير متسقة، أو تم قفل لقطة بواسطة مضيف ESXi آخر.
تشغيل نسخ احتياطية لآلة افتراضية بانتظام في بيئة VMware vSphere الخاصة بك. إذا كان لديك نسخ احتياطية للبيانات، يمكنك استعادة البيانات واستئناف العمل إذا تم حذف البيانات أو تلفها أو تشفيرها بواسطة برمجيات الفدية أو إذا رأيت حدوث خطأ أثناء عمل vCenter. يجب أن يتم نسخ احتياطية لخادم VMware vCenter، تمامًا كما يتم ذلك للآلات الافتراضية المهمة الأخرى. ننصح بالنظر في استخدام NAKIVO Backup & Replication – منتج نسخ احتياطية احترافي يدعم نسخ احتياطية للآلات الافتراضية في VMware vSphere.
Source:
https://www.nakivo.com/blog/fix-vmware-error-virtual-machine-disks-consolidation-needed/