Hipervisor
Un hipervisor es lo que hace posible la tecnología de virtualización. Un hipervisor es una capa de software que permite que una máquina host aloje varias máquinas virtuales. Veamos la definición de virtualización para obtener una comprensión más clara de lo que hacen los hipervisores.
A hipervisor administra la partición del hardware del host en máquinas virtuales separadas y ejecuta estas máquinas virtuales. Otro nombre para un hipervisor es un monitor de máquina virtual o VMM.
La mayoría de los sistemas operativos se ejecutan directamente en hardware. Normalmente para acceder a otro sistema operativo, necesitaría más hardware para instalarlo o tendría que particionar un disco duro con el nuevo sistema operativo y arrancarlo. De todos modos, la máquina solo podría acceder a un sistema operativo a la vez. La virtualización permite la creación de recursos virtuales. Los sistemas operativos, servidores y escritorios pueden compartir el mismo hardware físico al mismo tiempo. Cada partición del hardware puede ejecutar una máquina virtual aislada. Lo que hace esto posible es un hipervisor.
El hardware físico utilizado por un hipervisor se denomina máquina host, y el hipervisor puede dividirlo para su uso entre varios sistemas operativos invitados. Un hipervisor tratará los recursos físicos que administra como un pool. Este pool de CPU, memoria y almacenamiento de información se puede asignar a invitados existentes o nuevas máquinas virtuales según sea necesario.
Tipos de hipervisores
Hipervisor tipo 1
Los hipervisores de tipo 1 también se conocen como hipervisores bare metal porque se ejecutan directamente en el hardware de la máquina host. Este tipo de hipervisor reemplaza el sistema operativo estándar que normalmente se instalaría en el hardware para permitir el hospedaje de múltiples sistemas operativos.
Este tipo de hipervisor es utilizado normalmente por los centros de datos empresariales y por los proveedores de computación en la nube. Existen algunas razones por las que los hipervisores tipo 1 funcionan mejor que los hipervisores tipo 2 en ciertos entornos:
- Interaccionan directamente con el hardware en lugar de a través de una capa adicional del sistema operativo, lo que permite un uso más eficiente de los recursos
- Permiten la asignación excesiva de recursos físicos, asignando más recursos de los que realmente están disponibles a las máquinas de los huéspedes, pero solo asignando lo que los invitados realmente pueden usar
- Permiten una fácil recuperación ante desastres, ya que si una máquina falla, los huéspedes pueden ser trasladados rápidamente al hardware en funcionamiento
El software de hipervisor tipo 1 incluye KVM, Microsoft Hyper-V y VMware vSphere. Todos los kernels de Linux después de 2007 incluyen KVM, lo que significa que las distribuciones modernas de Linux contienen un hipervisor tipo 1 incorporado.
Hipervisor tipo 2
Este tipo de hipervisor se ejecuta como una aplicación en la parte superior de un sistema operativo y también se denomina hipervisor alojado. Abstrae los sistemas operativos invitados del sistema operativo host y permite a los huéspedes acceder a los recursos de la máquina a través del sistema operativo en lugar de directamente.
Los hipervisores de tipo 2 generalmente se encuentran en entornos que necesitan un número menor de máquinas virtuales porque no son tan eficientes como un hipervisor tipo 1. Estas son algunas de las razones por las que podría usar un hipervisor tipo 2 en lugar de un hipervisor tipo 1:
- Son mucho más fáciles de configurar y administrar porque actúan como cualquier otra aplicación en un sistema operativo.
- Son compatibles con una amplia gama de hardware porque funcionan a través del sistema operativo
- No requieren un administrador para administrar
El software de hipervisor tipo 2 incluye VMware Workstation, Parallels Desktop y Oracle VirtualBox.
Beneficios de los hipervisores
Hay bastantes beneficios al ejecutar una máquina virtual desde cualquier tipo de hipervisor:
- Las máquinas virtuales invitadas están aisladas por un hipervisor, lo que reduce superficie de ataque. Si una máquina virtual se infecta con malware o se bloquea, no afecta al hardware ni a ninguna otra máquina virtual que se ejecute en el hardware
- Las nuevas máquinas virtuales se pueden crear mucho más rápidamente que la configuración de software físico
- Los sistemas operativos invitados pueden ejecutarse en una variedad de hardware porque el hipervisor abstrae el sistema operativo invitado lejos del hardware físico.
- Los hipervisores permiten un uso más eficiente de los recursos de hardware al permitir que varias máquinas virtuales se ejecuten en la misma máquina física
- Las máquinas virtuales son portátiles y se puede esperar que funcionen de la misma manera cuando se mueven de un entorno a otro
Hipervisores versus contenedores
Los hipervisores a veces se confunden con los contenedores. Realizan algunas funciones similares y diferentes.
Un hipervisor permite que un sistema operativo se ejecute en un entorno aislado sobre hardware o dentro de otro sistema operativo. Los hipervisores comparten recursos de computación, almacenamiento de información y memoria.
Un contenedor lleva esto un paso más allá y le permite ejecutar una aplicación en un entorno aislado de otras aplicaciones en un sistema operativo y utiliza un motor de contenedor para alojar estas aplicaciones.
Elegir un hipervisor
Hay algunas cosas a tener en cuenta a la hora de seleccionar un hipervisor.
- Necesidades. Entender las necesidades de cada persona que se verá afectada. Tome en consideración la escalabilidad, usabilidad y confiabilidad de la solución. Asegúrese de que el producto ofrezca suficiente performance para su empresa.
- Coste. ¿El hipervisor está integrado en una solución más grande o viene con tarifas de licencia? Asegúrese de estar al tanto de lo que está recibiendo exactamente y a qué costo.
- Ecosistema. ¿La solución soporta los sistemas operativos invitados que utiliza? ¿El producto requerirá especialistas para realizar el mantenimiento y la solución de problemas? ¿Existe una amplia documentación y soporte?
Conclusión
Un hipervisor es un software que hace posible la virtualización. Puede hacer esto reemplazando un sistema operativo y particionando el hardware para su uso por máquinas virtuales aisladas o ejecutándose dentro de un sistema operativo host como una aplicación estándar. El uso de hipervisores ofrece muchos beneficios, incluyendo un uso más eficiente de los recursos, una recuperación ante desastres más rápida y portabilidad.