¿Qué es KVM?
Las máquinas virtuales basadas en el kernel (KVM) son una tecnología de virtualización open source para los sistemas operativos Linux®, los cuales pueden funcionar como hipervisores que ejecutan varias máquinas virtuales aisladas.
Las KVM se anunciaron por primera vez en 2006 y, un año después, se incorporaron al kernel de Linux. Muchas tecnologías de virtualización open source, como la cartera de productos de Red Hat, se basan en KVM.
Funciones del hipervisor
La virtualización, que permite ejecutar un sistema operativo dentro de otro, es posible gracias al uso de hipervisores. Un hipervisor agrupa recursos informáticos, como el procesamiento, la memoria y el almacenamiento, y los asigna a las máquinas virtuales. Además, puede ejecutar varias máquinas virtuales al mismo tiempo, gestionarlas y crear otras nuevas. Cuando el sistema de hardware físico se usa como hipervisor, se denomina "host", y las múltiples máquinas virtuales que utilizan sus recursos se denominan "guests".
Los hipervisores necesitan elementos del sistema operativo (por ejemplo, el administrador de memoria, el programador de procesos, la stack de entrada o salida [E/S], los controladores de dispositivos, el administrador de seguridad y la stack de red, entre otros) para ejecutar las máquinas virtuales. Las KVM tienen todos estos elementos porque forman parte del kernel de Linux. Cada máquina virtual se implementa como un proceso habitual de Linux, el cual se programa con la herramienta estándar de Linux para este fin, e incluye sistemas virtuales de hardware exclusivos, como la tarjeta de red, el adaptador gráfico, las CPU, la memoria y los discos.
Recursos de Red Hat
Ventajas de la virtualización
La virtualización permite iniciar y detener distintos entornos de sistema operativo con rapidez en un solo hardware, lo cual presenta varias ventajas para tu ecosistema de TI.
Flexibilidad
Puedes dividir una máquina host en varias máquinas virtuales y asignar los recursos donde sean necesarios. De este modo, puedes optimizar el espacio, el consumo de energía y el mantenimiento al alojar diversos entornos virtuales en un solo elemento de hardware físico.
Velocidad
Las configuraciones de las máquinas virtuales se definen por software, lo cual permite crearlas, eliminarlas, duplicarlas y migrarlas con rapidez. Además, es posible controlarlas de forma remota y automatizar sus procesos de gestión.
Compatibilidad
Puedes utilizar las máquinas virtuales para ejecutar software que no se haya distribuido específicamente para tu sistema operativo. Por ejemplo, te permiten poner en funcionamiento un sistema operativo más antiguo en una máquina virtual, de modo que puedas seguir ejecutando el software actual en un hardware moderno.
Estabilidad y seguridad
Las máquinas virtuales también ofrecen ciertas ventajas en cuanto a seguridad, ya que cada una de ellas se ejecuta por separado. Una máquina virtual puede perder su estabilidad sin afectar al sistema operativo host ni a los otros entornos en él. Esto te permite probar una configuración nueva sin poner en peligro todo el sistema.
Funciones de las KVM
En las KVM, una máquina virtual es un proceso de Linux que el kernel programa y gestiona. Los entornos virtuales que se ejecutan con las KVM aprovechan las funciones de rendimiento de Linux, lo cual permite que los usuarios se beneficien del control detallado que ofrece la herramienta de programación del sistema. Asimismo, las KVM aportan funciones relacionadas con la seguridad, el almacenamiento, la compatibilidad con el hardware y la migración activa.
Límites de seguridad con SELinux y sVirt
Las KVM utilizan una combinación de Security-Enhanced Linux (SELinux) y sVirt para mejorar la seguridad y el aislamiento de las máquinas virtuales. SELinux establece límites de seguridad para las máquinas virtuales, mientras que sVirt amplía las funciones de SELinux, lo cual permite aplicar el control de acceso obligatorio (MAC) a las máquinas virtuales guest y prevenir los errores relacionados con el etiquetado manual.
Flexibilidad de almacenamiento
Las KVM pueden usar todos los tipos de almacenamiento compatibles con Linux, incluidos algunos discos locales y el almacenamiento adjunto a la red (NAS). Además, admiten los sistemas de archivos compartidos, para que varios hosts puedan compartir las imágenes de máquinas virtuales.
Compatibilidad con varias arquitecturas de hardware
Las KVM pueden ejecutarse en una amplia variedad de plataformas de hardware. Cuando se utilizan integradas en Red Hat Enterprise Linux 9, son compatibles con las arquitecturas AMD, Intel y ARM de 64 bits, así como con los sistemas IBM z13 y sus versiones posteriores.
Migración activa
Las KVM admiten la migración activa, es decir, la capacidad para trasladar una máquina virtual en ejecución entre hosts físicos sin interrumpir el servicio. Eso permite que la máquina virtual y las conexiones de red sigan activas, y que las aplicaciones continúen ejecutándose durante el proceso de migración. Además, las KVM guardan el estado actual de cada máquina, para que puedas almacenarla y reanudarla más adelante.
Gestión de máquinas virtuales con las KVM
Cuando se ejecutan varias máquinas virtuales, es conveniente disponer de una herramienta de gestión de la virtualización para realizar su seguimiento. Algunas de estas herramientas se utilizan desde la línea de comandos, otras proporcionan interfaces gráficas de usuario (GUI), y otras están diseñadas para gestionar máquinas virtuales en grandes entornos empresariales. A continuación, presentamos algunas soluciones comunes de gestión de la virtualización para las KVM.
libvirt y virsh
El proyecto libvirt proporciona una API para gestionar plataformas de virtualización. Dentro de libvirt, virsh es una herramienta de línea de comandos que permite crear, iniciar, identificar y detener máquinas virtuales, así como acceder a un shell de virtualización.
Virtual Machine Manager
Virtual Machine Manager (conocido como VMM o virt-manager) ofrece una interfaz de escritorio para las máquinas virtuales y se puede utilizar con las principales distribuciones de Linux.
Consolas web
Los administradores de las máquinas virtuales pueden elegir gestionarlas con interfaces basadas en la web. Por ejemplo, Cockpit ofrece una solución que permite que los usuarios gestionen estos entornos desde una interfaz web. Por su parte, Red Hat Enterprise Linux cuenta con un plugin de consola web para virtualización.
KubeVirt
KubeVirt es una solución que se utiliza para gestionar una gran cantidad de máquinas virtuales en un entorno de Kubernetes, en el que es posible hacerlo junto con aplicaciones en contenedores. Además, es la base de Red Hat OpenShift® Virtualization.
Motivos para migrar a una plataforma de virtualización basada en KVM
Una de las ventajas que ofrecen las máquinas virtuales reside en su flexibilidad, así como en su portabilidad. La portabilidad permite trasladar una máquina virtual de un proveedor de virtualización a otro para aprovechar costos más bajos, mejores funciones o mayor control, entre otros beneficios.
Los desarrolladores utilizan las KVM porque las consideran una tecnología consolidada, y las empresas confían en ellas para gestionar máquinas virtuales de manera eficiente y según sus necesidades. Por lo tanto, la migración a una plataforma basada en KVM, como la cartera de productos de virtualización de Red Hat, permite no solo aprovechar las inversiones actuales en máquinas virtuales, sino también elegir una solución con una base open source. Asimismo, las tecnologías de Red Hat permiten gestionar un entorno unificado para máquinas virtuales, contenedores y aplicaciones sin servidor.
Beneficios de elegir Red Hat para la virtualización?
Is OpenShift Virtualization right for your VMs? Duración del video: 1:57.
KVM es el hipervisor de base de la cartera de productos de virtualización de Red Hat. Obtén la flexibilidad y las ventajas de un hipervisor open source como KVM con la garantía que ofrecen la estabilidad, las funciones de seguridad y el soporte empresarial de Red Hat.
Migra tus máquinas virtuales y sigue avanzando
El ecosistema de partners y los productos confiables de Red Hat ofrecen soluciones de virtualización integrales. Migra las máquinas virtuales a Red Hat® OpenShift Virtualization®, una plataforma de aplicaciones moderna (basada en los proyectos open source KVM y KubeVirt), que integra cargas de trabajo virtuales y en contenedores para brindar flexibilidad sin obstáculos adicionales. Si buscas una solución de virtualización exclusiva, descubre Red Hat OpenShift Virtualization Engine, una oferta optimizada y rentable para implementar, gestionar y ajustar las máquinas virtuales según las necesidades de cada empresa. Incluye un kit de herramientas de migración para la virtualización que brinda los recursos que necesitas para comenzar la transición en unos sencillos pasos.
Automatiza la migración
Con Red Hat Ansible® Automation Platform, automatiza las tareas para agilizar la distribución, desde la migración según tus necesidades hasta las operaciones del día 2 y la resolución de problemas. Gracias a este enfoque flexible, puedes automatizar las tareas para mejorar la velocidad y la eficiencia de las operaciones de TI.
Gestiona y moderniza las máquinas virtuales a tu propio ritmo
Supervisa la seguridad y el rendimiento de las máquinas virtuales desde una única consola con Red Hat Advanced Cluster Management. Con las opciones adicionales de soporte y las integraciones de los partners, puedes confiar en Red Hat para que mantenga tu infraestructura virtual en buen funcionamiento en toda la nube híbrida y te permita modernizar los sistemas cuando tengas todo listo para hacerlo.
El blog oficial de Red Hat
Obtenga la información más reciente sobre nuestro ecosistema de clientes, socios y comunidades.