martes, 13 de abril de 2010

Compilación de Xen 3.4.x con el núcleo de Debian Lenny 2.6.26-2

Xen es una herramienta que sirve para la virtualización de sistemas.

Usaremos el núcleo 2.6.26-2 de Debian con soporte para dom0. Estamos en el directorio /root y partimos de una instalación básica.

Primero descargamos las xen-tools, el código fuente de xen y xen-shell.

debinstall:~# wget http://bits.xensource.com/oss-xen/release/3.4.2/xen-3.4.2.tar.gz
debinstall:~# wget http://xen-tools.org/software/xen-tools/xen-tools-4.1.tar.gz
debinstall:~# wget http://www.xen-tools.org/software/xen-shell/xen-shell-1.9.tar.gz


Instalamos los requerimientos de compilación y el núcleo (nos intalará libc6-xen como dependencia) Si usamos 64bits añadimos gcc-multilib:

debinstall:~# aptitude update
debinstall:~# aptitude full-upgrade
debinstall:~# aptitude install bcc bin86 gawk bridge-utils iproute libcurl3 libcurl4-openssl-dev bzip2 module-init-tools transfig tgif texinfo pciutils-dev mercurial build-essential zlib1g-dev python python-dev python-twisted libncurses5-dev libvncserver-dev libsdl-dev libjpeg62-dev ntp debootstrap perl rinse rpm
debinstall:~# aptitude install linux-image-2.6.26-2-xen-686

Descomprimimos Xen y las herramientas.

debinstall:~# tar -xzvf xen-3.4.2.tar.gz
debinstall:~# tar -xzvf xen-tools-4.1.tar.gz
debinstall:~# tar -xzvf xen-shell-1.9.tar.gz

Compilamos solo el hypervisor y solo las herramientas básicas de Xen:

debinstall:~# cd xen-3.4.2
debinstall:~/xen-3.4.2# make xen
debinstall:~/xen-3.4.2# make install-xen
debinstall:~/xen-3.4.2# make tools
debinstall:~/xen-3.4.2# make install-tools
debinstall:~/xen-3.4.2# update-rc.d xend defaults 20 21
debinstall:~/xen-3.4.2# update-rc.d xendomains defaults 21 20
debinstall:~/xen-3.4.2# update-grub
debinstall:~/xen-3.4.2# init 6

Como los dispositivos loop están compilados como módulo en este núcleo, aumentamos el número que podemos usar de ellos. Por defecto 8, lo aumentamos a 128, y recargamos el módulo.

Debinstall:~# dmesg | grep loop
[ 11.430723] loop: module loaded
debinstall:~# /etc/init.d/xendomains stop
debinstall:~# echo “options loop max_loop=128” > /etc/modprobe.d/loop
debinstall:~# rmmod loop
debinstall:~# modprobe loop
debinstall:~# /etc/init.d/xendomains start

Y con esto arrancamos con el hypervisor 3.4.2 y el núcleo más actual de Debian Lenny. Este núcleo funciona como dominio 0 y como dominio U.

Para definir la memoria que vamos a usar para el dom0, añadimos la opción dom0_mem=256M a la linea del hypervisor de /boot/grub/menu.lst quedando así.

debinstall:~# vim /boot/grub/menu.lst

title Xen 3.4.1 / Debian GNU/Linux, kernel 2.6.26-2-xen-686
root (hd0,0)
kernel /boot/xen-3.4.2.gz dom0_mem=256M
module /boot/vmlinuz-2.6.26-2-xen-686 root=/dev/sda1 ro console=tty0
module /boot/initrd.img-2.6.26-2-xen-686

Instalamos las Xen-tools, con las que crearemos las imágenes de las máquinas virtuales.

debinstall:~/xen-3.4.2# cd ../xen-tools-4.1
debinstall:~/xen-tools-4.1# make install

Instalamos la herramienta Xen-Shell para que los usuarios puedan acceder a las máquinas virtuales a través de consola. Esto es opcional.

debinstall:~/xen-3.4.2# cd ../xen-shell-1.9
debinstall:~/xen-shell-1.9# make install

Y listo.

debinstall:~/# xm list
Name ID Mem VCPUs State Time(s)
Domain-0 0 256 1 r----- 18.8
Related Posts with Thumbnails