Objectiu:
Disposar d’un entorn de virtualització Xen amb la versió 4.0.0 sobre un Debian Lenny, versió 5.0.
Des de la versió 4.0.0 de Xen s’utilitza per defecte les pv_ops del kernel. Així doncs ens farà falta un kernel que les suporti. Veurem tot seguit com aconseguir-lo.
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/products/xen_source.html
Per obtenir el codi fem:
$ cd /usr/src $ wget http://bits.xensource.com/oss-xen/release/4.0.0/xen-4.0.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 bcc bin86 gawk bridge-utils libcurl3 bzip2 gettext transfig tgif texi2html texlive-latex-base texlive-latex-recommended texlive-fonts-extra texlive-fonts-recommended mercurial build-essential make gcc libc6-dev zlib1g-dev python-dev python-twisted python-xml python-pyopenssl python-pam libncurses5-dev libvncserver-dev libsdl1.2-dev libssl-dev libcurl4-openssl-dev libjpeg62-dev libx11-dev iasl libbz2-dev e2fslibs-dev git-core uuid-dev iasl libc6-dev-i386 gcc-multilib libpci-dev
A continuació executem les següents comandes:
$ tar xvzf xen-4.0.0.tar.gz $ cd xen-4.0.0
En aquest punt hauríem de decidir si volem el kernel que Xen instal·la per defecte (2.6.31.x) o bé un kernel fet a mida, potser més nou i amb algunes opcions diferents.
La instal·lació a partir d’aquest punt és diferent segons escollim un itinerari o un altre.
OPCIÓ A: Instal·lació amb el kernel que Xen instal·la per defecte:
L’opció més senzilla és deixar que Xen descarregui i compili el kernel per defecte. En aquest cas la seqüencia de comandes és la següent:
$ make world
En un moment donat de la instal·lació, quan es configuri el kernel, se’ns demanarà tot un seguit d’opcions de Xen, hem d’escollir segons ens interessi. Dir que sí a tot no fa mal, però pot no ser el que ens faci falta.
A continuació fem:
$ ./install.sh
Amb això tindrem les eines de Xen i el kernel instal·lats. Per acabar de configurar el sistema per que arrenqui automàticament i demés podem fer el següent:
$ depmod -a $ update-initramfs -c -k 2.6.31.13 $ update-rc.d xend defaults 20 21 $ update-rc.d xendomains defaults 21 20 $ update-grub
En aquest punt ja podem reiniciar el nostre sistema i escollir l’opció de boot de Xen 4.0.0 amb el kernel 2.6.31.13.
OPCIÓ B: Instal·lació amb un kernel fet a mida:
L’altra opció que tenim és descarregar un kernel i adaptar-lo a les nostres necessitats. S’explica a continuació com obtenir la versió 2.6.32.x del repositori git de kernel.org i utilitzar-lo en la nostra màquina Xen.
Les comandes bàsiques són les següents:
$ cd /usr/src $ git clone git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen.git $ git checkout -b xen/stable-2.6.32.x origin/xen/stable-2.6.32.x $ make menuconfig (per adaptar el kernel a les nostres necessitats)
NOTA IMPORTANT: En aquest punt seria interessant dir que l”Universal TUN/TAP driver’ d’aquest kernel està deshabilitat per defecte i és necessari per a les màquines virtuals HVM. El podem habilitar en:
- Device Drivers --> Network Device Support --> Universal TUN/TAP driver support
A continuació fem:
$ make $ make modules_install install $ depmod -a $ update-initramfs -c -k 2.6.32.x $ update-grub
En aquest punt ja podem reiniciar amb el nostre kernel a mida amb Xen 4.0.0.
Altres configuracions:
Per acabar de configurar el Xen podem accedir a l’arxiu /etc/xen/xend-config.sxp i per exemple:
- Activar l’accés per VNC
- Modificar paràmetres de la xarxa
- …
Documentació:
Com sempre, la documentació del projecte Xen la podem trobar a: