Objectiu:
Volem disposar d’un entorn de virtualització Xen amb la versió 3.3.0 sobre un Debian Lenny, versió 5.0. Aquest objectiu presenta els següents problemes:
- Si instal·lem la versió del kernel que ve amb Xen 3.3, el procés d’arrencada provoca un kernel panic.
- La versió 5.0 de Lenny no te cap linux-image-xen disponible, pel que no podem instal·lar el kernel amb Xen des d’apt-get directament.
La solució que proposem aquí utilitza una mescla de Xen, Etch i Lenny.
Procediment:
Partim de la base que tenim un Debian Lenny completament actualitzat tal i com s’explica en aquesta entrada anterior.
El codi font de Xen està disponible a la seva pàgina web: http://www.xen.org/download
Per obtenir el codi fem:
$ cd /usr/src $ wget http://bits.xensource.com/oss-xen/release/3.3.0/xen-3.3.0.tar.gz
Preparació:
Abans de compilar el codi descarregat ens hem d’assegurar que el nostre sistema Debian compti amb les eines necessàries per dur a terme la compilació sense problemes. La compilació del kernel és lenta i ens podem estalviar haver de recompilar si ja disposem d’aquests paquets:
$ apt-get install build-essential linux-headers-`uname -r` iproute bridge-utils zlib1g-dev libncurses5-dev libssl-dev libcurl4-openssl-dev libssl0.9.8 gawk gettext libx11-dev bcc libpci-dev $ apt-get install python python-xml python-pyopenssl python-pam python-dev
Si estem treballan sobre Lenny x86_64 també ens farà falta el següent paquet:
$ apt-get install libc6-dev-i386
Compilació:
Amb aquests paquets instal·lats ja podem compilar Xen. Per fer-ho s’ha de seguir aquests passos amb compte:
$ cd /usr/src $ tar xvzf xen-3.3.0.tar.gz $ cd xen-3.3.0 $ make install-xen $ make install-tools $ make install-stubdom
Els passos importants i que trigaran força estona són els tres últims, paciència.
Opcionalment podem compilar també els documents de Xen. Per això ens faran falta les eines LaTeX. Les comandes a executar són:
$ apt-get install texlive-latex-* graphviz gs-gpl $ cd /usr/src/xen-3.3.0 $ make -C docs
Instal·lació del kernel:
Com s’ha comentat Lenny no porta cap linux-image-xen, però Etch sí. El kernel que instal·larem és el de la versió 4.0 doncs.
Modificarem el nostre arxiu /etc/apt/sources.list per afegir el repositori main de Etch:
$ cat /etc/apt/sources.list deb http://ftp.es.debian.org/debian/ lenny main contrib non-free deb-src http://ftp.es.debian.org/debian/ lenny main contrib non-free deb http://security.debian.org/ lenny/updates main contrib non-free deb-src http://security.debian.org/ lenny/updates main contrib non-free deb http://ftp.es.debian.org/debian/ etch main
Actualitzem les fonts:
$ apt-get update
Instal·lem el kernel amb:
$ apt-get install linux-image-xen-686
o bé, per a un entorn x86_64:
$ apt-get install linux-image-xen-amd64
Fet això, opcionalment, podem treure l’última línia de l’arxiu /etc/apt/sources.list, la del repositori Etch.
La pròpia instal·lació del kernel prepararà el grub, però no estarà de més comprovar que en /boot/grub/menu.lst les opcions de carrega del kernel Xen són correctes.
Configuracions extra:
Amb el procés completat ja només queden uns passos opcionals però recomanables.
Primer deshabilitem les llibreries tls (només en i686):
$ mv /lib/tls /lib/tls.disabled
Preparem el sistema per que arrenqui Xend i Xendomains a l’arrencada:
$ update-rc.d xend defaults 20 21 $ update-rc.d xendomains defaults 21 20
Hem acabat. Podem reiniciar el sistema amb el nou kernel Xen i començar a crear màquines virtuals.