You are on page 1of 11

VIRTUALIZACIN CON XEN.

Instalar el sistema operativo.


Se instalar Debian Squeeze. En este caso utilizaremos un disco fisico dedicado para las mquinas
virtuales. Le diremos al programa de instalacin el punto de montaje de dicho medio (ej:
/media/soporte2). Luego de la instalacin se proceder a actualizar los paquetes:
#aptitudeupdate
#aptitudeupgrade
Instalar los paquetes necesarios.
#aptitudeinstallxenhypervisorxenlinuxsystemxenutils
xenstoreutilsxentoolsvirtmanagerxenqemudmhal
Modificar el archivo /etc/modules
#nano/etc/modules
[]
loopmax_loop=64
Modificar el archivo /etc/xen/xend-config.sxp
#nano/etc/xen/xendconfig.sxp
[]
(xendhttpserveryes)
(xendunixserveryes)
[]
(networkscript'networkbridgeantispoof=yes')
[]
(vifscriptvifbridge)
[]
Las 2 ltimas lneas sirven para configurar la red en modo bridge, esto es, que las mquinas
virtuales tengan direcciones de red del mismo rango que la mquina anfitrin.
Actualizar GRUB
Esto es necesario para que en el men de arranque la primera opcin sea el kernel + el hypervisor.
#mv/etc/grub.d/10_linux/etc/grub.d/50_linux
#updategrub2
Al reiniciar se puede luego verificar que el kernel haya booteado correctamente va
#xmdmesg
Crear la carpeta que contendr las mquinas virtuales.

Como dijimos anteriormente, vamos a utilizar un disco fisico aparte para las maquinas virtuales.
Suponiendo que lo tengamos montado en /media/soporte2, crearemos la carpeta xen all:
#mkdir/media/soporte2/xen
Configurar la utilidad xen-tools.
Xen-tools en un conjunto de scripts que facilitan la tarea de paravirtualizacin con xen.
Suponiendo que la red donde estamos es la 192.168.168.0/24, vamos a modificar el archivo
/etc/xen-tools/xen-tools.conf de la siguiente manera:
# nano /etc/xen-tools/xen-tools.conf
[]
dir=/media/soporte2/xen
[]
#lvm=vg0
[]
dist=`xtguesssuiteandmirrorsuite`
[]
gateway=192.168.168.1
netmask=255.255.255.0
broadcast=192.168.168.255
[]
passwd=1
[]
kernel=/boot/vmlinuz`unamer`
initrd=/boot/initrd.img`unamer`
[]
mirror=http://ftp.debian.org/debian
[]
serial_device=hvc0
[]
disk_device=xvda
[]
Con esta configuracin podremos generar guests que tengan el mismo sistema operativo que el
anfitrin (en este caso, Debian Squeeze).
Especificar el archivo de particiones.
Xen-tools permite especificar el particionado en un archivo de texto. El paquete trae un archivo de
ejemplo en /etc/xen-tools/partitions.d/sample-server, el cual copiaremos a nuestro directorio de
almacenamiento:
#cp/etc/xentools/partitions.d/sampleserver/media/soporte2/xen
Procedemos a editarlo
#nano/media/soporte2/xen/sampleserver

El archivo es intuitivo y fcil de entender, por lo cual no se explicar en este tutorial.


Crear la mquina virtual.
#xencreateimagehostname=ejemplo\
partitions=/media/soporte2/xen/sampleserver\
ip=192.168.168.200\
memory=2Gb\
arch=amd64\
role=udev\
vcpus=2
Explicacin de algunos parmetros:
--hostame es el nombre del host.
--partitions indica la ruta hacia el archivo de particiones.
--ip es la direccin ip del host.
--memory es la cantidad de RAM asignada.
--arch es la arquitectura
--vcpus es la cantidad de CPUs virtuales asignada a la mquina virtual.
Tambin podramos haberle pasado el parametro --dist para indicarle a xen que instale alguna distro
distinta a la del anfitrin, con lo cual tambin tendramos que haberle pasado el parmetro --mirror
para indicarle el mirror correspondiente a la distro. Para ms informacin sobre las distros
disponibles, mirar el archivo de configuracin de xen-tools (/etc/xen-tools/xen-tools.conf).
En el proceso de creacin de la mquina virtual, se solicitar una contrasea de root.
Una vez finalizado el proceso, procederemos a hacer una copia de respaldo del archivo de
configuracin generado.
#cp/etc/xen/ejemplo.cfg/media/soporte2/xen/domains/ejemplo
Arrancar la maquina virtual.
#xmcreate/etc/xen/ejemplo.cfg
A partir de all podremos acceder via ssh a la mquina virtual.
#sshroot@192.168.168.200
Una vez loggeado, se recomienda crear un usuario sin privilegios para los futuros accesos ssh.
#adduserusuario
Luego, modificar el archivo /etc/ssh/sshd_config
#nano/etc/ssh/sshd_config
[...]
PermitRootLoginno
[...]
AllowUsersusuario
Reiniciamos el servicio ssh

#/etc/init.d/sshrestart
Y nos desloggeamos
#exit
Ahora estamos de nuevo en la consola del anfitrin.
Comandos utilizados frecuentemente.

xm create /<ruta_del_archivo_de_configuracion> - Arranca una mquina virtual.


xm shutdown <nombre> - Detiene una mquina virtual.
xm destroy <nombre> - Detiene una mquina virtual sin darle la orden de shutdown (como
si desconectaramos el cable de alimentacin).
xm list - Lista las mquinas virtuales en ejecucin.
xm console <nombre> - Login en la consola de una mquina virtual.
xm help - Lista todos los comandos.

Virt-Manager
La paravirtualizacin requiere que ambos, husped y anfitrin, estn modificados para tal fin. Si
embargo, a veces esto no es posible. Para virtualizar huspedes sin modificacines haremos uso de
la aplicacin virt-manager, que nos har ms sencillas las cosas.
La misma se ejecuta con un usuario non-root. Podemos usar el usuario que creamos en la
instalacion de debian.
Para que el mismo pueda utilizar el virt-manager hay que agregarlo al grupo libvirt
#adduser<usuario>libvirt
Creamos una carpeta donde se almacenarn las imgenes de disco:
#mkdir /media/soporte2/xen/vmanager
Lo convertimos en propietario de la carpeta:
#chown<usuario>R/media/soporte2/xen/vmanager
Y asignamos los permisos correspondientes a la misma:
#chmod755R/media/soporte2/xen/vmanager
Para que los cambios hagan efecto, reiniciamos el equipo.
Para acceder, vamos a Aplicaciones -> Herramientas del sistema -> Administrador de mquinas
virtuales.

Vamos a Editar detalles del equipo. Una vez all, vamos a la pestaa almacenamiento

Hacemos clic en (+)

En este ejemplo hemos colocado el nombre almacenamiento . Damos clic en Adelante.

Hacemos clic en Explorar. Elegimos la ruta /media/soporte2/xen/virtmanager. Cliec en Finalizar.

Hacemos clic en Nuevo Volumen

En nombre podremos cualquiera a conveniencia. Vamos a hacer un disco de 50 gb, por lo tanto en
Mxima Capacidad pondremos un valor de 50000 MB. En alojamiento colocaremos el mismo
valor.
Repetimos los mismos pasos para cada volumen que deseemos crear.
Ahora mostraremos como ejemplo la virtualizacin de un sistema Windows 2003. Insertamos el CD
y seguimos los pasos que se detallan a continuacin:
Para crear una nueva maquina virtual, vamos al icono que est arriba a la izquierda:

Colocamos un nombre a conveniencia y seleccionamos la opcion Medio de instalacin Local.


Clic en Adelante.

Alli elegiremos Utilice cdrom o dvd


Tipo de SO: Windows
Version 2003
Clic en Adelante

Asignaremos 2 GB de Ram y 2 CPU. Clic en Adelante.

Marcamos la casilla Habilitar almacenamiento para esta mquina virtual


Seleccionamos la opcin Elija administrado, o algun otro tipo de almacenamiento existente
Clic en Explorar

En Storage Pools seleccionamos almacenamiento. En la parte derecha, seleccionamos el archivo


de imagen de disco que hayamos creado anteriormente en el cual deseemos hacer la instalacin.
Clic en Elija Volumen.
Clic en Adelante.

En esta pantalla marcamos las opciones tal y como se muestran en la imagen. Clic en Finalizar.

Si llegase a aparecer algn mensaje de error hay que hacer el siguiente enlace simblico:
#mkdir/usr/lib/xen/bin
#lns/usr/lib/xen4.0/bin/qemudm/usr/lib/xen/bin
Ahora damos clic en Finalizar.
Visualizar el sistema huesped.
Para poder visualizar al sistema huesped, basta con instalar algun cliente VNC. Mi recomendacin
particular: remmina.
#aptitudeinstallremminaremminapluginvnc