Crear y manejar máquinas virtuales Xen
- Instalar Xen Tools (xen-tools.org, paquete xen-tools): las Xen Tools son una serie de scripts que facilitan la administración de máquinas virtuales Xen.
- Crear la imagen de un domU: para crear la imagen de un nuevo domU el comando es:
# xen-create-image --hostname xen01 --ip 192.168.0.130- --hostname: nombre del nuevo dominio.
- --ip: dirección IP del nuevo dominio.
Este comando hace bastantes cosas:
- creará la imagen de xen01 en /home/xen/domains/xen01/disk.img, con formato ext3.
- creará la swap en /home/xen/domains/xen01/swap.img
- instalará el sistema mediante debootstrap (igual que chroot) usando el mirror seleccionado.
- nos pedirá un password para root y creará en xen01 los mismos usuarios que tiene dom0.
- creará el fichero de configuración /etc/xen/xen01.cfg que se usará para activar xen01.
El archivo imagen del nuevo dominio /home/xen/domains/xen01/disk.img es la imagen de un sistema de ficheros, por lo que puede montarse y comprobarse su contenido:
# mount -o loop /home/xen/domains/xen01/disk.img /mntVemos que tiene la estructura completa de un sistema Linux de tamaño reducido:
# ls /mnt bin dev home lib media opt root srv tmp var boot etc initrd lost+found mnt proc sbin sys usr # df /mnt S.ficheros Bloques Usado Dispon Uso% Montado /home/xen/domains/xen01/disk.img 4128448 388268 3530468 10% /mnt
Para comprobar que el nuevo dominio ha sido creado y su configuración:
# xen-list-images Name: xen01 Memory: 128 IP: 192.168.0.130
El comando que crea las imágenes de los nuevos dominios (xen-create-image) utiliza el archivo de configuración /etc/xen-tools/xen-tools.conf, que contiene los parámetros comunes a todos los domU que creemos (en la línea de comandos sólo pondremos los parámetros específicos de cada dominio, --hostname y --ip). Su contenido será similar a:
# Directorio por defecto para las imágenes dir = /home/xen # Método para obtención de los paquetes debootstrap = 1 # Opciones de disco y tamaño size = 4Gb # Disk image size. memory = 128Mb # Memory size swap = 256Mb # Swap size fs = ext3 # Use the ext3 filesystem for the disk image. dist = etch # Default distribution to install. image = sparse # Specify sparse vs. full disk images. # Configuración de red gateway = 192.168.0.1 netmask = 255.255.255.0 # Establecer password para root al crear la imagen passwd = 1 # Mismos usuarios que dom0 accounts = 1 # Kernel para el nuevo dominio kernel = /boot/vmlinuz-`uname -r` initrd = /boot/initrd.img-`uname -r` # Mirror a utilizar por debootstrap mirror = ftp://ftp.rediris.es/debian/
- Activar un domU: una vez creados los ficheros de imagen y swap del nuevo dominio
usaremos el comando xm (Xen management user interface) para activarlo:
# xm create xen01.cfg Using config file "/etc/xen/xen01.cfg" Started domain xen01El comando xm utiliza el archivo de configuración /etc/xen/xen01.cfg que se generó al crear la imagen del dominio y cuyo contenido será similar a:
# Configuration file for the Xen instance xen01, created # by xen-tools 3.7 on Fri May 18 00:19:16 2007. # Kernel + memory size kernel = '/boot/vmlinuz-2.6.18-5-xen-686' ramdisk = '/boot/initrd.img-2.6.18-5-xen-686' memory = '128' # Boot device root = '/dev/sda2 ro' # Storage devices disk = ['file:/home/xen/domains/xen01/swap.img,sda1,w', 'file:/home/xen/domains/xen01/disk.img,sda2,w'] # Hostname name = 'xen01' # Networking vif = [ 'ip=192.168.0.130,mac=00:16:3E:9C:64:6E' ] # Behaviour on_poweroff = 'destroy' on_reboot = 'restart' on_crash = 'restart'
Para comprobar que el nuevo dominio funciona:
# xm list Name ID Mem(MiB) VCPUs State Time(s) Domain-0 0 875 2 r----- 4135.2 xen01 2 128 1 -b---- 4.5 # ping 192.168.0.130 PING 192.168.0.130 (192.168.0.130) 56(84) bytes of data. 64 bytes from 192.168.0.130: icmp_seq=1 ttl=64 time=0.206 ms ... # ssh [email protected] [email protected]'s password: ***** francis@xen01:/$
- Manejar un domU
Para abrir un shell e iniciar sesión en el nuevo dominio:
# xm console xen01 Debian GNU/Linux 4.0 xen01 tty1 xen01 login: francis Password: ***** francis@xen01:/$
Para comprobar que la red está correctamente configurada haremos algunos ping (xen01 tendrá los mismos servidores DNS que dom0, de lo contrario los añadiremos a /etc/resolv.conf):
$ ping 192.168.0.1 PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data. 64 bytes from 192.168.0.2: icmp_seq=1 ttl=64 time=1.206 ms ... $ ping 80.58.61.250 PING 80.58.61.250 (80.58.61.250) 56(84) bytes of data. 64 bytes from 80.58.61.250: icmp_seq=1 ttl=119 time=38.2 ms ... $ ping www.orange.es PING a443.x.akamai.net (194.224.66.105) 56(84) bytes of data. 64 bytes from 194.224.66.105: icmp_seq=1 ttl=55 time=41.6 ms ...
Para salir de la consola del domU:
francis@xen01:/$ <Ctrl + AltGr + ]> root@asterix:/#Para apagar el dominio xen01:
# xm shutdown xen01Atención
Si hacemos shutdown sobre dom0 se apagarán todos los dominios.
Deja un comentario
