Admin/SetupGuides/UpgradingXen

Upgrading Xen2 to Xen3 with Debian Etch

Dist-upgrade to Etch

vi /etc/apt/sources.list
apt-get update
apt-get dist-upgrade

Backup domU VM scripts

cp -R /etc/xen /root/

Uninstall Xen2

This should remove the old Xen2 Kernels and files in /etc/xen/*

cd /usr/src/xen/xen-2.0
#if it's not there:
tar -xzf xen-2.0.7-src.tgz
#the above file should be in or /root/ on the dom0 machines
cd xen-2.0

make uninstall

Install new Xen Kernel and Required Packages

Main Step

apt-get install linux-image-2.6-xen-686 xen-hypervisor-3.0.3-1-i386-pae xen-tools bridge-utils libc6-xen sysfsutils
#'''Note: The pae hypervisor was the one which was required''' - thanks to davisc.
#note re libc6-xen: It eliminates moving /lib/tls to /lib/tls.disabled IMO.

Check Grub, Reboot, Pray

Check /boot/grub/menu.lst to see if the Xen Kernel and initrd.img are added in correctly.

After reboot, check xen with: "xm list", "xm top". Also check "ifconfig", which should show: peth0 and vif0.0.

Copy back in /etc/xen Configs

Tweaks which were Required

vi /etc/xen/xend-config.sxp
#change:
(network-script    network)
#to:
(network-script    network-bridge)

vi /etc/xen/domains/vm0*
#include:
#vif = ['bridge=xenbr0']
#Specify a Mac address on all vm's. This is to overcome a problem with udev incrementing eth* in the domU's after a xm shutdown. Look in /etc/udev/rules.d/z25_persistent-net.rules on the domU for a mac address and signs of eth* having incremented.
vif = ['mac=aa:00:00:7d:f8:77, bridge=xenbr0']

#Correct kernel entries. Add initrd entry
kernel = "/boot/vmlinuz-2.6.18-4-xen-686"
ramdisk = "/boot/initrd.img-2.6.18-4-xen-686"

Install packages on domU's & Config

apt-get install linux-image-2.6-xen-686

On the domU's there were a lot of errors appearing in kern.log and syslog and also appearing in the console window every few seconds. The error which was appearing was:

Apr 22 23:33:49 bender-vm01 kernel: 4gb seg fixup, process sshd (pid 5767), cs:ip 73:b7c092f6
Apr 22 23:33:49 bender-vm01 kernel: 4gb seg fixup, process klogd (pid 1452), cs:ip 73:b7e8d5f0
Apr 22 23:33:49 bender-vm01 kernel: 4gb seg fixup, process klogd (pid 1452), cs:ip 73:b7f0ed10
Apr 22 23:33:54 bender-vm01 kernel: printk: 62276 messages suppressed.
Apr 22 23:33:54 bender-vm01 kernel: 4gb seg fixup, process sshd (pid 20895), cs:ip 73:b7bb4ccc

Basically on ALL of the Xen domU's, /lib/tls had to be removed. So:

mv /lib/tls /lib/tls.disabled

/lib/tls will be repopulated when apting new packages and updating libc. A more permament solution can be found here: [WWW] http://wiki.xensource.com/xenwiki/DebianTlsLibcDiversion

[WWW] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=405223

The domU's need to be rebooted for this to take effect and for the "4gb seg fixup" errors to stop.


That should be it for now. The above was done with bender. This will be updated once flexo is migrated. --steviewdr 18-04-07

Changes applied to flexo. It's a reboot and pray now. davisc 25-04-07 02:32

last edited 2007-04-25 17:36:20 by 136