Páginas

3 nov 2011

Virtualización

La virtualización se ha convertido en nuestros días en una herramienta indispensable en casi todos los ámbitos. Tanto en el mundo empresarial como para los usuarios domésticos la virtualización lo está invadiendo todo porque aporta numerosas ventajas como el ahorro de costes energéticos, de hardware, de mantenimiento.


a virtualización (según la Wikipedia) es un término amplio que se refiere a la abstracción de los recursos de una computadora. Sin embargo, en vez de comentar todos los posibles aspectos de la virtualización nos vamos a centrar en el que más nos interesa: plataforma de virtualización.

Una plataforma de virtualización es un conjunto de software y hardware que simula la ejecución de equipos o sistemas operativos distintos a los reales. Esto se consigue ocultando las características físicas de la plataforma real y proporcionando otra plataforma abstracta y simulada. Mejor lo vemos con un ejemplo:
Tenemos un equipo real con su procesador, tarjeta gráfica, una tarjeta de red, un disco duro, etc. que tiene instalado Ubuntu como sistema operativo y un software de virtualización, como puede ser VirtualBox. El software de virtualización le proporciona al sistema operativo virtual el hardware virtual necesario para que pueda ejecutarse. Así podemos crear máquinas virtuales que ejecuten Ubuntu, Fedora, Windows 7 o cualuiqer otro sistema. Para crear una máquina virtual le asignamos uno o varios discos duros virtuales, la RAM que veamos conveniente, la tarjeta o tarjetas de red que necesitemos…
Curiosamente podemos contar en nuestro equipo físico con una única tarjeta de red y con dos o tres en una máquina virtual porque los recursos del equipo real se abstraen y se utilizan a conveniencia por los equipos virtuales gracias a la plataforma de virtualización.
Un hipervisor, también llamado monitor de máquina virtual (virtual machine monitor, VMM), es una plataforma de virtualización que permite utilizar, a la vez, múltiples sistemas operativos en un equipo. Los hipervisores se pueden clasificar en dos tipos:
  • Tipo 1 (nativo, baremetal o unhosted): software que se ejecuta directamente sobre el hardware real del equipo para controlar el hardware y monitorizar los sistemas operativos virtualizados. Los sistemas virtualizados se ejecutan en otro nivel por encima del hipervisor.
    Virtualización Tipo 1
    Hipervisor tipo 1
    Algunos de los hipervisores tipo 1 más conocidos son los siguientes:
    • VMware: ESXi (gratis), ESX (de pago).
    • Xen (libre).
    • Citrix XenServer (gratis).
    • Microsoft Hyper-V Server (gratis).
  • Tipo 2 (hosted): aplicación que se ejecuta sobre un sistema operativo convencional (Linux, Windows, MacOS) para virtualizar sistemas. De esta forma la virtualización se produce en una capa más alejada del hardware si lo comparamos con los hipervisores de tipo 1. Lógicamente esto hace que el rendimiento sea menor en los hipervisores de tipo 2.
    Virtualización tipo 2
    Hipervisor tipo 2
    Algunos de los hipervisores tipo 2 más utilizados son los siguientes:
    • Sun: VirtualBox (gratis), VirtualBox OSE (libre).
    • VMware: Workstation (de pago), Server (gratis), Player (gratis).
    • QEMU (libre).
    • Micorsoft: Virtual PC, Virtual Server.
Para terminar, como una imagen vale más que mil palabras, en la siguiente captura muestra un Ubuntu 9.04 Desktop real ejecutando VirtualBox para virtualizar Windows XP, Ubuntu 9.04 Desktop y Ubuntu 9.04 Server.
Ejemplo
Ubuntu 9.04 real virtualizando Windows XP, Ubuntu Desktop y Ubuntu Server