Oracle VM 3.3 - Kernel Panic während Live Migration
Wenn man Oracle VM 3.3 ohne Patches installiert und in Betrieb nimmt, sieht alles recht gut aus - bis man die erste Live Migration "unter Last" durchführt. Dann stehen die Chancen recht gut, dass die VM während der Live Migration eine Kernel Panic wirft...
Auszug aus /var/log/messages
Bei der Analyse wird man in /var/log/messages fündig.
Jan 27 11:19:35 lxvm01 kernel: Xen HVM callback vector for event delivery is enabled
Jan 27 11:19:35 lxvm01 kernel: Clocksource tsc unstable (delta = 3103195367 ns). Enable clocksource failover by adding clocksource_failover kernel parameter.
Jan 27 11:19:35 lxvm01 kernel: irq 23: nobody cared (try booting with the "irqpoll" option)
Jan 27 11:19:35 lxvm01 kernel: Pid: 0, comm: swapper Not tainted 2.6.32-358.el6.x86_64 #1
Jan 27 11:19:35 lxvm01 kernel: Call Trace:
Jan 27 11:19:35 lxvm01 kernel: ? __report_bad_irq+0x2b/0xa0
Jan 27 11:19:35 lxvm01 kernel: ? note_interrupt+0x18c/0x1d0
Jan 27 11:19:35 lxvm01 kernel: ? ack_apic_level+0x79/0x1b0
Jan 27 11:19:35 lxvm01 kernel: ? handle_fasteoi_irq+0xcd/0xf0
Jan 27 11:19:35 lxvm01 kernel: ? handle_irq+0x49/0xa0
Jan 27 11:19:35 lxvm01 kernel: ? do_IRQ+0x6c/0xf0
Jan 27 11:19:35 lxvm01 kernel: ? ret_from_intr+0x0/0x11
Jan 27 11:19:35 lxvm01 kernel: ? handle_IRQ_event+0x29/0x170
Jan 27 11:19:35 lxvm01 kernel: ? move_native_irq+0x4d/0x50
Jan 27 11:19:35 lxvm01 kernel: ? handle_edge_irq+0xde/0x180
Jan 27 11:19:35 lxvm01 kernel: ? __xen_evtchn_do_upcall+0x1b9/0x1f0
Jan 27 11:19:35 lxvm01 kernel: ? xen_evtchn_do_upcall+0x2f/0x50
Jan 27 11:19:35 lxvm01 kernel: ? xen_hvm_callback_vector+0x13/0x20
Jan 27 11:19:35 lxvm01 kernel: ? native_safe_halt+0xb/0x10
Jan 27 11:19:35 lxvm01 kernel: ? default_idle+0x4d/0xb0
Jan 27 11:19:35 lxvm01 kernel: ? cpu_idle+0xb6/0x110
Jan 27 11:19:35 lxvm01 kernel: ? rest_init+0x7a/0x80
Jan 27 11:19:35 lxvm01 kernel: ? start_kernel+0x424/0x430
Jan 27 11:19:35 lxvm01 kernel: ? x86_64_start_reservations+0x125/0x129
Jan 27 11:19:35 lxvm01 kernel: ? x86_64_start_kernel+0xfa/0x109
Die erste Vermutung, dass es etwas mit NTP zu tun hat (Clocksource tsc unstable) war letztendlich nicht der Grund. Wir haben dann mehrere mögliche Fehler sowohl im RedHat Kernel als auch in dem UEK 3.8.18 gefunden und nach einem Upgrade auf den aktuellen UEK 3.8.18-55 sowohl am OVM Server als auch innerhalb der VM waren die Probleme weg.
Auf Grund der gefundenen BUGs dürfte der Fehler für den UEK 3.8.18 ab Patch 31 oder höher beseitig sein - mit dem Upgrade auf 3.8.18-55 sind wir auf den zu diesem Zeitpunkt aktuellesten UEK umgestiegen.
Zusammenfassung der Lösung
Sowohl auf den Oracle VM Servern (DOM0) als auch innerhalb der virtuellen Machinen (sofern es sich um OEL6 handelt) auf einen aktuellen UEK 3.8.18-xx umsteigen.
Eine Anleitung wie man vorgeht finden Sie in folgendem Artikel: "OVM 3.3: GSO size must not be zero".