Howto install Xen 3.3.2 Debian Lenny 5.0
Note en passant : Salut à tous, j’ai pas posté depuis longtemps sur ce site parce que j’étais parti pendant un an en voyage. Me revoilà (tadaaa !), premier article le jour de mon anniversaire Enjoy !
J’ai décidé d’écrire ce howto parce que j’ai rencontré des problèmes à l’installation de Xen 3.3.2 avec les modules du noyau compilé « manuellement » sur une debian 5.0 , et il y a deux-trois petites astuces à connaitre aussi, et aussi que j’en ai pas trouvé en français (j’avoue que j’ai pas été plus loin que le 2 premières pages de résultat google…).
Et pourquoi se casser la tête à compiler un xen me direz-vous ? Et bien tout simplement à cause d’un ou deux bugs gênant pour moi Vous les découvrirez en lisant ce HOWTO.
Sur une installation fraiche de debian lenny :
Installation du xen normal :
apt-get install libc6-xen libxenstore3.0 linux-headers-2.6-xen-686 linux-headers-2.6.26-2-common-xen linux-headers-2.6.26-2-xen-686 linux-image-2.6-xen-686 linux-image-2.6.26-2-xen-686 linux-modules-2.6-xen-686 linux-modules-2.6.26-2-xen-686 xen-hypervisor-3.2-1-i386 xen-shell xen-tools xen-utils-3.2-1 xen-utils-common xenstore-utils
vim /etc/xen/xend-config.sxp
(xend-relocation-server yes) (xend-relocation-hosts-allow '^localhost$ ^localhost\.localdomain$') (network-script 'network-bridge bridge=xenbr0 netdev=eth0') (vif-script vif-bridge) (dom0-min-mem 196) (enable-dom0-ballooning yes) (dom0-cpus 1) (vncpasswd '')
Ici il est très important de laisser dom0-cpus à 1, sinon le dom0 plantera au bout d’un certains temps. Mais cependant, de mettre le dom0 à 1 empêche le reboot des machines virtuelles. On est obligé de les tuer, ce qui n’est pas très propre. Un autre problème, c’est quand des utilisateurs sont admin de leur machine virtuelle, et qu’ils veulent faire un reboot, ça nous oblige à intervenir.
On configure l’interface réseau (à adapter selon le réseau) :
vim /etc/network/interfaces
auto eth0 iface eth0 inet static address 192.168.0.15 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.63 dns-nameservers 192.168.0.2 192.168.0.3 auto xenbr0 iface xenbr0 inet static address 192.168.0.15 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.63 dns-nameservers 192.168.0.2 192.168.0.3 bridge_ports eth0 bridge_maxwait 0 bridge_hello 0 bridge_fr 0
Ici on peut faire un reboot pour déjà valider que le dom0 fonctionne bien.
Puis on install la dernière version de xen en compilant :
On installe les paquets essentiels à la compilation :
apt-get install bcc bin86 gawk bridge-utils iproute libcurl3 libcurl4-openssl-dev bzip2 module-init-tools transfig tgif texinfo pciutils-dev mercurial build-essential make gcc libc6-dev zlib1g-dev python python-dev python-twisted libncurses5-dev patch libvncserver-dev libsdl-dev libjpeg62-dev
On télécharge, on compile et on installe la source :
cd /usr/src/ wget <a href="http://bits.xensource.com/oss-xen/release/3.3.2/xen-3.3.2.tar.gz" target="_blank">http://bits.xensource.com/oss-xen/release/3.3.2/xen-3.3.2.tar.gz</a> tar -xvzf xen-3.3.2.tar.gz cd xen-3.3.2 make world && make dist (answer the few questions then take a coffee, or a rest :)...) ./install.sh
update-rc.d xend defaults 20 21 update-rc.d xendomains defaults 21 20
depmod 2.6.18.8-xen update-initramfs -c -k 2.6.18.8-xen update-grub
On reconfigure xen :
vim /etc/xen/xend-config.sxp
(network-script 'network-bridge bridge=xenbr0 netdev=eth0') (vif-script vif-bridge) (dom0-cpus 0)
Ca y est on peut mettre dom0-cpu à 0, cool !
Et là l’astuce, c’est de modifier menu.lst de GRUB pour utiliser les modules de la version officielle (installée avant la version compilée) avec le nouveau noyau xen :
title Xen 3.3.2 / Debian GNU/Linux, kernel 2.6.18.8-xen root (hd0,0) kernel /boot/xen-3.3.2.gz module /boot/vmlinuz-2.6.26-2-xen-686 root=UUID=fe72ca30-05cf-4baf-9e0f-41749cf4011a ro console=tty0 module /boot/initrd.img-2.6.26-2-xen-686 au lieu de #module /boot/vmlinuz-2.6.18.8-xen root=UUID=fe72ca30-05cf-4baf-9e0f-41749cf4011a ro console=tty0 #module /boot/initrd.img-2.6.18.8-xen
Reboot and enjoy !
Cheers
Inspirations et sources :
- http://www.xen-support.com/?p=211