Mostrando entradas con la etiqueta xen. Mostrar todas las entradas
Mostrando entradas con la etiqueta xen. Mostrar todas las entradas

Disponible Xen 4.4

Tras 8 meses de intenso desarrollo la comunidad de Xen anunció la tan esperada nueva release: Xen Project Hypervisor version 4.4. En sacar esta nueva versión, colaboraron empresas tales como AMD, Intel, Oracle y por supuesto Citrix.
La nota con todos los cambios y mejoras efectuados la puedes leer aquí, pero los más destacados son:
  • Soporte grub2 para Xen Project PV Images
  • Soporte experimental para EFI boot
  • Integración entre GlusterFS y Xen
  • Soporte de entornos móviles y mayor integración "en la nube"
  • Soporte para arquitecturas ARM
    • Hipervisor ABI para ARM finalmente estable
    • Disponibilidad de sistemas de 64 bits sobre plataforma ARM
    • Soporte LVM sobre plataforma ARM
Más información en la web oficial: www.xenproject.org
Leer más

Actualización de pyGRUB en máquinas virtuales

pyGrub es un pequeño GRUB, escrito en Python que se instala con las xen-utils en sistemas Debian/Ubuntu y gracias al cual se manejan perfectamente las entradas de GRUB de las máquinas virtualizadas. pyGrub viene siendo la versión virtualizada de GRUB. Se instala y configura automáticamente al terminar la instalación de la máquina virtual y coge por defecto aquellos kerneles que la máquina tenga en el momento de finalizar la instalación. También modifica el fichero de configuración de la misma para indicarle que éste será su gestor de arranque.
...
bootloader = '/usr/lib/xen-default/bin/pygrub'
...
Y la apariencia que tiene es similar a la siguiente,
pyGrub Debian - Xen
Es todo prácticamente igual a lo que ya teníamos de GRUB, pero en un entorno virtual. El problema viene a la hora de actualizar el listado kerneles que tiene el sistema disponible para arrancar. Esta configuración hay que hacerla manualmente, ya que ni el comando update-grub ni update-grub2 son capaces de realizarlo.
Simplemente hay que cambiar el fichero /boot/grub/menu.lst y añadir (o sacar) las entradas que así deseemos. En mi caso, tras pasar una máquina de Ubuntu Lucid a Ubuntu Precise tuve que actualizar el fichero, pasando de ésta configuración,
default   0
timeout   2

title     Ubuntu 10.04 LTS
root      (hd0,0)
kernel    /boot/vmlinuz-2.6.32-46-generic-pae root=/dev/xvda2 ro 
initrd    /boot/initrd.img-2.6.32-46-generic-pae

title     Ubuntu 10.04 LTS (Single-User)
root      (hd0,0)
kernel    /boot/vmlinuz-2.6.32-46-generic-pae root=/dev/xvda2 ro single
initrd    /boot/initrd.img-2.6.32-46-generic-pae
A esta otra,
default   1
timeout   2

title     Ubuntu 10.04 LTS
root      (hd0,0)
kernel    /boot/vmlinuz-2.6.32-46-generic-pae root=/dev/xvda2 ro 
initrd    /boot/initrd.img-2.6.32-46-generic-pae

title     Ubuntu 12.04-3.2-virtual LTS
root      (hd0,0)
kernel    /boot/vmlinuz-3.2.0-41-virtual root=/dev/xvda2 ro
initrd    /boot/initrd.img-3.2.0-41-virtual

title     Ubuntu 12.04-3.2 LTS
root      (hd0,0)
kernel    /boot/vmlinuz-3.2.0-41-generic-pae root=/dev/xvda2 ro
initrd    /boot/initrd.img-3.2.0-41-generic-pae
Tras el cambio, desde el dom0 podemos ejecutar el siguiente comando,
shell> /usr/lib/xen-default/bin/pygrub /dev/vg0/my_domU-disk
que mostrará la apariencia que tendrá el gestor de arranque y también nos servirá para saber si está configurado como queremos.

La entrada Actualización de pyGRUB en máquinas virtuales la puedes leer en Puppet Linux.
Leer más

Qubes OS, aprovechando xen en el escritorio

Hace años cuando comencé a investigar sobre los sistemas de virtualización y más concretamente sobre Xen. Una de las cosas más prometedoras que tenía era la posibilidad de independizar completamente una instancia de las otras, es decir, una máquina del resto. Esto ofrece como era de esperar una gran independencia. El mismo hardware, pero máquinas diferentes, por lo que si una se veía afectada, la otra seguiría estando bien. Las posibilidades eran muchas y muy diferentes, pero los requisitos también eran bastantes.
Sin embargo, hoy descubrí un nuevo proyecto, Qubes OS, que es un sistema operativo basado en GNU/Linux con los parches de Xen y que hace justamente lo descrito con anterioridad, aprovechando todas sus características.

Como los propios creados del sistema lo denominan, Qubes OS es "un sistema operativo diseñado para la seguridad".
Qubes is an open source operating system designed to provide strong security for desktop computing.
El método que ofrece para determinar que cada entorno es lo más seguro posible es la independencia que Xen ofrece para cada una de las máquinas que arranca (5 tipos por defecto) y que todas son accesibles y manejables desde un entorno gráfico.
  • random
    Máquina con datos volátiles para instalaciones y páginas en las que no confiemos al 100%. No almacena ningún tipo de información sensible.
  • social
    Máquina para uso de aplicaciones y acceso a páginas frecuentes. Sí almacena información sensible.
  • shopping
    Dominio virtual pensado para la realización de compras on-line y comercio electrónico.
  • bank
    Máquina con máxima seguridad. Sólo permite navegación HTTPS.
  • corporate
    Máquina que sólo dispone de un cliente VPN para conectarse a la red de la compañía y trabajar remotamente.
Como todo, aunque cada uno de los dominio virtuales esté 100% independiente del otro, el factor humano sigue jugando en contra de la seguridad de los datos que están ahí, lo que sí, es que se consigue una instalación con varias máquinas con diferentes perfiles.
Quizás en próximas versiones incluya una instalación de Windows (previo pago de licencia).
Más información, en su web oficial.
Leer más

XenSource, curioso fallo en debian (xm new)

Si usas XenSource, la versión libre de Xen integrada en el kernel de GNU/Linux quizás esto te haya pasado, así que aquí tienes la solución.
Para arrancar una máquina virtual se suele emplear el comando "xm start machine", sin embargo si deseas reservar espacio para algunas de las máquinas es buena idea emplear el comando "xm new machine" or decirlo de alguna forma, con el parámetro new, Xen lo que hace es aprovisionar la máquina en el sistema, pero no arrancarla, lo que es necesario hacer por ejemplo si empleamos algún interfaz gráfico de administración de Xen.
Sin embargo en la versión estable de Debian, al llamar a dicho comando se obtiene un fallo de librerías no encontradas,
shell> xm new pentest.cfg 
Unexpected error: 

Please report to xen-devel@lists.xensource.com
Traceback (most recent call last):
  File "/usr/lib/xen-4.0/bin/xm", line 8, in main.main(sys.argv)
  File "/usr/lib/xen-4.0/lib/python/xen/xm/main.py", line 3620, in main_, rc = _run_cmd(cmd, cmd_name, args)
  File "/usr/lib/xen-4.0/lib/python/xen/xm/main.py", line 3644, in _run_cmd return True, cmd(args)
  File "", line 1, in 
  File "/usr/lib/xen-4.0/lib/python/xen/xm/main.py", line 1449, in xm_importcommand cmd = __import__(command, globals(), locals(), 'xen.xm')
  File "/usr/lib/xen-4.0/lib/python/xen/xm/new.py", line 26, in from xen.xm.xenapi_create import *
  File "/usr/lib/xen-4.0/lib/python/xen/xm/xenapi_create.py", line 22, in from xml.parsers.xmlproc import xmlproc, xmlval, xmldtd
ImportError: No module named xmlproc
Para poder solucionarlo, hay que instalar una librería de manejo de xml para python, concretamente la python-lxml (en la versión Squeeze de Debian).
shell> apt-get install python-lxml
Tras dicha instalación, debemos dejar el fichero /usr/lib/xen-4.0/lib/python/xen/xm/xenapi_create.py tal como sigue (comentada la línea 22).
...
# from xml.parsers.xmlproc import xmlproc, xmlval, xmldtd
...
Al volver a ejecutar el comando funcionará correctamente, dejando la máquina aprovisionada en el servidor Xen, pero sin comenzar la ejecución de la misma.
Leer más

XenSource, PV drivers para windows

Son muchas las personas que deciden optar por sistemas de virtualización de pago, como puede ser XenServer o VMWare, ya que una de las ventajas que presentan es el conocimiento de la plataforma Windows. Si tienes que virtualizar uno o varios equipos con Windows, estas empresas tiene unos driver's que hacen que el equipo Windows virtual se ejecute con mucho mejor rendimiento que si empleas la versión free de Xen.
Sin embargo si deseas seguir usando Xen como sistema de virtualización, pero quieres mejorar el performance de tus equipos Windows, quizás te interesa saber que existen unos drivers "libres", Xen PV Drivers, que modifican el acceso a disco y la tarjeta de red mejorando notablemente el rendimiento, especialmente en lo que acceso a disco se refiere. Los puedes descargar desde aquí.
Leer más

xen, instalación de máquina windows desde iso

Aunque ya hemos hablado en este blog alguna vez de xen, siempre nos referimos a XenServer, la versión de pago de xen. En este caso vamos a hablar sobre cómo crear una nueva máquina (en este caso Windows XP, pero extrapolable a cualquier otro sistema operativo) en la versión gratuita de xen. En nuestro caso emplearemos la versión de Debian y las xen-utils-common.
Si estamos empleando las xen-tools, la instalación de máquinas debian/ubuntu es muy sencilla, pero con máquinas que precisen de intervención para su instalación (como es el caso de Windows) la cosa se complica. Así que vamos a ver cómo crear el fichero de configuración para que emplee una iso para arrancar y cómo activar VNC para poder interactuar con la máquina durante la instalación.
Antes de comenzar tenemos que preparar el disco sobre el que vamos a realizar la instalación. Como vamos a emplear LVM, creamos un nuevo disco,
shell> lvcreate -L 25G -n windows-disk vg0
Ahora creamos el fichero de configuración,
builder      = 'hvm'
memory       = '1024'
device_model = '/usr/lib/xen-4.0/bin/qemu-dm'

disk         = [ 'phy:/dev/vg0/windows-disk,ioemu:hda,w',
                 'file:/home/javier/win.iso,hdc:cdrom,r'
               ]

name = 'windows'

vif = [ 'bridge=eth0' ]

boot='d'
vnc = 1
vncviewer = 1
vnclisten="192.168.1.2"
sdl = 0
on_poweroff = 'destroy'
on_reboot   = 'restart'
on_crash    = 'restart'
Las partes importantes son las destacadas con negrita, que se refieren al paso de la imagen iso como dispositivo cdrom de entrada al Windows. También se le indica que arranque desde el dispositivo d (boot='d') y que permita una conexión vnc a la IP del servidor xen. Tras tener el fichero de configuración listo, arrancamos la máquina.
shell> xm create windows.cfg
Ahora ya se podrá acceder vía vnc a la pantalla de la máquina, para proceder con la instalación. Cuando ésta termine, será aconsejable deshabilitar la conexión vnc, el cdrom virtual (si no se va a emplear) e indicar que arranque desde el disco C (disco duro 'local'). Quedaría entonces tal que así,
builder      = 'hvm'
memory       = '1024'
device_model = '/usr/lib/xen-4.0/bin/qemu-dm'

disk         = [ 'phy:/dev/vg0/windows-disk,ioemu:hda,w' ]

name = 'windows'

vif = [ 'bridge=eth0' ]

boot='c'
sdl = 0
on_poweroff = 'destroy'
on_reboot   = 'restart'
on_crash    = 'restart'
Leer más

lvm + xen, la combinación perfecta

La importación actual de lvm es tal, que está presente para poder ser usada incluso como particiones en sistemas de vurtualización, tales como xen o virtualbox. La versión xen gratuita, en sistemas debian/ubuntu, gracias al script xen-create-image puede crear nuevos volúmenes lógicos en un grupo y usarlos para la instalación del nuevo sistema operativo.
shell> xen-create-image --lvm=vg0 \
--hostname=syslog-server \
--memory=512M \
--ip=192.168.1.100 \
--role=udev
El resultado final es una fichero de configuración de la nueva máquina sobre el que se puede observar cómo las particiones están presentes sobre volúmenes lógicos y no sobre ficheros en disco, consiguiendo así un mayor rendimiento.
Leer más

Comandos interesantes: xentop

xentop es una herramienta de monitorización de dominios cero (dom 0) que, al igual que top, permite observar en tiempo real los cambios que se van produciendo en las máquinas virtuales así como en el dom 0. Está disponible tanto para XenServer como para xen no comercial.
shell> xentop
xentop - 11:13:29   Xen 4.0.1
6 domains: 1 running, 5 blocked, 0 paused, 0 crashed, 0 dying, 0 shutdown
Mem: 10485140k total, 10476364k used, 8776k free    CPUs: 4 @ 1995MHz
NAME     STATE  CPU(sec) CPU(%) MEM(k)  MEM(%) MAXMEM(k) MAXMEM(%) VCPUS NETS ...
apache   --b---  78413   0.1    2093312 20.0   2097152   20.0      1     1    ...
dhcp     --b---  30969   0.0     258304  2.5    262144    2.5      1     1    ...
Domain-0 -----r 260649   4.1    4625408 44.1   no limit  n/a       4     0    ...
mysql    --b---  85804   0.2    2093312 20.0   2097152   20.0      1     1    ...
puppet   -----r 171038   0.5     258304  2.5    262144    2.5      1     1    ...
win      --b---  94523   7.0    1052640 10.0   1052672   10.0      1     1    ...

Leer más

Formulario de contacto

Nombre

Correo electrónico *

Mensaje *

Últimos comentarios