domingo, 11 de enero de 2009

VirtualBox vela por tu memoria RAM

En estas últimas semanas ando de un virtual que no veas. Sólo me falta crear un personaje en Second Life, que de profesión sería, sin duda alguna, freelance blogger a tiempo completo ;-) .

No, fuera bromas, lo digo porque últimamente me ha dado bastante por el tema de la virtualización. Todo ha venido porque he querido crearme una especie de laboratorio o mini entorno de desarrollo de software en el PC de casa. Ahora mismo escribo desde un Windows XP que lo tengo bastante configurado para un uso doméstico habitual: acceso a Internet, ofimática de bajo nivel y descargas P2P. Un uso típicamente doméstico, ¿no?

El tema es que no quiero "destrozar" y "contaminar" este entorno doméstico instalando Eclipse, Visual Studio 2008 y otra serie de millones de herramientas necesarias que acabo instalando en mi día a día como desarrollador. ¿La solución? Como diría aquel, en cinco palabras: VIR-TUA-LI-ZA-CIÓN. ¿O serían seis? VIR-TU-A-LI-ZA-CIÓN. Bueno, da lo mismo, a lo que íbamos...

Esta perra que me ha entrado con la virtualización está sirviéndome para ir descubriendo una poderosa herramienta de la que supe hace algún tiempo gracias a Josu, uno de los "fijos" del blog. VirtualBox está consiguiendo que poco a poco me vaya olvidando de VMWare, cuya licencia, en el caso de utilizar VMWare Workstation (para crear las imágenes tú mismo), no es gratuita. Con este cambio de plataforma de virtualización he matado dos pajarracos de un tiro: por un lado, soy más legal al no utilizar VMWare Workstation de manera digamos alegal, y por otro, empiezo a conocer las entrañas de VirtualBox, cuya licencia me permite su uso de forma gratuita para fines personales, todo un lujo.

Total, que este afán virtulizador ha logrado que a día de hoy, tenga dos máquinas virtuales recién configuradas en mi máquina física: una la tengo con Ubuntu 8.04 (sí, actualizaré a 8.10, codenamed Intrepid Ibex), preparada para Eclipse y toda su tropa, y en otra tengo Windows XP Professional, donde irán a parar Visual Studio 2008 y sus compinches.

El funcionamiento y rendimiento de las máquinas virtuales, por norma general, y como es lógico, suele resultar, a veces, bastante lento. La memoria RAM necesaria para arrancar y albergar la máquina virtual en la parte host sumada a la memoria asignada a la parte guest, a la parte virtual, consumen gran parte de los recursos de la memoria RAM física. Si además estas máquinas virtuales tienen que correr IDEs pesados como los descritos, la cosa se complica. De entrada, no creo que sea suficiente con los 192 MB de RAM que VirtualBox nos recomienda en la creación de una nueva máquina virtual:

Sé que podríamos correr sistemas operativos en 192 MBytes de RAM (en el curro tenemos un SQL Server en una máquina virtual con sólo 256 MB de RAM asignados), pero tampoco es plan de que nos adelanten los caracoles, ¿no?

Ni de coña, a mí no me adelanta ni Críspulo, así que pongamos memoria RAM de forma generosa a la configuración de la máquina virtual que correrá XP Professional. Por ejemplo, sabiendo que vamos a tener que instalar un monstruo como Visual Studio 2008, para moverlo bien, vamos a a asignar más de un 1GB de RAM a esta máquina virtual.

¿Eiñ? ¿Por qué está el botón de "Siguiente" inhabilitado? ¡Si el máximo prefijado está en 3584 MB de RAM a los que no llego ni de lejos! Espera a ver, voy a bajar un poco la RAM...

¡Qué cabrón el jodío! Pues sí, VirtualBox no me deja, en esta etapa de configuración inicial, asignar más de 1016 MB de RAM a la máquina virtual.

Una vez he instalado XP en la máquina virtual, apago la máquina y echo un vistazo de nuevo a la configuración realizada. ¿Cómorrrr?


¿En la configuración inicial me deja asignar 1016 MB y ahora se queja y me suelta un "Continue at your own risk" que no me inspira nada de confianza? ¡Aaamigo! Por el mensaje, la cuestión es que VirtualBox vela por la seguridad y óptimo funcionamiento de nuestro sistema en su conjunto, para lo que aconseja no asignar a una máquina virtual más del 50% de la memoria RAM física de la máquina.

En teoría, en un mundo perfecto, con los 2 GB (2048 MB) de RAM que tengo, el límite de memoria RAM a asignar a la máquina virtual debería estar en 1023 MB (2048/2 -1), aunque tod@s sabemos que los cálculos en megas y bytes no suelen ser demasiado exactos (no hay más que mirar las velocidades de banda ancha que publicitan algunas operadoras y luego no cumplen). Es un simple mensaje de advertencia, a priori no pasa nada por asignar a la máquina virtual más del 50% de la memoria RAM física, pero como buen chico que soy, finalmente he seguido la recomendación y he dejado la máquina virtual configurada con 1011 MB de RAM, cifra más alta con la que desaparece "el mensaje de la muerte" ;-).

Cuando instale VS2008 en una máquina y Eclipse en la otra, ya os diré qué tal tiran las virtual machines con 1011 MB de RAM pelaítos. Y vosotros, ¿cuánta memoria soléis asignar a las máquinas virtuales? ¿Creéis que con 1 GB seré capaz de mover por un lado Ubuntu con Eclipse y por otro, XP con VS2008? Lo veremos en próximos capítulos, digo posts ;-).

SaludoX.


6 comentarios:

Unknown dijo...

Yo hace mucho que no juego nada con esto de la virtualización, pero me sigue interesando mucho.

Seguiré con interés tus aventuras.

Anónimo dijo...

Yo soy un fan total de la virtualizacion y desde hace tiempo uso VMware, que esta "muy logrado".

Una aclaracion: no hace falta VMWare Workstation para ser legal con el VMPlayer y http://www.ffnn.nl/pages/articles/linux/vmware-player-image-creation.php puedes crear todas las imagenes que quieras legalmente.

Respecto a VirtualBox, no lo conocia y lo que he leido (http://blogs.zdnet.com/BTL/?p=8880 ) no me parece que sea mejor.

Para un usuario basico, el tema del rendimiento es fundamental!!! Me gustaria ver una comparacion...

Pero un usuario exigente podria querer hacer funcionar Mac OSX en un PC usando VirtualBox (parece que no se puede (http://www.virtualbox.org/wiki/Guest_OSes), sin embargo con vmware puedes hacerlo (http://wiki.osx86project.org/wiki/index.php/Vmware_how_to)

En definitiva, con lo bien que funciona VMware no me planteo provar VirtualBox (ya veremos si oigo cosas mejores que me hagan cambiar de opinion).

Anónimo dijo...

@Josu, no sé cuándo, pero prometo que habrá más aventuras virtuales, y de las buenas ;-).

@Manu, muchísimas gracias por el buenísimo tip que te marcas. Sinceramente, no sabía que sólo con VMPlayer se podían crear máquinas virtuales. Visto lo visto, me parece que a más de un@ le voy a dar un bonito tirón de orejas por utilizar VMWare Workstation en plan piratilla ;-).

Una de las ventajas que tiene VirtualBox es que te puedes crear máquinas virtuales sin restricciones (para uso personal), por tanto no tienes que andar con workarounds como ése que comentas para VMWare Player.

En cuanto a rendimiento, te puedo asegurar que VirtualBox no va nada mal. De hecho, en la comparativa que apuntas ponen a la par a VMWare y VirtualBox. En definitiva, yo, siendo más cómodo crear máquinas virtuales con VirtualBox, me quedo con VirtualBox. Cada maestrillo tiene su librillo ;-).

A ver si sigo cacharreando con mis dos maquinitas virtuales y puedo ahondar un poco en el tema, que parece que interesa.

SaludoX.

Anónimo dijo...

Me apunto todo lo que comentáis. Yo he usado máquinas de VMWare y VirtualPC en el trabajo, y de VirtualBox en casa, y la verdad es que me quedo con este último, precisamente por las ventajas que comentas y por la sensación de que trabajas con algo de forma legal (ya sabéis aquello de "si eres legal, eres legal", claro :P ).

En fin, el caso es que parece que me queda bastante por explorar. Desconocía la "guardería" que lleva a cabo VirtualBox respecto a la RAM, aunque es cierto que aún uso el VirtualBox pre-Sun y no sé si en esa compilación lo incluye, tendré que mirarlo.

Por cierto, hablando de virtualizaciones... ¿Alguno ha probado la beta de Windows 7 en una máquina virtual? ;)

¡Salud!

Anónimo dijo...

Precisamente ayer por la tarde conseguí instalar Windows 7 Beta en una máquina virtual bajo VirtualBox. Pronto habrá post con imágenes, y por supuesto, con las primeras impresiones ;-).

SaludoX.

Anónimo dijo...

yo tambien acabo de instalar w7 home en ubuntu10.01 y me va de p.... m..... Ya ire probando mas cosas y os comento