Bien, bien, bien...Pos akí estamos de nuevo queridos amigos/as. Esta vez para hacer una comparativa entre 5 de las soluciones comerciales de virtualización más extendidas en el mundo corporativo.
En este nuestro tercer artículo, hablaré en detalle sobre qué ofrece cada producto, y en qué tecnología de las ya vistas en anteriores artículos está basado cada uno de ellos.
Así que sin más que decir, al tajo!
Con motivo de los cambios tan radicales en el mundillo de la virtualización a lo largo de todo el año pasado, donde destacó sin duda la noticia sobre
la disponibilidad de VMWare Server de modo gratuito, voy a haceros un pequeño resumen de soluciones de virtualización.
Aunque todos lo sabemos ya a estas alturas, recordemos brevemente que implica el hecho de usar una
máquina virtual.
Muy a grandes rasgos, una máquina virtual es aquella que permite un entorno de ejecución emulando el hardware de la máquina sobre la cual corre (ver Imagen 1). Es una definición muy elemental, pero válida (ya sabéis que si queréis información más detallada podéis revisar los artículos anteriores sobre virtualización, aunque en el enlace anterior de la Wikipedia también podéis ampliar información a este respecto).

Imagen 1. Arquitectura de virtualización sobre plataforma Intel
La virtualización permite obtener una capa de abstracción en la que el hardware físico y el sistema operativo estén lógicamente separados (ver
Imagen 2), de forma que sean totalmente independientes, lo cual proporciona numerosas ventajas.
Imagen 2. Aislamiento de máquinas virtuales
Como ya hemos ido desgranando (y seguiremos viendo en los artículos que restan) y explicando en los artículos anteriores, ya sabemos que soluciones de virtualización existen muchas.
También sabemos muchas de las ventajas que unas ofrecen respecto a las otras, pero lo primero que habría que preguntarse es ¿para qué sirve una máquina virtual? ¿qué utilidad puede tener para mí? ¿qué ventajas tiene?
Justificación de la virtualización
Sabemos ya que las máquinas virtuales suelen encapsularse en ficheros, lo cual otorga una importante flexibilidad a los despliegues, ya que el guardado, copia o eliminación de los archivos de discos duros virtuales (virtual hard disk files) es rápido, cómodo y sencillo (ver Imagen 3).
Imagen 3. Manejo de archivos de máquinas virtuales.
Por tanto, podemos deducir dos importantes ventajas: flexibilidad, y escaso o nulo tiempo de recuperación ante un eventual y nunca deseado caso de Disaster Recovery, error inesperado del sistema, caída total del servicio, o MARRONAZO DE CAGARSE POR LA PATA BAJA.
Ahora bien queridos amigos, no temáis al malware, somos más fuertes y además somos más. Con la virtualización, EL MARRÓN SE VA A ACABAR.
NOWADAYS, A NEW ERA IS HERE. TECHNOLOGY'S BROWNIE PROBLEMS GOING TO DIE.
Por otro lado, las máquinas virtuales pueden contener sistemas de muy distintos tipos: en una misma máquina física pueden convivir diferentes máquinas virtuales con sistemas Windows, Linux, BSD, Solaris, ........ Todas las que queramos siempre que nuestra memoria RAM física sea la suficiente como para permitirnos arrancar todas simultáneamente y mantener todas en producción a la vez, sin necesidad de parar ninguna, brindando servicio ininterrumpido.
Del punto anterior, aparecen de nuevo dos ventajas más: bajo coste, y aprovechamiento óptimo de los recursos.
Pero la separación entre lo físico y lo virtual permite obtener otras ventajas. La principal es la seguridad, ya que las máquinas virtuales sólo pueden comunicarse con otras máquinas virtuales y con el exterior a través de conexiones apropiadamente configuradas.
Esto hace ideales a las máquinas virtuales como entornos de pruebas aislados, ya que es posible por ejemplo contaminar o envenenar un sistema (
aquí aprenderéis sobre envenenamientos varios) y observar su comportamiento con el objetivo de conocer su nivel de seguridad.
Evidentemente, y como ya habéis podido leer en los sucesivos artículos, las ventajas son innumerables, y podríamos tirarnos aquí horas y horas hablando de ventajas, de posibilidades hasta ahora desconocidas que nacen por el hecho de aplicar tecnología de virtualización en nuestra infraestructura.
Por ello, vamos entonces ya a entrar de lleno a ver las 5 soluciones de virtualización más implantadas en la actualidad, y lo bueno que tienen unas respecto a otras.
Las cuatro más uno fantásticas
(jejeje... que si no, no salían 4... -es la parida del día-)
Disclaimer: Los criterios descritos así como sus posibles características, son únicamente motivo de mi experiencia personal. No tienen por qué representar, en ninguno de los casos, las condiciones de un entorno real concreto para cada uno de las millones de posibilidades aplicables a la hora de virtualizar. Es obvio y evidente, que estas cinco elecciones no tienen porqué ser (aunque deberían, jejeje...) tus favoritas o las que emplees, ni tienen porqué ser necesariamente las más populares o utilizadas para tí (pero lo son y lo sabes).
Vamos allá

Sin lugar a dudas, es la solución más popular y extendida (The Bitch Boss). Goza de una alta reputación en el mundo empresarial, no sólo por su calidad, sino por un excelente servicio de soporte de la compañía.
Ventajas: Solidez, estabilidad, seguridad y soporte del fabricante ejemplar. Admite drivers del entorno emulado.
Desventajas: Alta dificultad de implementación para usuarios con escasas nociones, soporte en español difícil de encontrar (intentaré que aquí podáis encontrar toda la posible), el gestor de máquinas virtuales tiene un rendimiento mediocre a menos que uses un hardware muy potente. Su código es propietario.
Conclusión: Si quieres la versión guapa que se ejecuta directamente sobre el hardware sin necesidad de SO (ESX, la cual se basa en tecnología hypervisor), has de pasar por caja (con la friolera de 3.000 € por procesador). Decir la frase de que vale lo que pagas sería justificable (no olvidemos que estamos hablando del Bitch Boss), pero si fuera más barato molaría más ¿o no? ;)
2. Virtuozzo

Si bien es cierto que no goza de la popularidad del primero, es un producto muy en la línea de VMware, con una aceptación cada vez mayor, sobre todo a raíz de la liberación de la versión gratuita, OpenVirtuozzo.
Ventajas: Seguridad, escalabilidad y disponibilidad interesantes.
Desventajas: Soporte difícil de encontrar, rendimiento mediocre bajo ciertas circunstancias; obliga a que los sistemas sean idénticos una vez escogido el modelo a virtualizar. No es GPL. No admite drivers del entorno emulado.
Coste: Variable en función del producto. También existe una versión gratuita (la competencia hace estragos, jejeje), la cual según el fabricante está específicamente destinada a los siguientes usos:
Entornos con necesidad rápida de recuperación.
Proveedores de sistemas de recuperación.
Consolidación de servidores.
Conclusión: Es güeno, pero le falta un hervorcillo para estar al nivel de WmWare.
3. QEmu

Bastante conocido sobre todo entre los usuarios de soluciones Linux.
Ventajas: Código libre, ligero en ejecución. Fácil de desplegar y configurar.
Desventajas: Soporte escaso, desarrollo irregular, velocidad de CPU muy baja en entornos emulados. El consumo de recursos es mejorable.
Coste: Gratuíto, es GPL. Indicado para: -porque lo digo yo y punto-;)
Conclusión: Orientado a frikis linuxeros pero no necesariamente con conocimiento experto en linux.
4. Microsoft Virtual PC y Microsoft Virtual Server


Se trata de la oferta de Microsoft destinada a propósitos de virtualización.
Una vez que VmWare anunciara el año pasado la disponibilidad de su versión GSX como descarga gratuita, Microsoft no tuvo más remedio que ofrecer Virtual Server 2005 R2 gratuitamente, y VirtualPC 2004 pocos meses más tarde, en respuesta a la competencia.
No obstante, VirtualPC sigue siendo una de las soluciones más extendidas, sobre todo por su enorme popularidad en la comunidad de usuarios Microsoft.
Ventajas: Familiar para usuarios Windows, integración total con plataformas Microsoft, soporte y documentación muy abundantes. Admiten drivers de los sistemas a emular. Compatibilidad con muchíiiiiisimos sistemas operativos invitados.
Desventajas: Consumo excesivo de recursos, inestabilidad bajo ciertas condiciones del entorno, despliegue y ejecución lentos, virtualización dificultosa o imposible de algunos entornos derivados de UNIX. Su código es propietario.
Coste: Como ya he mencionado, ambos son totalmente gratuitos, y descargables desde aquí. Usos indicados:
Uso doméstico (en efecto, en su casa mucha gente ya navega por Internete modelo 7 con máquinas virtuales -yo el 1º, por supuestísimo, como gran friki que soy-, para evitar posibles problemas nunca deseados provenientes de la mula o el torrente....) y/o para entornos de prueba y desarrollo --> Virtual PC.
Consolidación de servidores y granjas de servidores Windows en entornos críticos de producción --> Virtual Server
Conclusión: Ambos molan mazo, y están bastante tiraós de desplegar y utilizar. Virtual Server 2005, además de que ofrece mejor rendimiento y estabilidad de las máquinas virtuales y de que está enteramente orientado a producción, permite ahondar y hacer cosas más guapas con el sistema si se desea, pero como siempre hace Microsoft, si no quieres complicarte la vida "
Next-Next-Next", ahora bien, si eres un super-mega-friki de vida social inexistente y quieres hacer cosas guapas, entonces te metes en berenjenales del copón. Para más información, ir a
esta web.
5. Xen

Otro de los colosos de la virtualización, orientado a usuarios más experimentados. Está desarrollado por la Universidad de Cambridge y por unidades de Intel y AMD. Cada vez está más presente en las distribuciones.
Ventajas: Potente y escalable. Muy seguro. Sistema de paravirtualización innovador y efectivo. Desarrollo muy profesional, elaborado, y sistemático, pero algo INMADURO todavía.
Desventajas: Curva de aprendizaje costosa, documentación no excesivamente abundante, tiempos de despliegue mayores. No admite drivers de los entornos a emular. Desarrollo algo inmaduro.
Coste: Gratuito, es GPL. Está indicado en los siguientes escenarios:
Conclusión: Brutal en rendimiento, posibilidades, potencia, y escalabilidad. Pero como contrapartida, brutales también los conocimientos técnicos que hay que tener pá manejarlo en condiciones. Para usuarios expertísimos de la muerte. Algo verde todavía, pero muy poco verde. De aquí a nada, dará muuucho que hablar. Este es el link de descarga.
Otros sistemas
He citado los 5 sistemas más frecuentes en uso, si bien no son ni de lejos los únicos. Como ya hemos hablado en los artículos precedentes, existen otras soluciones muy competentes, cada una para su propósito, como Bochs, CoLinux, Win4Lin, FAUMachine, Parallels, SVISTA, TRANGO, twoOStwo, la máquina de sistemas virtuales de IBM … consulta el artículo de la Wikipedia.
Tabla comparativa
No dejes de consultar esta excelente tabla comparativa de la Wikipedia, ni tampoco este artículo sobre software de virtualización.
No obstante, con permiso de "un crack de la informática", extraigo un artículo suyo de su blog para mostraros una comparativa que se hizo entre VmWare y Virtual Server. Así que, si os quejáis de que es poco objetivo porque está hecho por una revista que es propiedad de Microsoft, bla, bla, bla, las culpas a él, que es el autor del artículo. ;)
************************************************************************************
Virtual Server VS VMWare
Redmon Magazine esta haciendo un articulo sobre virtualización para ello han analizado varios productos y bueno, la tabla habla por sí misma.

La verdad es que aun asi, creo que el que hizo el articulo se tenia que haber mirado el System Center Machine Manager y el MP de MOM para Virtual Server ya que creo que con estos dos añadidos el management de Virtual Server es superior al de VMWare.
Como todos yo he usado VMWare mucho tiempo, ha dia de hoy creo que en algunas cosas supera a MS y en otras muchas no, la integración de Virtual Server es un punto muy un bueno y ademas la estrategia de MS y la tecnogia que nos ofrecera para finales de este año llamada hypervisor me convencen completamente de que MS es el caballo ganador en esta carrera.
Un ejemplo seria, ¿como hacer un script que desconecte las unidades DVD/CD de las maquinas virtuales?
Con vmware:
#!/bin/bash
#http://www.vmware.com/community/thread.jspa?messageID=348638%
vmwarelist=`vmware-cmd -l`
vmwarelist=`echo $vmwarelist sed -e
's/ /*/g'`
vmwarelist=`echo $vmwarelist sed -e
's/.vmx/.vmx /g'`
for vm in $vmwarelist
do
vm=`echo $vm sed -e 's/*/ /g'`
vm=`echo $vm sed -e 's/
\//*/g'`
if [ `vmware-cmd "$vm" getstate sed
-e 's/getstate() = //'` = "on" ]
then
echo Looking @
$vm
IDEBUS=`seq 0
1`
for i in
$IDEBUS;
do
echo BUS : $i
IDEDEVICE=`seq 0
1`
for j in
$IDEDEVICE;
do
PRESENT=`vmware-cmd "$vm" getconfig
ide$i:$j.present cut -f3 -d
" "`
if [ $PRESENT = "true" ]
then
TYPE=`vmware-cmd "$vm" getconfig
ide$i:$j.deviceType cut -f3
-d " "`
if [[ $TYPE == "atapi-cdrom" $TYPE
== "cdrom-image" ]]
then echo Found CDROM on IDE$i:$j
vmware-cmd "$vm" disconnectdevice
ide$i:$j
fi
fi
done
done
fi
done
Con Virtual Server Machine Manager:
$vms = Get-VM where {$_.VMState –eq
'Running'}
$vms Get-DVDDrive Set-DVDDrive
–NoMedia
$vms Get-FloppyDrive
Set-FloppyDrive –NoMedia
*************************************************************************************
Quizás algunos digáis que soy lo peor por que se me ha olvidado alguno que vosotros consideráis la caña, pero en fin, ya se sabe que el ser humano es imperfecto por naturaleza, así que siento si he obrado humanamente.
Muy bien señores/señoras/señoritos/caballeras... Pues hasta aquí ha sido todo este nuestro tercer artículo. Nos falta el último, sobre virtualización en MAC OS, pero eso será otra historia....jejeje..
Byes!!
TU EXPERIENCIA ¿Usas algún motor de virtualización? Narra tu experiencia en los comentarios.