lunes, 16 de junio de 2008

Debian Etch+Xen

El mundo de la virtualización es increible cuando quieres hacer laboratorios y cuando requieres hacer Deployment de Servidores a unas velocidades antes inimaginables, es por eso que he elaborado este pequeño manual para que puedan incluirse en este excelente mundo "virtual" :)

Instalar Debian, Preferiblemente con la imagen Etch Bussines Card

Realizamos nuestra instalación básica, instalamos el sistema base, configuramos todo, y NO seleccionamos ningún paquete de instalación... Ni entorno Gráfico, ni sistema Base; dejamos la instalación mínima que nos hará el bussines Card... Recuerden usar un Mirror Local para hacer esto más rápido.

Seleccionamos el kernel linux-kernel-2.6-686
Seleccionamos Grub como gestor de arranque preferiblemente y listo... a reiniciar.

Luego de reiniciar procedemos a instalar los paquetes:

# aptitude install xen-linux-system-2.6.18-4-xen-686
# aptitude install ssh rsync xen-tools locales

Editar Grub, y colocar en esta línea "dom0_men"= "cantidad de RAM para el servidor Xen"
ejemplo para asignarle solo 256MB de RAM al Dom0:

kernel /boot/xen-3.0.3-1-i386-pae.gz dom0_mem=256M

Xen por defecto solo viene para poder crear 4 máquinas virtuales, pero no es propiamente Xen, sino /dev/loop que originalmente viene por defecto para 8 /dev/loop0 ... loop7 pero si requerimos más de 4 máquinas virtuales vamos a tener que crear más loops.

Una forma de hacerlo es que se lo pasemos como parámetro al kernel en Grub.

agregándole esto en la línea del kernel: max_loop=128 en nuestro ejemplo sería algo como:

kernel /boot/xen-3.0.3-1-i386-pae.gz dom0_mem=256M max_loop=128

Para configurar las interfaces:

Editar /etc/xen/xend-config.sxp

Solo dejar las siguientes líneas activas:

Debemos tener solo activado estas lineas:

1.- (network-script network-bridge)
2.- (vif-script vif-bridge)
3.- (dom0-min-mem 196)
4.- (dom0-cpus 0)

En mi caso puse esta porque mi etXh por default es la 2, entonces reemplazo (1.-) por esta:
(network-script 'network-bridge netdev=eth2')

Con esto ya tenemos configurado nuestro Dom0.

Para crear lás máquinas virtuales podemos editar /etc/xen-tools/xen-tools.conf y adaptar una instalación por defecto.

Ejemplo:

****************************************************
## Este es el directorio donde se guardarán los discos de las máquinas virtuales
## Puede ser /home/xen en mi caso /xen
dir = /xen
## Uso el método debootstrap para las instalaciones
debootstrap = 1
## Capacidad del tamaño de disco por defecto:
size = 10Gb
## Tamaño de la memoria por defecto:
memory = 128Mb
## Tamaño del Swap por defecto:
swap = 512Mb
## Sistemas de Archivos a usar por defecto
fs = ext3
## Distribución en este caso de linux a usar por defecto:
dist = etch
#Seleccionamos entre Images full disk o sparse
image = sparse

## Red... Colocamos el Gateway por defecto, y el netmask ... en mi caso....
## ya que las direcciones IP las coloco al momento de crear la máquina virtual
## como se explicará más adelante:
gateway = 192.168.100.1
netmask = 255.255.255.0

## Esto es para que nos pida el passwd del root cuando termine de instalar la VM
passwd = 1

#Kernel a usar
kernel = /boot/vmlinuz-2.6.18-6-xen-686
initrd = /boot/initrd.img-2.6.18-6-xen-686

## Arquitectura
arch=i386
## Dirección del Mirror en el caso de debian, yo uso uno local
mirror = http://192.168.100.10/debian/
## Boot me permite iniciar la VM una ves creada.
boot = 1

****************************************************
Hasta aca el archivo por defecto....

Ejemplo para crear una máquina virtual, obviamente usando xen-tool, y voy a colocar como ejemplo algunos parámetros que voy a modificar en "caliente" sin afectar el archivo de configuración de xen tool.

# xen-create-image --hostname=correo --ip=192.168.100.5 --size=4G --memory=512 --swap=512

Luego:

# xm console correo.cfg

y ya estamos en nuestro servidor llamado correo.

Pronto más tips...

Saludos

No hay comentarios.: