Capítulo 1: ¿Qué es la virtualización?

Software de virtualización

Cuando hablamos de software de virtualización, disponemos de un amplio abanico de posibilidades entre las que podemos encontrar opciones muy diferentes, que se adaptarán en mayor o menor medida al uso que pensemos hacer de ellas.

Por este motivo, a continuación vamos a hacer un repaso de las herramientas más frecuentes, indicando sus características más destacadas:

  • VMware: VMware Inc. es, probablemente la empresa de referencia en el mundo de la virtualización. Dispone de dos líneas de producto diferentes:

    • Las versiones de escritorio: Pueden utilizar como sistema operativo anfitrión a cualquiera de los tres sistemas operativos de escritorio más extendidos: Microsoft Windows, GNU/Linux y Apple Mac OS X. En las máquinas virtuales que creemos, podremos instalar cualquier sistema operativo que sea compatible con la arquitectura x86 o x86-64. Vmware comercializa tres productos diferentes en este segmento:

      • VMware Workstation, que es la versión comercial, para sistemas de escritorio que se instala sobre Microsoft Windows y GNU/Linux.

      • VMware Fusion, que ofrece una funcionalidad similar en sistemas de Apple que se ejecuten sobre procesadores Intel.

      • VMware Player, es la versión gratuita, con menos funcionalidad, orientada a un uso no comercial. Al principio no permitía crear nuevas máquinas virtuales (sólo usar las creadas con alguna versión de pago), pero esa limitación desapareció en la versión 3.0.1

    • Los sistemas de virtualización que se instalan directamente sobre el ordenador, haciendo las veces de sistema operativo y de software de virtualización se denominan Hipervisores de tipo 1.

      Por contra,los sistemas de virtualización que necesitan instalarse sobre un sistema operativo anfitrión, se denominan Hipervisores de tipo 2.

    • Las versiones empresariales: Están orientadas a implantaciones de mayor envergadura. Dos de las tres soluciones que propone la empresa se ejecutan directamente sobre el ordenador, ya que disponen de su propio sistema operativo, embebido dentro del producto, lo que deriva en un aumento del rendimiento. Se comercializan tres soluciones distintas:

      • VMware ESX, que se instala directamente sobre el hardware, ofrece un alto rendimiento y facilita el uso, más o menos directo, del hardware por parte de los sistemas virtuales. Además, incorpora vCenter que aglutina un conjunto de servicios complementarios para mejorar la fiabilidad y la usabilidad. Entre sus componentes, podemos destacar:

        • Vmotion, que permite cambiar una máquina virtual, que se está ejecutando, de un host ESX a otro.

        • Storage Vmotion, que puede trasladar una máquina virtual, que se está ejecutando, de un dispositivo de almacenamiento a otro.

        • DRS (Distributed Resource Scheduler, en español, Planificador de Recursos Distribuidos), que facilita el balanceo automático de carga de un cluster ESX utilizando Vmotion.

        • HA (High Availability, en español, Alta disponibilidad). Consigue que, en caso de fallo de uno de los hosts del cluster, los servidores virtuales que se estaban ejecutando en él se reinicien automáticamente en un host distinto.

      • VMware ESXi es un producto similar a VMware ESX, pero se ha eliminado la Consola de Servicio, ahorrando una considerable cantidad de almacenamiento en disco y en memoria RAM, pero esto hace que la administración de los hosts deba realizarse a través de un servidor de VirtualCenter. Además, desde el verano de 2008, existe una versión de pago y otra con licencia freeware, a la que también se le han eliminado algunas características, como Vmotion y Storage Vmotion.

        Se diseño para ejecutarse desde dispositivos SSD (Solid-State Drive, en español, Dispositivos de Estado Sólido), pero puede instalarse en cualquier disco duro. Desde el verano de 2008, VMware ESXi es gratuita.

      • Vmware Server es una versión que se encuentra un tanto obsoleta. Se ofrece con licencia freeware para uso no comercial y se trata de la única solución orientada al ámbito empresarial, que se instala sobre un sistema Linux o Windows anfitrión, por lo que su rendimiento es menor que el de las versiones comentadas más ariba. Anteriormente, Vmware Server era conocido como Vmware GSX Server.

    Dada la variedad de versiones que podemos encontrar en Vmware, las hemos organizado en la siguiente tabla, donde aparecen clasificadas en función de que necesiten, o no, un sistema operativo anfitrión e indicando en cada versión si es gratuita o de pago:

  • Hyper-VWindows Server 2016 Hyper-V: es la respuesta de Microsoft en el mundo de los servidores de virtualización. Hyper-V puede instalarse como un rol dentro de Windows Server 2016, o como un producto independiente. En este último caso, recibe el nombre de Hyper-V Server 2016 y, básicamente se trata de un Windows Server 2016 con sus funcionalidades muy limitadas.

    En la actualidad, Hyper-V también forma parte de Windows 10. La versión independiente es gratis, pero sólo dispone de una interfaz de línea de comandos (CLI) desde la que se deben configurar el host, el hardware y el software a través de órdenes. Afortunadamente, se dispone de un menú (ejecutable desde la línea de comandos) y algunos scripts que pueden descargarse gratuitamente.

    A pesar de todo, la configuración se realiza normalmente utilizando consolas de administración (MMC, Microsoft Management Console), que se descargan y se ejecutan en algún PC de la red controlado por una versión de escritorio de Windows (a partir de Windows 7) e incluso desde alguna versión de Windows Server a partir de 2008. Otra buena alternativa es utilizar la herramienta Remote Server Administration Toolkit para Windows 7 y posteriores.

    Puedes evaluar Hyper-V y otros muchos productos de Microsoft durante 90 días con todas sus carácterísticas sin coste alguno descargándolos desde su TechNet Evaluation Center.

  • Oracle VM VirtualBox: es un software de virtualización creado originalmente por una empresa llamada Innotek. Ésta empresa fue adquirida inicialmente por Sun Microsystems que, a su vez, ahora es propiedad de Oracle. Según diversas encuestas, VirtualBox es la opción preferida por la mayoría de los usuarios de sistemas de escritorio. VirtualBox se instala como cualquier aplicación sobre un sistema operativo anfitrión, que puede ser cualquier versión actual de escritorio de Microsoft Windows (a partir de XP), cualquier distribución de GNU/Linux, Apple Mac OS X, Solaris (incluido OpenSolaris) e incluso FreeBSD. Una vez instalada la aplicación, permite la ejecución, sobre ella, de casi cualquier sistema operativo compatible con la arquitectura x86.

    Como todas las máquinas virtuales usan controladores de dispositivos virtuales, son independientes del hardware del anfitrión, por lo que son fáciles de transportar a un host diferente cuando sea necesario. Antes de la versión 4, había dos opciones diferentes a la hora de instalar VirtualBox: la versión OSE (Open Source Edition) que se distribuía con licencia GPL y la versión PUEL (Personal Use and Evaluation License) que era gratuita para uso personal y de evaluación, sin limitación de tiempo. La principal diferencia entre ellas era que la versión PUEL tenía soporte para USB.

    A partir de la versión 4, tanto el código fuente como el código binario se publican con licencia GPLv2 y, la parte que sigue con licencia PUEL, es el soporte para dispositivos USB 2.0, RDP, las funciones PXE para tarjetas de red Intel y el mecanismo Extension Pack, que es el que permite que terceras partes incluyan sus propias funciones en el producto. La gran ventaja es que ahora las distribuciones pueden incluir paquetes precompilados de VirtualBox en sus repositorios.

peces

  • Parallels Desktop for Mac: Se trata de un producto de la empresa Parallels, Inc., que ofrece virtualización en ordenadores Apple con procesadores Intel y sistema operativo Mac OS X. Su modo de funcionamiento es bastante parecido al de los productos anteriores, asignando recursos del equipo anfitrión a la máquina virtual, que funciona como si fuese un equipo independiente.

    Como en otras aplicaciones de virtualización, aquí también se emplean controladores de dispositivos virtuales, obteniendo una total independencia del hardware del equipo anfitrión. Sobre Parallels Desktop podremos ejecutar casi cualquier sistema operativo compatible con la arquitectura x86.

  • Virtual PCWindows Virtual PC: Originalmente, Virtual PC fue creado por una empresa llamada Connectix para sistemas Apple basados en procesadores PowerPC.

    Posteriormente, Connectix produce una versión para Windows.

    En 2003, Microsoft adquiere el producto y en 2006 se ofrece de forma gratuita. El mismo año dejaron de aparecer versiones para Apple, cuando esta empresa dejó de utilizar procesadores PowerPC en favor de la arquitectura Intel. En la actualidad, Windows Virtual PC sólo es compatible con hosts basados en Windows 7 y posteriores y sólo permite máquinas virtuales con sistemas operativos Windows XP SP3 o posteriores. En principio, se pueden crear máquinas virtuales que ejecuten distribuciones GNU/Linux, pero carecen de soporte oficial y carecen de controladores avanzados (llamados Virtual Machine Additions).

  • XenXen: es un software de virtualización creado originalmente en el Laboratorio de Informática de la Universidad de Cambridge, pero desde 2010 es mantenido por la comunidad Xen, que lo desarrolla y lo mantiene bajo licencia GPLv2. Xen se instala directamente sobre el hardware del host, ya que su hipervisor se basa en una versión modificada de Linux, NetBSD y Solaris. Además, es compatible con arquitecturas hardware basadas en procesadores IA-32, x86-64, Itanium y ARM.

    Entre sus características avanzadas se encuentra la posibilidad de migrar máquinas virtuales entre diferentes hosts sin tener que pararlas.En cuanto a las máquinas virtuales (llamadas aquí dominios de usuario) tenemos dos opciones:

    • Cuando el procesador del ordenador anfitrión soporta virtualización x86 (por ejemplo Intel VT-x o AMD-V) se pueden instalar versiones estándares de sistemas operativos libres o propietarios (incluido Microsoft Windows)

    • En caso contrario, necesitaremos un sistema operativo especialmente modificado para ser virtualizado, que incluya drivers para soportar las características avanzadas de Xen. Esta opción, mucho más restrictiva, ofrece también un rendimiento mucho mayor.

    Xen utiliza una técnica llamada paravirtualización que alcanza un rendimiento elevado (las penalizaciones de rendimiento están entre el 2 y el 8 por ciento, mientras que en otras soluciones rondan el 20).

  • OpenVZ: es un software de virtualización exclusivo para sistemas GNU/Linux. Es decir, tanto los sistemas anfitriones como los invitados deben ser GNU/Linux, aunque puede tratarse de diferentes distribuciones. Al tratarse de un sistema tan acotado, una de sus principales ventajas es que ofrece un mejor rendimiento y una mayor escalabilidad. Además de simplificar la administración de la instalación. OpenVZ está basado en Virtuozzo, un producto comercial de la empresa SWsoft, Inc., pero se trata de software libre publicado bajo licencia GPLv2.