Estos días he podido hacer algún experimento más con el sistema de virtualización XEN. En alguna entrada anterior ya se habló en este blog sobre distintas herramientas de virtualización libres. Desde hace bastante tiempo vengo utilizando VirtualBox para utilizar Windows o versiones de 32 bits de Linux; sin embargo hace unos pocos días he vuelto a experimentar con Xen. Entre las ventajas que tiene utilizar Xen en lugar de un sistema de virtualización como VirtualBox destacan el rendimiento, lo sencillo que es manejar a mano los dominios, la posibilidad de permitir que una máquina virtualizada tenga acceso a determinados recursos software. Entre las desventajas habría que destacar que es un poco más complicado comenzar a utilizar y que no existen opciones directas para ejecutar sistemas operativos para otras arquitecturas.

Por supuesto comparte con todas las soluciones de virtualización las ventajas típicas de estos sistemas, como que es más sencillo escalar, que se aprocecha mejor el hardware, etc. Estos nuevos experimentos van encaminados a montar una serie de servidores dentro de una única máquina. Para esto hemos adquirido un ordenador normal equipado con 4Gb de RAM (hay que tener en cuenta que Xen no permite que se ejecuten dominios con más memoria que la que tiene el sistema físicamente). Dentro de esta máquina hemos montado un sistema Xen con los siguientes dominios:

  • dom0: Debian stable. En principio no utilizaremos este dominio para nada
  • ltsp: Ubuntu hardy. Un servidor de terminales basado en el proyecto LTSP que será utilizado para alimentar a varios terminales ligeros.
  • server0: Un servidor para “trasteo” que cuenta con servidor Apache, MySQL, PostgreSQL, etc. enrutado de la red, calidad de servicio, fax, impresora, etc.

Utilizar un esquema como este permite que podamos dimensionar adecuadamente la cantidad que recursos que utiliza cada dominio. En caso de que veamos por ejemplo que ltsp utiliza mucha swap bastaría con aumentar la cantidad de memoria que se le asigna. En caso de que server0 necesite más CPUs se le aumenta el número de CPUs virtuales. Finalmente si el servidor físico no fuera capaz de soportar la carga total de todos los dominios podríamos adquirir otra máquina física y migrar, incluso en vivo si tuviésemos un par de cosas bien hechas, uno de los dominios a la otra máquina física.

Este tipo de esquema hace que sea ideal utilizar un sistema como este para organizar cursos de aprendizaje; es decir en una asignatura como Administración de Sistemas Operativos se podría plantear entregar a cada alumno/grupo una hoja con una serie de necesidades de la organización y un ordenador con bastante RAM y disco y un Linux con xen. La primera parte de la asignatura consistiría en diseñar un sistema de información que sea capaz de cumplir los requisitos (alta disponibilidad, balanceo, etc.) utilizando para ello el número de servidores que fuese necesario, y posteriormente instalar y configurar cada uno de esos servidores dentro de un domU de una máquina con Xen. Evidentemente para esto sería necesario que la asignatura fuera anual y no cuatrimestral; pero sería mucho más útil que estudiar únicamente dos servidores concretos (Active Directory y NIS+NFS cuando la hice yo).

Anuncios