jueves, marzo 20, 2008

La virtualización no es el camino, por ahora

Llevo dos días tratando de poner a punto un sistema de virtualización sobre Debian, pero llego el momento de rendirme, debido a que hasta el momento en ninguno de los programas que he usado (o intentado usar), he podido virtualizar ningún sistema operativo de forma exitosa. Empezaré por describir la situación, haber si alguien puede darme luces:

Hasta hace unos días usaba la versión 2.6.17.7 de Linux, sin ningún problema. Había estado usando qemu como mi sistema de virtualización, pero estaba un poco descepcionado respecto al desempeño del mismo, pues el consumo de recursos era bastante grande. De hecho las primeras pruebas (realizadas con Minix, Fedora y Windows XP) no fueron muy alentadoras. Y finalmente dejé de usarlo, pues bajo la versión de kernel mencionada arriba, no fué posible cargar el módulo kqemu y no pude probar las bondades de dicho acelerador, Intente después con VirtualBox, pero la instalación me arrojó varios errores y el módulo vboxdrv tampoco lo pude cargar, con dicha versión del kernel.

Hace unos días, probé el VMWare server, pues lo había visto ejecutándose en la empresa en donde trabajo y me pareció que tenía un buen desempeño, en máquinas muy similares a la mía. Sin embargo, cuando lo instalé, el consumo de recursos fué excesivo, de hecho no pude trabajar en otras aplicaciones mientras estaba instalando Solaris en la máquina virtual. Todo esto me puso de mal humor y a pensar que posiblemente recompilando una versión más reciente del kernel podía utilizar kqemu y VirtualBox. Decidí finalmente compilar la última versión estable (2.6.24.3), lo cual me permitió hacer algunos ajustes y realmente después de la compilación, algunos problemas que tenía se solucionaron. Una vez cargado el nuevo kernel, pude utilizar kqemu, pero el desempeño no fué notable, de hecho no observé ninguna diferencia notable entre usar qemu a secas y kqemu.

Proseguí a instalar VirtualBox, lo cuál fué muy sencillo, pero hasta el momento no he logrado arrancar la máquina virtual, pues obtengo el siguiente error:

==================================================

Assertion failed: [mIPCSem >= 0] at '/home/vbox/vbox-1.5.6/src/VBox/Main/MachineImpl.cpp' (8058) in nsresult SessionMachine::init(Machine*).
Cannot create IPC semaphore, errno=38.
Please contact the product vendor!.


===================================================

Y tras hacer una búsqueda exhaustiva en internet (más de 6 horas seguidas) lo único que encontré fué el reporte del bug, que aún no se ha solucionado. En la FAQ de VirtualBox, comentan que el programa no trabaja con kernels que tengan activado el tickless timer support (CONFIG_NO_HZ en el .config), cosa que activé en mi kernel. Seguí las instrucciones de desactivación y cargue del módulo, pero tampoco, el error emergió de nuevo y la solución cada vez es más confusa. Por el momento, compraré otro disco duro e instalaré nativamente el sistema que necesite, mientras termino de compilar el VirtualBox, haber si de alguna forma lo hago funcionar.

2 comentarios:

pchamorro dijo...

Ya salió la última versión de VirtualBox. Quizá ahora si funcione. ¿Porqué no vmware?

Pablo

jpromerobx dijo...

Logré la configuración adecuada de VirtualBox para las necesidades de virtualización. No utilizo VMWare, por ser una solución cerrada y además porque VirtualBox me proveé un entorno sencillo y rápido. Probaré Xen en estas semanas, para tener un criterio comparativo menos difuso.