KVM

¿Qué es KVM??núcleo

¿Qué es KVM??núcleo

La virtualización se refiere a la creación de un recurso informático simulado que imita el comportamiento del recurso físico o real correspondiente. Se pueden virtualizar muchos tipos de recursos, desde software hasta dispositivos de hardware individuales y plataformas de hardware completas. Esta publicación se enfoca en máquinas virtuales que comprenden dispositivos como CPU, memoria, tarjeta de red, disco, adaptador de gráficos y el sistema operativo. El software que crea y ejecuta máquinas virtuales se denomina hipervisor. A continuación, analizaremos las características de un hipervisor llamado KVM.

Beneficios de la virtualización

En el pasado, ser homogéneo era el modus operandi en los centros de datos, las casas de desarrollo y en el hogar. Prácticamente, todas las máquinas ejecutarían la misma versión de un único sistema operativo, ya sea Linux, Windows o FreeBSD. Los tiempos han cambiado.

Hoy en día, esperaríamos diferentes sistemas operativos como Linux y Windows, e incluso diferentes versiones de un sistema operativo (p.gramo., Windows XP y 10) para coubicar en el mismo entorno informático. Sin máquinas virtuales, se deben implementar y mantener múltiples máquinas físicas para ejecutar aplicaciones en múltiples plataformas operativas. La virtualización impulsa la ejecución de varias máquinas virtuales, cada una con un sistema operativo diferente, en una sola máquina física.

Las ventajas de las máquinas virtuales sobre las máquinas físicas incluyen:

  1. Uso más eficiente de los recursos informáticos.
    El precio del hardware sigue bajando mientras que su potencia de procesamiento sigue aumentando. Bajo esta realidad, muchas máquinas grandes y potentes hoy en día tienden a estar infrautilizadas, según lo medido por los ciclos inactivos de la CPU, la memoria no utilizada, etc. La consolidación de máquinas virtuales en menos máquinas físicas da como resultado menos recursos físicos y, por lo tanto, una mayor eficiencia.
  1. Mejorado yo.T. capacidad de respuesta y productividad.
    El aprovisionamiento de nuevo hardware físico implica un largo período de espera de adquisición seguido de un largo período de instalación e implementación después de su llegada. Por el contrario, el aprovisionamiento de máquinas virtuales puede automatizarse y ponerse a disposición en minutos en lugar de días o incluso semanas que a veces lleva la adquisición de máquinas tradicionales.
  1. Ahorro de costes.
    Los grandes centros de datos ahorrarán dinero debido a los menores costos operativos. El ahorro viene en forma de facturas de energía reducidas como resultado de menores requisitos de refrigeración y energía.

Presentando KVM

La máquina virtual basada en kernel, o KVM en resumen, es una solución de hipervisor gratuita y de código abierto. Compite en una industria madura con alternativas de código abierto como Xen, VirtualBox, así como con productos patentados como VMware vSphere, Citrix XenServer, Microsoft Hyper-V.

Antes de 2005, las soluciones de hipervisor en ese momento, como Xen y VirtualBox, estaban todas basadas en software. La arquitectura x86 simplemente no tenía ninguna disposición para admitir la virtualización.  En 2005, la introducción de las extensiones del conjunto de instrucciones Intel VT y AMD-V cambió permanentemente el panorama de la virtualización. KVM lanzó su primera versión en 2006 y fue uno de los primeros hipervisores en aprovechar la nueva provisión de hardware para optimizar el rendimiento de la virtualización.

Puede instalar KVM en cualquier computadora x86 de 32 bits o 64 bits, la 'máquina host' en jerga hipervisora, que admita la extensión Intel VT o AMD-V. En la actualidad, los hipervisores modernos suelen admitir la virtualización híbrida: asistida por hardware cuando es posible y una conmutación por error a software solo para chipsets más antiguos.

KVM se clasifica como un hipervisor de tipo 2, lo que significa que se ejecuta dentro de un sistema operativo host. Como su nombre indica, KVM está basado en kernel y, para ser más precisos, es el kernel de Linux. Por lo tanto, no es sorprendente que KVM solo admita Linux como su sistema operativo host. (KVM fue posteriormente portado a FreeBSD.) Si desea un hipervisor tipo 2 multiplataforma de código abierto, VirtualBox es un buen candidato. VirtualBox puede ejecutarse de forma nativa en Windows, Linux, Mac OS X y Solaris.

Xen, por el contrario, es un hipervisor de tipo 1, también conocido como hipervisor bare-metal, que se ejecuta directamente como firmware en la máquina host. La ventaja del tipo 1 sobre el tipo 2 es la eficiencia obtenida debido a que el hipervisor se ejecuta directamente en el hardware subyacente. La desventaja es que es posible que un hipervisor de tipo 1 no admita una gama tan amplia de dispositivos host como el sistema operativo host de un hipervisor de tipo 2.

Si bien los hipervisores pueden diferir en si requieren un sistema operativo host y cuáles, son muy similares con respecto a los sistemas operativos invitados que admiten, es decir, el sistema operativo que una máquina virtual puede ejecutar. KVM admite la virtualización de los siguientes sistemas operativos invitados:

KVM puede ejecutar imágenes de SO huésped sin modificar. Esta función se conoce como virtualización completa, a diferencia de la paravirtualización, en la que el sistema operativo invitado se modifica para el manejo especial de operaciones que son sustancialmente más difíciles de ejecutar en la máquina virtual que en la máquina host.


Cómo funciona KVM

KVM consta de 2 componentes tecnológicos: kernel y espacio de usuario. El componente del kernel consta de 2 módulos de kernel cargables: kvm.ko, y kvm-intel.ko o kvm-amd.ko. El kvm.El módulo ko proporciona procesamiento de virtualización independiente de la arquitectura central. El kvm-intel.ko y kvm-amd.Los módulos ko corresponden a los módulos específicos del procesador Intel y AMD. Estos módulos se fusionaron en el kernel de Linux a partir de la versión 2 del kernel.6.20.

La estrecha integración de KVM con el kernel de Linux tiene sus ventajas. KVM puede delegar en Linux para hacer el trabajo pesado del sistema, mientras se enfoca en manejar las nuevas instrucciones de virtualización expuestas por el hardware. KVM también se beneficia al heredar de cualquier mejora continua del sistema desde el origen en la comunidad Linux en general.

Importante que los módulos del kernel no emulan el hardware de la máquina virtual en la que se ejecuta el sistema operativo invitado. Ese trabajo pertenece al espacio de usuario. KVM usa QEMU, que se ejecuta en el espacio del usuario, para construir las máquinas virtuales que interactúan con los sistemas operativos invitados.  Cada máquina virtual es simplemente un proceso normal de Linux. Un gran beneficio es que puede usar comandos familiares de Linux como top y kill para monitorear y administrar máquinas virtuales.


Conclusion resumen

KVM es una excelente solución de código abierto para la virtualización completa en la plataforma de host Linux. Después de más de 10 años de desarrollo activo, KVM se ha convertido en la herramienta de virtualización a nivel de máquina estándar de facto en muchas distribuciones de Linux.

Cómo usar Xdotool para estimular los clics del mouse y las pulsaciones de teclas en Linux
Xdotool es una herramienta de línea de comandos gratuita y de código abierto para simular clics del mouse y pulsaciones de teclas. Este artículo cubri...
Los 5 mejores productos ergonómicos de mouse de computadora para Linux
¿El uso prolongado de la computadora causa dolor en la muñeca o los dedos?? ¿Sufre de rigidez en las articulaciones y constantemente tiene que dar la ...
Cómo cambiar la configuración del mouse y el panel táctil con Xinput en Linux
La mayoría de las distribuciones de Linux se envían con la biblioteca "libinput" de forma predeterminada para manejar eventos de entrada en un sistema...