Xen 3.3 y Debian Etch

Recientemente me tocó configurar un servidor para tener máquinas virtuales mediante XEN. Anteriormente sólo había trabajado con un poco con VMWare ESXi y XenServer (la versión “comercial” de XEN), el problema es que se tenía que instalar en un servidor remoto que solo se tiene acceso mediante ssh.

Con algo de trabajo y pruebas (y con las buenas herramientas de ServerBeach, que sólo le faltan una vista a la consola para diagnosticar kernel panics) por fin pude instalarlo.

Debian tiene una versión de Xen, pero es la 3.0.3 que para mi gusto es demasiado vieja (se liberó en 2006) y la versión Lenny (testing) tiene la versión 3.2, pero también algo “inestable” a mi gusto para un servidor de batalla.

Como dije después de hacer varias pruebas logré instalar la versión Xen 3.3 utilizando el kernel que viene en Debian preparado para Xen.

Una breve descripción de Xen, es que está separado en varias partes, en primer lugar Xen tiene un kernel modificado para llevar a cabo la virtualización, la ventaja es que la versión 3.3 utiliza la versión 2.6.18 que es la que viene con Debian.

Después la parte “fuerte” de Xen es el denominado hypervisor que es un servidor que se encarga de hacer la virtualización propiamente dicha. Después vienen las máquinas virtuales que utilizan por lo general otro kernel que se denomina domU (y el kernel de la máquina base se denomina dom0).

Pues bien, para lograr esto simplemente primero instalé la imagen del kernel apropiado y compilar solamente el hypervisor de Xen 3.3

En pasos simples:

#Instalar la imagen del kernel con parche para xen
apt-get install linux-image-2.6.18-6-xen-amd64

#Descargar el código fuente de xen
wget http://bits.xensource.com/oss-xen/release/3.3.0/xen-3.3.0.tar.gz
tar zxvf xen-3.3.0.tar.gz
cd xen-3.3.0

#Compilar solamente el hypervisor
make xen
make install-xen

#Compilar los archivos ejecutables como xm y herramientas de red
make tools
make install-tools

#Hacer que Debian cree las entradas correspondientes en los rc.X
#para que cuando el servidor se inicie ejecute los servidores de Xen
update-rc.d xend defaults 20 21
update-rc.d xendomains defaults 21 20

#Hacer que grub reconozca el nuevo kernel con la configuración de Xen 3.3.0
update-grub

Con eso deberían de ver una entrada en el grub como:

title           Xen 3.3.0 / Debian GNU/Linux, kernel 2.6.18-6-xen-amd64
root            (hd0,0)
kernel          /xen-3.3.0.gz
module          /vmlinuz-2.6.18-6-xen-amd64 root=/dev/sda6 ro console=tty0
module          /initrd.img-2.6.18-6-xen-amd64
savedefault

Que debería de bootear con el hypervisor 3.3

Incluyo algunas ligas de sitios (en inglés) que me ayudaron muchísimo para entender algo más de Xen ;)

Temas similares