คำเตือน 'จำเป็นต้องมีการรวมดิสก์ของ Virtual Machine ' ในแท็บสรุปของเครื่องเสมือนในคอนโซล VMware vSphere หมายความว่าเมื่อลบสแน็ปช็อต (โดยใช้ตัวเลือกลบหรือลบทั้งหมด) ไฟล์ VMDK สแน็ปช็อตหรือบันทึกจะไม่ถูกลบอย่างถูกต้อง (ยังคงอยู่ในที่เก็บข้อมูล) ซึ่งทำให้เกิดข้อผิดพลาดในการสำรองข้อมูลเครื่องเสมือน
สาเหตุทั่วไปที่สุดของข้อผิดพลาด 'จำเป็นต้องมีการรวมดิสก์เครื่องเสมือน' คือ:
- ประสิทธิภาพการจัดเก็บข้อมูลไม่ดี เนื่องจากไม่สามารถลบ/รวมสแน็ปช็อตได้เนื่องจากการหมดเวลาหรือสแน็ปช็อตขนาดใหญ่
- มีพื้นที่ไม่เพียงพอบนที่เก็บ VMFS เพื่อดำเนินการรวมบัญชี
- vSphere หรือแอปของบุคคลที่สาม (ตามกฎแล้ว เป็นแอปพลิเคชันสำรอง เช่น HP DataPtotector, Veeam หรือ Netapp VSC) มีการล็อกไฟล์สแน็ปช็อต ตรวจสอบให้แน่ใจว่าไม่มีกระบวนการทำงานของการสำรองข้อมูลเครื่องเสมือน
- ปัญหาการเชื่อมต่อ (อาจชั่วคราว) ระหว่างเซิร์ฟเวอร์ vCenter และโฮสต์ ESXi
ในการแก้ไขข้อผิดพลาด 'Virtual machine Consolidation Needed' ให้คลิกขวาที่เครื่องเสมือนและเลือก VM -> สแนปชอต -> รวม .
หน้าต่างที่มีคำขอต่อไปนี้ปรากฏขึ้น:
ยืนยันการรวมบัญชีการดำเนินการนี้จะรวมบันทึกการทำซ้ำที่ซ้ำซ้อนทั้งหมดบนเครื่องเสมือนของคุณ คุณแน่ใจหรือไม่ว่าต้องการดำเนินการต่อ
ยืนยันว่าคุณต้องการลบบันทึกที่ซ้ำซ้อน จากนั้น vCenter จะรวมดิสก์และล้างบันทึก การรวมบัญชีอาจใช้เวลาสักครู่และประสิทธิภาพของ VM อาจลดลง
หลังจากนั้นคำเตือนการรวม VM จะหายไป
ในบางกรณี ในระหว่างการรวม คุณอาจเห็นข้อผิดพลาดนี้ในคอนโซล vSphere:
ไม่สามารถเข้าถึงไฟล์ได้เนื่องจากถูกล็อค เกิดข้อผิดพลาดขณะรวมดิสก์:ไม่สามารถล็อกไฟล์ได้ การรวมล้มเหลวสำหรับดิสก์โหนด 'scsi0:0':ล็อกไฟล์ล้มเหลว
ในกรณีนี้ VMware แนะนำให้รีสตาร์ทเอเจนต์การจัดการบนเซิร์ฟเวอร์ ESXi ในการดำเนินการ ให้เชื่อมต่อกับโฮสต์ผ่าน SSH และเรียกใช้คำสั่งนี้:
services.sh restart
อย่างไรก็ตาม คุณสามารถลองปลดล็อกไฟล์ VM ได้ดังนี้:
- ปิด VM ถ้าเป็นไปได้
- สร้างสแนปชอตใหม่
- ลบสแนปชอต VM ทั้งหมดโดยใช้ตัวเลือก "ลบทั้งหมด"
- ย้าย VM ที่ทำงานอยู่ไปยัง ESXi อื่นโดยใช้ vMotion
- พยายามรวมสแนปชอตตามที่อธิบายไว้ข้างต้น
คุณสามารถค้นหาเครื่องเสมือนทั้งหมดที่ต้องการการรวมบัญชีโดยใช้ PowerCLI โดยเชื่อมต่อกับเซิร์ฟเวอร์ vCenter ของคุณ:
Connect-VIServer mun_vsphere.woshub.com
รับรายการ VM ทั้งหมดที่มีสถานะ 'ต้องการการรวมดิสก์เครื่องเสมือน':
Get-VM | Where-Object {$_.Extensiondata.Runtime.ConsolidationNeeded}
ตอนนี้คุณสามารถรวมดิสก์ของเครื่องทั้งหมดในรายการ:
Get-VM | Where-Object {$_.Extensiondata.Runtime.ConsolidationNeeded} | foreach {$_.ExtensionData.ConsolidateVMDisks_Task()}