miércoles, 15 de diciembre de 2010

MÁQUINAS VIRTUALES
En informática una máquina virtual es un software que emula a una computadora y puede ejecutar programas como si fuese una computadora real. Este software en un principio fue definido como "un duplicado eficiente y aislado de una máquina física". La acepción del término actualmente incluye a máquinas virtuales que no tienen ninguna equivalencia directa con ningún hardware real.
Una característica esencial de las máquinas virtuales es que los procesos que ejecutan están limitados por los recursos y abstracciones proporcionados por ellas. Estos procesos no pueden escaparse de esta "computadora virtual".
Uno de los usos domésticos más extendidos de las máquinas virtuales es ejecutar sistemas operativos para "probarlos". De esta forma podemos ejecutar un sistema operativo que queramos probar (GNU/Linux, por ejemplo) desde nuestro sistema operativo habitual (Mac OS X por ejemplo) sin necesidad de instalarlo directamente en nuestra computadora y sin miedo a que se desconfigure el sistema operativo primario.

  Tipos de Maquinas Virtuales

Las máquinas virtuales se pueden clasificar en dos grandes categorías según su funcionalidad y su grado de equivalencia a una verdadera máquina.
  • Máquinas virtuales de sistema (en inglés System Virtual Machine)
  • Máquinas virtuales de proceso (en inglés Process Virtual Machine)
   Máquinas virtuales de sistema
Las máquinas virtuales de alivio sistema, también llamadas máquinas virtuales de hardware, permiten a la máquina física subyacente multiplexarse entre varias máquinas virtuales, cada una ejecutando su propio sistema operativo. A la capa de software que permite la virtualización se la llama monitor de máquina virtual o "hypervisor". Un monitor de máquina virtual puede ejecutarse o bien directamente sobre el hardware o bien sobre un sistema operativo ("host operating system").
 Aplicaciones de las máquinas virtuales de sistema
  • Varios sistemas operativos distintos pueden coexistir sobre la misma computadora, en sólido aislamiento el uno del otro, por ejemplo para probar un sistema operativo nuevo sin necesidad de instalarlo directamente.
  • La máquina virtual puede proporcionar una arquitectura de instrucciones (ISA) que sea algo distinta de la verdadera máquina. Es decir, podemos simular hardware.
  • Varias máquinas virtuales (cada una con su propio sistema operativo llamado sistema operativo "invitado" o "guest"), pueden ser utilizadas para consolidar servidores. Esto permite que servicios que normalmente se tengan que ejecutar en computadoras distintas para evitar interferencias, se puedan ejecutar en la misma máquina de manera completamente aislada y compartiendo los recursos de una única computadora. La consolidación de servidores a menudo contribuye a reducir el coste total de las instalaciones necesarias para mantener los servicios, dado que permiten ahorrar en hardware.
  • La virtualización es una excelente opción hoy día, ya que las máquinas actuales (Laptops, desktops, servidores) en la mayoría de los casos están siendo "sub-utilizados" (gran capacidad de disco duro, memoria RAM, etc.), llegando a un uso de entre 30% a 60% de su capacidad. Al virtualizar, la necesidad de nuevas máquinas en una ya existente permite un ahorro considerable de los costos asociados (energía, mantenimiento, espacio, etc).
 Máquinas virtuales de proceso
Una máquina virtual de proceso, a veces llamada "máquina virtual de aplicación", se ejecuta como un proceso normal dentro de un sistema operativo y soporta un solo proceso. La máquina se inicia automáticamente cuando se lanza el proceso que se desea ejecutar y se detiene para cuando éste finaliza. Su objetivo es el de proporcionar un entorno de ejecución independiente de la plataforma de hardware y del sistema operativo, que oculte los detalles de la plataforma subyacente y permita que un programa se ejecute siempre de la misma forma sobre cualquier plataforma.
El ejemplo más conocido actualmente de este tipo de máquina virtual es la máquina virtual de Java. Otra máquina virtual muy conocida es la del entorno .Net de Microsoft que se llama "Common Language Runtime".
Máquinas Virtuales
OpenVZ
OpenVZ es una tecnología de virtualización en el nivel de sistema operativo para Linux. OpenVZ permite que un servidor físico ejecute múltiples instancias de sistemas operativos aislados, conocidos como Servidores Privados Virtuales (SPV) o Entornos Virtuales (EV).
Si se lo compara a máquinas virtuales tales como VMware, VirtualBox y las tecnologías de virtualización tales como Xen, OpenVZ ofrece menor flexibilidad en la elección del sistema operativo: tanto los huéspedes como los anfitriones deben ser Linux (aunque las distribuciones de GNU/Linux pueden ser diferentes en diferentes EVs). Sin embargo, la virtualización en el nivel de sistema operativo de OpenVZ proporciona mejor rendimiento, escalabilidad, densidad, administración de recursos dinámicos, y facilidad de administración que las alternativas.
OpenVZ es una base de Virtuozzo que es un software comercial desarrollado por SWsoft, Inc., OpenVZ es un producto de software libre y licenciado bajo los términos de la licencia GNU GPL versión 2.
OpenVZ consiste del núcleo y de herramientas en el nivel de usuario.
 
Linux-VServer es una implementación de servidor privado virtual hecha por el agregado de capacidades de virtualización en el ámbito de Sistema Operativo y distribuida como software libre, licenciada bajo GPL. 
El proyecto fue iniciado por Jacques Gélinas. Ahora es mantenido por Herbert Pötzl en Austria y no está relacionado al proyecto Linux Virtual Server, que implementa balance de carga de red.
Linux-VServer es un mecanismo de jaula en el cual se pueden usar de manera segura los recursos de un sistema informático (tales como el sistema de archivos, tiempo de la CPU, direcciones de red y memoria) en tal manera que los procesos no pueden realizar un ataque de denegación de servicio sobre algo que estuviere por fuera de su partición.
A cada partición se le asigna un contexto de seguridad, y el sistema virtualizado dentro de aquella es el servidor privado virtual. Se proporciona un utilitario al estilo chroot para descender a los contextos de seguridad. Los contextos mismos son lo suficientemente robustos para arrancar muchas distribuciones de Linux sin modificar, incluyendo Debian y Fedora Core.
Los servidores privados virtuales se usan comúnmente en servicios de alojamiento web, donde son útiles para segregar cuentas de los clientes, agrupar recursos y contener cualquier brecha de seguridad potencial.
El Linux-Vserver no se incluye en la serie principal del núcleo. Linux-VServer 2.0, la versión estable hasta septiembre de 2005, existe como un parche para los núcleos de la serie 2.6. También se proporciona un parche para las series 2.4.
Conceptualmente Linux-VServer es similar a los Solaris Containers (incluyendo la tecnología de aislamiento de Solaris Zones), o FreeBSD Jail, u OpenVZ.
 
Virtuozzo es un producto de software propietario para virtualización de sistema operativo producido por SWsoft, inc. Una versión que soporta Linux ha estado disponible desde 2001; una versión que soporta Microsoft Windows llegó a estar disponible en 2005.
Virtuozzo crea múltiples entornos virtuales independientes(VEs, también conocidos como servidores privados virtuales, o VPSs) en un solo servidor físico. Esto permite compartir hardware, tiempo y esfuerzo en la administración de sistemas y a veces, hasta las licencias del software entre los múltiples entornos virtuales.
Los VPS actúan en la mayoría de los casos como si fueran un servidor individual. Cada VPS tiene su propio superusuario (raíz o administrador), sistema de usuarios/de grupos, dirección(es) IP, procesos, archivos, usos, bibliotecas de sistema y archivos de configuración. Los VPS es totalmente accesibles vía red. Debido a la creación de diferentes servidores de red virtualizados, un propietario de VPS puede tener sus propias tablas de enrutamiento y reglas de seguridad en el firewall (IPtables).
Virtuozzo puede crear decenas o centenares de VPS en un solo servidor debido a su forma de funcionamiento y realizar la virtualización a nivel sistema. Está disponible para Linux y Windows.
Oracle VM VirtualBox es un software de virtualización para arquitecturas x86, creado originalmente por la empresa alemana innotek GmbH. Actualmente es desarrollado por Oracle Corporation como parte de su familia de productos de virtualización. Por medio de esta aplicación es posible instalar sistemas operativos adicionales, conocidos como «sistemas invitados», dentro de otro sistema operativo «anfitrión», cada uno con su propio ambiente virtual.
Entre los sistemas operativos soportados (en modo anfitrión) se encuentran GNU/Linux, Mac OS X, OS/2 Warp , Microsoft Windows, y Solaris/OpenSolaris, y dentro de ellos es posible virtualizar los sistemas operativos FreeBSD, GNU/Linux, OpenBSD, OS/2 Warp, Windows, Solaris, MS-DOS y muchos otros.
La aplicación fue inicialmente ofrecida bajo una licencia de software propietario, pero en enero de 2007, después de años de desarrollo, surgió VirtualBox OSE (Open Source Edition) bajo la licencia GPL 2. Actualmente existe la versión propietaria Oracle VM VirtualBox, que es gratuita únicamente bajo uso personal o de evaluación, y está sujeta a la licencia de "Uso Personal y de Evaluación VirtualBox" (VirtualBox Personal Use and Evaluation License o PUEL) y la versión Open Source, VirtualBox OSE, que es software libre, sujeta a la licencia GPL.
VirtualBox ofrece algunas funcionalidades interesantes, como la ejecución de máquinas virtuales de forma remota, por medio del Remote Desktop Protocol (RDP), soporte iSCSI, aunque estas opciones no están disponibles en la versión OSE.
En cuanto a la emulación de hardware, los discos duros de los sistemas invitados son almacenados en los sistemas anfitriones como archivos individuales en un contenedor llamado Virtual Disk Image, incompatible con los demás software de virtualización.
Otra de las funciones que presenta es la de montar imágenes ISO como unidades virtuales ópticas de CD o DVD, o como un disquete.
Tiene un paquete de controladores que permiten aceleración en 3D, pantalla completa, hasta 4 placas de red a Giga, integración con teclado y mouse.
A diferencia de otro virtualizadores que utilizan la combinación crtl + alt para volver el teclado y el mouse a la máquina física, VirtualBox utiliza la tecla Ctrl de la derecha como tecla host, por defecto, esta función puede ser personalizada a otra tecla o combinación de teclas por el usuario.

No hay comentarios:

Publicar un comentario