InicioLinuxVirtualización Xen c/ Debian Squeeze desde cero Actualizado

Virtualización Xen c/ Debian Squeeze desde cero Actualizado

Linux12/14/2011



Hola Taringueros! les dejo un tutorial donde describo los pasos que seguí para realizar desde cero la instalación de Xen en Linux.

Los pasos básicos son:

Paso 1: Instalar el sistema operativo
Paso 2: Instalar Xen
Paso 3: Configurar el booteo
Paso 4: Terminar de configurar Xen
Paso 5: Crear una máquina virtual



Paso 1: Instalar el sistema operativo

El sistema operativo que utilicé es debian 6.0.2.1 Squeeze de 64 bits (amd64) con entorno Lxde. El entorno gráfico es útil en el caso en que deseen utilizar alguna herramienta gráfica para gestionar las máquinas virtuales (crear, borrar, iniciar, parar, etc.).



Aquí en T! hay un buen tutorial de @DarkGnuX que muestra paso a paso la instalación de Debian Squeeze. Link:

Una vez instalado el sistema operativo, se deben agregar los repositorios necesarios para poder instalar Xen. Para ello se debe editar el archivo sources.list por ejemplo desde un terminal logueados como root escribir el comando

nano /etc/apt/sources.list

y agregar por ejemplo las líneas

deb http://ftp.fr.debian.org/debian/ squeeze main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ squeeze main contrib non-free


(no olvidar comentar o borrar la línea cd rom)

Luego guardar los cambios y ejecutar

apt-get update



Paso 2: Instalar Xen

Para instalar Xen ejecutar desde la terminal:

apt-get install xen-linux-system xen-utils xenstore-utils xen-tools


Luego editar el archivo /etc/xen/xend-config.sxp de la siguiente manera:

comentar la línea:

(network-script network-dummy)

descomentar las líneas:

(network-script network-bridge)
(vif-script vif-bridge)
(dom0-min-mem-196)
(dom0-cpus 0)



para crear máquinas virtuales basadas en imagen asegurarse que /etc/modules tenga la línea

loop max_loop=64

Luego ejecutar

apt-get install libvirt-bin virtinst bridge-utils

y reiniciar



Paso 3: Configurar el booteo

Al ejecutar uname -r el nuevo kernel xen debería mostrar por ejemplo
"2.6.32-5-xen-amd64"

escribir en la terminal xm dmesg y si se tiene la siguiente salida

"WARNING! Can't find hypervisor information in sysfs!
Error: Unable to connect to xend: No such file or directory. Is xend
running?"


Significa que se está corriendo sobre un kernel xen pero no en el hypervisor, esto quiere decir que no se pueden crear máquinas virtuales. Para cambiar esto, se debe modificar el orden de booteo.

En Debian Squeeze se dispone de GRUB2 por lo que /boot/grub/menu.lst se reemplaza por /boot/grub/grub.cfg. Se debe ver cual es la entrada del kernel correcto con el comando

grep menuentry /boot/grub/grub.cfg

por ejemplo, el kernel que se debe usar es
“Debian GNU/Linux, with Linux 2.6.32-5-xen-amd64 and XEN 4.0-amd64”
y está en la posición 4.

Editar /etc/default/grub para cambiar la entrada por defecto

GRUB_DEFAULT=4

actualizar el grub y reiniciar

update-grub
reboot


Luego de reiniciar se debe comprobar nuevamente que está ejecutando el hypervisor con el comando

xm dmesg

entonces si se obtiene algo como

"(XEN) Xen version 4.0.1 (Debian 4.0.1-2) ([email protected]) (gcc version 4.4.5 (Debian 4.4.5-
10) ) Wed Jan 12 14:04:06 UTC 2011
(XEN) Bootloader: GRUB 1.98+20100804-14
(XEN) Command line: placeholder
...
...
(XEN) Freed 176kB init memory."


significa que el hypervisor está corriendo.



Paso 4: Terminar de configurar Xen

Para crear máquinas virtuales se utiliza la herramienta xen-tools.
El archivo /etc/xen-tools/xen-tools.conf contiene valores por defecto que son usados al crear máquinas virtuales.

Crear el directorio xen para almacenar las imágenes de las máquinas virtuales. Por ejemplo puede crearse en el directorio /home

mkdir /home/xen

se debe especificar el directorio recién creado en el archivo de configuración xen-tools.conf

este es mi archivo de configuración:

[...]
dir = /home/xen
[...]
# lvm = vg0 #debe estar comentado si se crean mv basadas en imágen
[...]
dist = `xt-guess-suite-and-mirror --suite` # Default distribution to install.
[...]
gateway = 192.168.0.1
netmask = 255.255.255.0
broadcast = 192.168.0.255
#si no se especifica un gateway y netmask y en la línea de comandos tampoco
#se especifican, el guest no tendrá red aún especificando una dirección ip en la
#línea de comandos
[...]
passwd = 1 #hace que solicite una contraseña para root al crear un dominio
[...]
kernel = /boot/vmlinuz-`uname -r` #xen 4.0 permite que se usen kernels no xen
initrd = /boot/initrd.img-`uname -r`
[...]
mirror = `xt-guess-suite-and-mirror --mirror`
[...]
serial_device = hvc0 #default
[...]
disk_device = xvda #default
serial_device = hvc0 #si no se especifica este parámetro, las mv pueden no
#bootear correctamente
mirror = http://ftp.fr.debian.org/debian/
disk_device = xvda #hace que los discos virtualizados se denominen xvda1, xvda2,
#etc. Esta configuración es correcta para un guest Debian Squeeze; cuando guests
#Ubuntu usan un kernel no xen,puede no bootear, pero esto puede sobreescribirse
#incluyendo --scsi en el comando xen-create-image en este caso, los discos
#virtualizados se llamarán sda1, sda2, etc.


cuando Xen se apaga o se reinicia, trata de salvar el estado de las redes dom. Para evitar problemas en los casos que la pc se reinicia se deben editar algunas líneas en /etc/default/xendomains.

Agregar lo siguiente:

XENDOMAINS_RESTORE=false
XENDOMAINS_save=””


En /etc/xen/xend-config.sxp habilitar el network bridge descomentando la línea existente para
habilitarlo:
(network-script 'network-bridge antispoof=yes')

luego ejecutar

chmod +x /etc/xen/scripts/*

y después reiniciar



Paso 5: Crear una máquina virtual

Para crear una máquina virtual se debe ejecutar desde un terminal

xen-create-image --hostname=nombremv --size=5Gb --swap=256Mb --ide --ip=192.168.0.11 --netmask=255.255.255.0 --gateway=192.168.0.1 --force --dir=/home/xen --memory=128Mb --arch=i386 --kernel=/boot/vmlinuz-2.6.26-2-xen-686 --debootstrap --dist=lenny --mirror=http://ftp.fr.debian.org/debian/ --passwd

en este comando se asigna el hostname, tamaño de disco duro, cantidad de swap, tipo de disco, dirección ip, netmask, gateway, el directorio donde instalarla, ram, arquitectura, kernel para usar, método de instalación, distribución, mirror para descargar y por último, que nos pregunte la pass de root cuando termine de instalar. Estos parámetros se pueden cambiar según los requerimientos.

Si no se especifica algún dato como parámetro, se utilizan los parámetros del archivo /etc/xen-tools/xen-tools.conf

Crear la instancia de la maquina virtual con

xm create /etc/xen/nombremv.cfg

donde nombremv es el nombre de la máquina virtual.

Para que la máquina virtual reinicie en el próximo booteo del sistema ejecutar

mkdir /etc/xen/auto
ln -s /etc/xen/nombremv.cfg /etc/xen/auto



Ya tenemos instalado Xen y se tenemos creada una máquina virtual!!!!

Comandos útiles

Ver las máquinas virtuales que están corriendo

xm list

Crear la instancia de la maquina virtual (carga la máquina virtual)

xm create /etc/xen/nombremv.cfg

Mostrar las máquinas virtuales en tiempo real

xm top

Apagar la mv

xm shutdown /etc/xen/nombremv.cfg
o también se puede usar
xm shutdown nombremv

Apagar la máquina virtual de forma forzada (no borra la maquina. Es como desconectarle la energia)

xm destroy /etc/xen/nombremv.cfg
o también se puede usar
xm destroy nombremv

Cambiar la cantidad de memoria (ajusta la cantidad de memoria que puede utilizar la máquina virtual en caliente)

xm mem-set

Ingresar a una máquina virtual desde la consola

xm console nombremv


Por último, para gestionar nuestras máquinas de forma más cómoda lo podemos hacer gráficamente usando Xenman

instalar Xenman con

apt-get install xenman

se puede abrir Xenman ejecutando con el usuario root el comando

convirt





Bueno amigos esto es todo!!!

espero que les sea de mucha ayuda este post que es mi primer post

Dudas o ayuda mandame un mensaje
Seguime si te gustó mi aporte
A favoritos si querés volver!


Gracias @k3ch0o por las barras separadoras!!

Datos archivados del Taringa! original
93puntos
3,157visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
3visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

T
TitaGlamour🇦🇷
Usuario
Puntos0
Posts3
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.