Hace algún tiempo - tres a cuatro años - es posible construir un sistema con prestaciones de nivel empresarial que permite correr aplicaciones de un modo mucho más eficiente que un hipervisor estándar como ESXi, Hyper-V o KVM. No tiene todavía un nombre formal en la Wikipedia, pero en Libres lo llamamos "hipervisor múltiple".
El hipervisor múltiple corre aplicaciones en tres niveles:
El hipervisor múltiple corre aplicaciones en tres niveles:
- Sobre el host, directamente sobre el hardware físico: El sistema operativo del hipervisor múltiple ejecuta las aplicaciones normalmente, sin capa de virtualización, con performance nativa del hardware sobre el que corre el sistema operativo.
- En contenedores lógicos: El sistema operativo del hipervisor múltiple permite crear contenedores lógicos (o particiones lógicas),donde se puede instalar y correr aplicaciones compatibles con el sistema operativo del host físico. La performance de las aplicaciones en los contenedores es casi la misma que la performance real sobre el hardware físico.
- En máquinas virtuales: El sistema operativo del hipervisor múltiple tiene la posibilidad de crear una capa de virtualización completa estándar, permitiendo crear máquinas virtuales en las que se puede instalar sistemas operativos completos, compatibles o no con el sistema operativo del host físico.
Performance Nativa en el hardware
Un hipervisor múltiple va a permitir correr aplicaciones simultáneamente - o no - en los 3 niveles de ejecución explicados arriba.
Ello acarrea el beneficio único de poder explotar las capacidades completas del host físico, gracias a la flexibilidad de poder implementar aplicaciones en cualquiera de los tres niveles (con una gestión apropiada).
Contenedores Lógicos
Son un modo de virtualización a nivel de sistema operativo diferente a la virtualización completa de hardware (KVM, etc. ), y a la paravirtualización (XEN, KVM para sistemas operativos compatibles con este modo, etc.).
De la definición: "Es un método de virtualizacion donde el kernel de un sistema operativo permite correr varias instancias espacio de usuario aisladas, en vez de solo una.."
Similar en nombre a las particiones lógicas (LPARs), sin embargo éstas últimas son un metodo diferente de virtualización: "LPAR es un subconjunto de recursos de hardware, virtualizados como una computadora separada. En efecto, un host físico puede ser particionado en múltiples particiones lógicas, cada una alojando un sistema operativo diferente".
Construyendo un hipervisor múltiple
Hay varias combinaciones de software posibles para construir un hipervisor múltiple usando Linux como base.
En principio necesitamos un kernel de Linux, o mejor aún una distribución con buen soporte de contenedores. El software de contenedores nativo de Linux es hoy LXC, sin embargo el soft de contenedores para Linux con mejores capacidades, es OpenVZ.
En este mismo momento, los desarrolladores de OpenVZ están trabajando para integrar el código y capacidades de OpenVZ en LXC, unificando así los dos software de contenedores más evolucionados en Linux.
En una 2da. instancia necesitaremos software para implementar la capa de virtualización. Las opciones de base en Linux, de performance y capacidades de nivel empresarial son KVM y Xen.
Y así tendríamos las dos capas de virtualización y la capa base del sistema operativo corriendo sobre el host físico:
- Capa 1 - Kernel de Linux, incluyendo una distribución de Linux (Debian, CentOS, Ubuntu LTS, etc.), capaz de correr aplicaciones con performance nativa del hardware del host físico.
- Capa 2 - LXC u OpenVZ (las más recomendadas), capaz de correr aplicaciones con una performance del 2% al 5% menor que la disponible en el hardware del host físico.
- Capa 3 - KVM o Xen, brindando capacidad de virtualización completa para máquinas virtuales reales.
Link
Comparación entre diferentes plataformas de virtualización (incluye descripción del método de virtualización usado)
No hay comentarios:
Publicar un comentario