Archiv für Juli 2016

Xenserver 6.2, Host nach Pool Join in emergency mode

Sonntag, 24. Juli 2016

Nach Join eines XEN-Host in einen Pool geht der Host in den Emergency-Mode (xe host-is-in-emergency-mode zeigt true), lässt sich nicht enablen, da XAPI nicht ordentlich hochläuft. In /var/log/xensource.log Meldungen wie:

Cannot contact master: running in slave emergency mode

Connection to master died. I will continue to retry indefinitely

Anschließend über Xencenter zwar Zugriff auf den Host, lässt sich aber nicht konfigurieren oder sonstwie aktivieren. In der xsconsole tauchen keine Management-Interfaces auf. Im Standalone (non-Pool) lassen sich diese jedoch konfigurieren. Zum entfernen aus dem Pool half nur: „service xapi stop“ auf dem betroffenen Host, „xe host-forget uuid=…“ auf dem Master, anschließend „service xapi start“ und „xe pool-emergency-transition-to-master“ auf dem Host/Client (!). Daraufhin Management-Interface neu konfigurieren.

Ursächlich ist ein synch der PCI devices im Pool (aus /var/log/xensource.log):

[debug|xen3|0 thread_zero|dbsync (update_env) D:b4254ebccd18|dbsync] Sync: sync_pci_devices

Jul 24 07:55:40 xen3 xapi: [debug|xen3|0 thread_zero|dbsync (update_env) D:b4254ebccd18|backtrace] Raised at list.ml:144.16-25 -> db_actions.ml:16810.45-98 -> xapi_pci.ml:59.14-62 -> list.ml:57.20-23 -> fun.ml:17.22-29 -> xapi_pci.ml:57.16-225 -> dbsync_slave.ml:322.2-111 -> dbsync.ml:62.7-53 -> server_helpers.ml:72.10-22

Auf dem Server Master:

xe pool-param-set uuid=… other-config:sync_pci_devices=nosync

Unterbindet ein Sync der PCI devices im Pool. Tatsächlich hatte der betroffene Host eine andere HW-Konfiguration als die anderen Member.

xenserver 6.2, debian updated auf jessie, not booting

Mittwoch, 20. Juli 2016

Nach update von Debian auf jessie bottet VM nicht.

Zuerst in HVM Virtualisierung Mode:

xe vm-param-set uuid=<vm uuid> HVM-boot-policy="BIOS order"

und von Debian Live CD in Rescue Mode gebootet. In /boot Kernels und initrd gecheckt. Grub neu installiert.

Danach in Xenserver HVM deaktiviert und pygrub aktiviert:

xe vm-param-set uuid=<vm uuid> HVM-boot-policy=""
xe vm-param-set uuid=<VM uuid> PV-bootloader=pygrub

Richtigen Kernel mit auf den Weg geben und Root-System (in meinem Fall /dev/mapper/myvg-root):

xe vm-param-set uuid=vm-uuid PV-bootloader-args=“–kernel=/vmlinuz-1234-amd64 –ramdisk=/initrd.img-123″
xe vm-param-set uuid=vm-uuid PV-args=“root=root-device  ro quiet“