ฉันสงสัย (หลังจากการย้ายข้อมูลสดล้มเหลวอีกครั้ง):
แอตทริบิวต์ (คุณสมบัติ) ของ VM ใดบ้างที่คัดลอกจากต้นทางไปยังปลายทางเมื่อดำเนินการโอนย้ายแบบสดของ PVM
ในกรณีของเรา libvirt framework กำลังถูกใช้ในกลุ่มเครื่องกระตุ้นหัวใจ
ฉันสงสัยโดยเฉพาะเกี่ยวกับ:
- การกำหนดอุปกรณ์บล็อก
- ขนาดหน่วยความจำ
- จำนวน vCPU
- เครือข่าย (veth)
- ซีพียูรุ่น
ความล้มเหลวล่าสุดที่ฉันเห็นคือ:
อุปกรณ์สว็อปของ VM ถูกเปลี่ยนจาก LVM LV เป็นดิสก์แยกต่างหาก ดังนั้นดิสก์ใหม่จึงถูกเพิ่มผ่าน แนบบล็อก
ในขณะที่ LV ที่ล้าสมัยถูกลบออกใน VM
การกำหนดค่า VM ที่คลัสเตอร์เครื่องกระตุ้นหัวใจใช้เป็นการอัปเดตในแต่ละโหนด (แต่ดูเหมือนว่า libvirt จะมีสำเนาของตัวเองใน RAM)
VM ทำงานได้ดีจนกว่าจะได้รับการโอนย้ายแบบสด:
มีข้อความแสดงข้อผิดพลาดบางอย่าง แต่ VM ดำเนินต่อไปอีก 40 นาทีจนกว่าจะหยุดเขียนไปยัง systemd Journal
บนคอนโซล ฉันเห็นข้อความซ้ำๆ แบบนี้:
[94124.120477] BUG: workqueue lockup - pool cpus=0-1 flags=0x5 nice=0 ติดอยู่เป็นเวลา 232 วินาที!
[94154.815980] BUG: workqueue lockup - pool cpus=0-1 flags=0x5 nice=0 ติดอยู่เป็นเวลา 263 วินาที!
[94185.599474] BUG: การล็อกคิวงาน - พูลซีพียู = 0-1 ค่าสถานะ = 0x5 ดี = 0 ติดอยู่เป็นเวลา 293 วินาที!
[94216.278977] BUG: การล็อกคิวงาน - พูลซีพียู = 0-1 ค่าสถานะ = 0x5 ดี = 0 ติดอยู่เป็นเวลา 324 วินาที!
[94247.062530] BUG: workqueue lockup - pool cpus=0-1 flags=0x5 nice=0 ติดอยู่เป็นเวลา 355 วินาที!
[94277.682031] BUG: การล็อกคิวงาน - พูลซีพียู=0-1 ค่าสถานะ=0x5 ดี=0 ติดอยู่เป็นเวลา 386 วินาที!
[94308.401531] BUG: การล็อกคิวงาน - พูลซีพียู = 0-1 ค่าสถานะ = 0x5 ดี = 0 ติดอยู่เป็นเวลา 416 วินาที!
[94339.157047] BUG: workqueue lockup - pool cpus=0-1 flags=0x5 nice=0 ติดอยู่เป็นเวลา 447 วินาที!
ที่จริงแล้ว VM ใหม่ไม่มีดิสก์สลับแยกต่างหาก
แต่แทนที่จะตื่นตระหนก (และรีบูต) VM ดูเหมือนจะรอสิ่งที่จะไม่เกิดขึ้น
หลังจากรีบูตฉันพบข้อความเหล่านี้ในบันทึกประจำวัน:
23 มีนาคม 20:02:19 เคอร์เนล v04: ตรึงกระบวนการพื้นที่ผู้ใช้ ... (ผ่านไป 0.008 วินาที) เสร็จแล้ว
23 มีนาคม 20:02:19 v04 เคอร์เนล: OOM killer ถูกปิดใช้งาน
23 มีนาคม 20:02:19 เคอร์เนล v04: การแช่แข็งงานที่สามารถแช่แข็งได้ที่เหลืออยู่ ... (ผ่านไป 0.001 วินาที) เสร็จสิ้น
23 มีนาคม 20:02:19 เคอร์เนล v04: PM: การหยุดอุปกรณ์เสร็จสมบูรณ์หลังจาก 0.562 มิลลิวินาที
23 มีนาคม 20:02:19 v04 เคอร์เนล: ระงับ xenstore ...
23 มีนาคม 20:02:19 เคอร์เนล v04: PM: การหยุดทำงานล่าช้าของอุปกรณ์เสร็จสิ้นหลังจาก 0.104 มิลลิวินาที
23 มีนาคม 20:02:19 น. เคอร์เนล v04: PM: noirq การหยุดอุปกรณ์เสร็จสมบูรณ์หลังจาก 13.428 มิลลิวินาที
23 มีนาคม 20:02:19 v04 เคอร์เนล: xen:grant_table: มอบตารางโดยใช้เค้าโครงเวอร์ชัน 1
23 มีนาคม 20:02:19 v04 เคอร์เนล: ถูกระงับเป็นเวลา 1.170 วินาที
23 มีนาคม 20:02:19 เคอร์เนล v04: PM: การคืนค่าอุปกรณ์ noirq เสร็จสมบูรณ์หลังจาก 0.166 มิลลิวินาที
23 มีนาคม 20:02:19 เคอร์เนล v04: PM: การคืนค่าอุปกรณ์ก่อนกำหนดเสร็จสิ้นหลังจาก 0.085 มิลลิวินาที
23 มีนาคม 20:02:19 น. เคอร์เนล v04: vbd vbd-51744: 2 อ่านรายละเอียดสิ้นสุดอื่น ๆ จากอุปกรณ์/vbd/51744
23 มีนาคม 20:02:19 v04 เคอร์เนล: xenbus: ดำเนินการต่อ (talk_to_otherend) vbd-51744 ล้มเหลว: -2
23 มีนาคม 20:02:19 v04 เคอร์เนล: dpm_run_callback(): xenbus_dev_resume+0x0/0x130 ส่งคืน -2
23 มีนาคม 20:02:19 เคอร์เนล v04: PM: อุปกรณ์ vbd-51744 ล้มเหลวในการกู้คืน: ข้อผิดพลาด -2
23 มีนาคม 20:02:19 v04 เคอร์เนล: PM: การคืนค่าอุปกรณ์เสร็จสมบูรณ์หลังจาก 9.374 มิลลิวินาที
23 มีนาคม 20:02:19 v04 เคอร์เนล: เปิดใช้งาน OOM killer
23 มีนาคม 20:02:19 เคอร์เนล v04: เริ่มงานใหม่ ... เสร็จแล้ว
...
23 มีนาคม 20:40:26 v04 systemd-logind[1034]: ไม่สามารถเริ่มขอบเขตเซสชัน session-117.scope: หมดเวลาการเชื่อมต่อ
-- รีบูต --
ดังนั้นสมมติว่าฉันได้ขยาย VMs RAM ในขณะที่มันทำงาน
RAM จะหายไปหลังจากโอนย้ายจริงหรือการตั้งค่า RAM จะถูก "คัดลอก" หรือไม่