Comparación de hipervisores VMware vs KVM

La virtualización se utiliza mucho hoy en día por las ventajas que ofrece: uso eficaz de los recursos, escalabilidad y comodidad. Los hipervisores permiten ejecutar varios entornos aislados, denominados máquinas virtuales (VM), en una sola máquina física. Con tantos hipervisores disponibles en la actualidad, elegir el adecuado es clave para el éxito de la instalación.

Los hipervisores VMware y KVM son soluciones potentes con funciones interesantes. No todas las alternativas a ESXi pueden ofrecer la misma variedad de funciones que el producto de VMware. En esta entrada de blog, comparamos KVM vs VMware para ayudarle a entender la diferencia entre estos hipervisores y las ventajas de cada plataforma de virtualización con un enfoque en VMware vSphere con el hipervisor ESXi y KVM para uso empresarial.

NAKIVO for VMware vSphere Backup

NAKIVO for VMware vSphere Backup

Complete data protection for VMware vSphere VMs and instant recovery options. Secure backup targets onsite, offsite and in the cloud. Anti-ransomware features.


Importante: Este post cubre las funciones de KVM en el kernel versión 5.4 con QEMU 6.1.0 y VMware ESXi versión 7.0 y puede quedar obsoleto con posteriores actualizaciones de software.

Qué es KVM

KVM, siglas de Kernel-based Virtual Machine, es un hipervisor de código abierto. El hipervisor KVM es utilizado por grandes organizaciones como Amazon y Oracle (en la Oracle Cloud Infrastructure). Inicialmente, KVM fue desarrollado por Qumranet y más tarde Red Hat compró sus derechos. Oracle también distribuye KVM. KVM proporciona capacidades de virtualización completas, y cada VM simula completamente una máquina física mediante el uso de un procesador y dispositivos virtuales.

Notas:

  • No hay que confundir el hipervisor KVM con el conmutador KVM (acrónimo de teclado, vídeo y ratón) utilizado para conectarse a varios ordenadores mediante un monitor, un teclado y un ratón. Un divisor/multiplexor KVM es un dispositivo físico que no está relacionado con la virtualización.
  • El archivo vmware-kvm.exe del directorio de VMware Workstation instalado en Windows no está relacionado con el hipervisor KVM. Esta aplicación vmware-kvm.exe funciona como un conmutador KVM virtual para conectarse a la interfaz de sistemas operativos invitados (SO) instalados en máquinas virtuales VMware.

Qué es VMware

VMware es el nombre de la empresa que está detrás del hipervisor ESXi, que se ofrece como parte de la plataforma de virtualización VMware vSphere, y de hipervisores host como VMware Workstation, Player y Fusion. Los hipervisores de VMware son propietarios y muchas de sus funciones de virtualización se consideran el estándar del sector para entornos de producción muy cargados.

Tipos de hipervisor

Existen dos tipos de hipervisores:

  • Los hipervisores de tipo 1 se instalan directamente en el hardware y también se denominan hipervisores bare-metal.
  • Los hipervisores de tipo 2 se instalan en el sistema operativo subyacente.

Los hipervisores de tipo 1 proporcionan un mayor nivel de rendimiento, ya que no hay sobrecarga por la interacción del hipervisor con el SO invitado.

Virtualización completa frente a virtualización asistida por hardware

La virtualización completa o virtualización completa asistida por software es una técnica que utiliza un hipervisor para emular completamente todo el hardware subyacente (dispositivos virtuales) para una máquina virtual sin utilizar las funciones de virtualización de la unidad central de procesamiento (CPU). Se utilizan la traducción binaria y el enfoque directo. La virtualización asistida por software es más lenta y puede funcionar en ordenadores cuyos procesadores no sean compatibles con la virtualización asistida por hardware. VMware Workstation 7 y versiones anteriores para ejecutar huéspedes de 32 bits son ejemplos de ello.

La virtualización asistida por hardware o virtualización nativa es una tecnología de virtualización completa relacionada con funciones de CPU como Intel VT-X y AMD-V. Se utilizan técnicas de ejecución directa y traducción binaria. KVM, VMware ESXi, VMware Workstation, VMware Player y VMware Fusion requieren funciones Intel VT-X o AMD-V habilitadas en UEFI/BIOS en una máquina física para utilizar esta tecnología de virtualización. La virtualización asistida por hardware garantiza que las máquinas virtuales tengan un alto rendimiento porque «parte» de la CPU física se asigna directamente a la CPU virtual (vCPU), y no hay sobrecarga para traducir instrucciones de una vCPU a la CPU.

Hipervisores VMware

VMware ESXi es un hipervisor de tipo 1 y se instala en hardware físico (en servidores dedicados) para actuar como sistema operativo. VMware ESXi es el componente principal del entorno virtual VMware vSphere. Tiene su propio núcleo que interactúa con un procesador físico y otros dispositivos.

VMware Workstation, VMware Player y VMware Fusion son hipervisores de tipo 2 y se instalan en el sistema operativo (SO) subyacente para uso individual. VMware Workstation y Player se instalan en Linux y Windows, mientras que VMware Fusion se instala en macOS.

Hipervisores KVM

KVM se instala en Linux como un módulo del núcleo, pero sigue siendo un hipervisor de tipo 1. KVM tiene todo lo que tiene Linux porque KVM es parte de Linux.

KVM consta de módulos de kernel cargables, como el módulo kvm.ko, que proporciona la infraestructura de virtualización central, y los módulos kvm-intel.ko o kvm-amd.ko específicos del procesador, que se instalan en función del procesador utilizado (Intel o AMD). La primera versión del hipervisor KVM estaba disponible para el núcleo Linux 2.26.

KVM funciona junto con QEMU para la emulación de E/S. Las ventajas de ejecutar el hipervisor KVM como un módulo del núcleo incluyen la posibilidad de trabajar con la memoria (RAM), el programador de la CPU, etc. También están disponibles para los invitados (VM). Sin embargo, estas condiciones no son suficientes, porque un sistema operativo invitado en una máquina virtual necesita emulación de entrada/salida (E/S) (un procesador, discos, red, vídeo, USB, puertos PCI, etc.), y para ello se utiliza QEMU.

Nota:QEMU (Quick Emulation) es un software de código abierto para la virtualización de hardware (no lo confundas con la virtualización asistida por hardware) que emula dispositivos virtuales como un controlador de disco, un adaptador de red, dispositivos PCI y USB, etc. para las máquinas virtuales. La traducción binaria dinámica también puede utilizarse para emular CPUs para máquinas virtuales. QEMU puede actuar como hipervisor de tipo 2 en ordenadores de estación de trabajo que ejecuten Linux incluso en procesadores antiguos (que no sean compatibles con Intel VT-X o AMD-V) gracias a la compatibilidad con la virtualización completa asistida por software y el uso de la traducción binaria. QEMU no es compatible con la virtualización nativa (asistida por hardware).

Complejidad de la instalación

KVM puede instalarse en casi cualquier ordenador que ejecute Linux con un procesador compatible con las funciones de virtualización asistida por hardware. La instalación del hipervisor KVM incluye la instalación de los paquetes necesarios, KVM (kvm-qemu) y una herramienta de gestión (opcional). Los paquetes están disponibles en los repositorios de software de Linux.

Por ejemplo, puede instalar KVM en Ubuntu con este comando:

sudo apt -y install bridge-utils cpu-checker libvirt-clients libvirt-daemon qemu qemu-kvm

libvirt es un conjunto de bibliotecas para la gestión de la virtualización.

virt-install es un conjunto de comandos para gestionar máquinas virtuales KVM en la consola de Linux (CLI).

La administración en KVM es más complicada que en VMware vSphere. Es posible que tenga que instalar y configurar manualmente componentes adicionales para KVM (por ejemplo, un conmutador virtual). Los desarrolladores adoptan rápidamente las últimas actualizaciones de hardware en un núcleo Linux porque los proveedores de hardware contribuyen al desarrollo del núcleo.

VMware ESXi se instala desde un CD en vivo o una unidad flash USB después de grabar la imagen ISO en el medio. Se proporciona un asistente de instalación fácil de usar para completar la instalación de ESXi. La instalación de VMware vCenter puede ser un poco complicada porque es necesario configurar DNS. Las nuevas versiones de vCenter se proporcionan como vCenter Server Appliance, que es una imagen de máquina virtual lista para su implantación en ESXi con una lista de parámetros personalizables. La instalación de vCenter en Windows no es compatible con vSphere 7.0 y versiones superiores.

A diferencia de KVM, VMware ESXi tiene una lista de compatibilidad de hardware (HCL). Esto significa que es posible que determinado hardware no sea compatible con la instalación de ESXi. Además, una recomendación de VMware puede aumentar el precio del hardware, lo que incrementa los costes de la instalación de VMware vSphere.

Interfaz de gestión

La conveniencia de utilizar un hipervisor depende de la interfaz de usuario proporcionada. Tanto KVM como las soluciones de virtualización VMware vSphere proporcionan una interfaz de línea de comandos (CLI) y una interfaz gráfica de usuario (GUI). Veamos en detalle las opciones de VMware frente a KVM para cada plataforma.

KVM

Virsh es la utilidad de línea de comandos disponible por defecto para la gestión de KVM. Virsh utiliza la API libvirt. Puede instalar manualmente herramientas adicionales como el paquete virt-manager.

Managing the KVM hypervisor in the command line interface – creating a new VM

Virtual Machine Manager(virt-manager) es una interfaz de usuario de escritorio (gráfica) para gestionar máquinas virtuales KVM que utiliza libvirt. Puede conectarse a varios servidores KVM en Virtual Machine Manager para gestionarlos.

VMware vs KVM hypervisor comparison – KVM Virtual Machine Manager

Puede seleccionar máquinas virtuales, abrir pantallas de máquinas virtuales, editar ajustes de máquinas virtuales, clonar máquinas virtuales y migrar máquinas virtuales en el Administrador de máquinas virtuales.

KVM hypervisor vs VMware vSphere – VM options in the KVM GUI

Xming y PuTTY con el reenvío X11 activado se utilizan para conectarse a virt-manager desde máquinas Windows de forma remota. Existe la opción de utilizar VNC para conectarse a máquinas virtuales KVM. Puede conectarse a una máquina Linux que ejecute KVM con un cliente SSH y ejecutar comandos para gestionar KVM y los componentes relacionados.

VMware vSphere

VMware vCenter Server es un sistema de gestión centralizado en VMware vSphere. VMware vCenter dispone de una interfaz web para gestionar hosts ESXi, máquinas virtuales y configurar otros componentes. Esta interfaz se denomina VMware vSphere Client. Para gestionar un host ESXi independiente, utilice la interfaz web de VMware Host Client. Puede utilizar cualquier sistema operativo con un navegador web compatible para gestionar vSphere con la GUI. La interfaz de VMware vSphere Client se muestra en la siguiente captura de pantalla.

KVM vs VMware – the web interface of VMware vSphere Client

A continuación puede ver la interfaz web de VMware Host Client.

KVM hypervisor vs VMware ESXi – the web interface of VMware Host Client

También existe lainterfaz de línea de comandos como ESXCLI para gestionar hosts ESXi independientes. Puede habilitar el acceso SSH y conectarse a los hosts ESXi utilizando un cliente SSH. VMware vSphere PowerCLI basado en cmdlets de PowerShell puede utilizarse para gestionar hosts ESXi y servidores vCenter de forma remota desde Windows. También puede utilizar VMware Workstation y VMware Remote Console para gestionar máquinas virtuales en hosts ESXi.

Rendimiento de KVM frente a VMware

KVM se compila a partir de unas 10.000 líneas de código bien optimizado, lo que maximiza el rendimiento.

El código fuente de VMware ESXi está cerrado, pero los investigadores de software calculan que el producto contiene unos 60 millones de líneas de código. En ocasiones, el rendimiento de las máquinas virtuales en ESXi puede ser ligeramente inferior, pero esta diferencia no es significativa para las cargas de trabajo habituales.

En general, el rendimiento de estos dos hipervisores de tipo 1 es muy bueno.

Seguridad

KVM. Las distribuciones Red Hat KVM disponen de Linux mejorado en seguridad (SELinux) y virtualización segura (sVirt). Se utiliza una combinación de estas funciones para detectar y prevenir amenazas, y garantizar la seguridad y el aislamiento de las máquinas virtuales. Oracle KVM se libera con Ksplice.

Entre las funciones de seguridad del hipervisor KVM se incluyen:

  • Control de acceso obligatorio entre máquinas virtuales
  • configuración de iptables (el cortafuegos de Linux) para mejorar la seguridad
  • Arranque seguro UEFI para invitados Windows disponible tras configuración manual
  • Protección de datos de máquinas virtuales con cifrado total de memoria (TME) y cifrado total de memoria con varias claves (MKTME).

Opciones de cifrado de máquinas virtuales. Puede almacenar archivos de máquinas virtuales en un sistema de archivos cifrado por el host y activar el cifrado dentro de un sistema operativo invitado. KVM puede cifrar imágenes de máquinas virtuales en formato QCOW2 con el algoritmo Advanced Encryption Standard (AES) de forma transparente para un invitado (se utilizan claves de cifrado de 128 bits).

VMware es compatible con una amplia lista de herramientas de seguridad con soluciones de cumplimiento de normativas y ciberriesgos para ayudar a satisfacer los requisitos de cumplimiento de HIPAA, CJIS y PCI DSS.

Entre las funciones de seguridad de VMware vSphere se incluyen:

  • Gestión de permisos y usuarios para configurar las funciones y el acceso de los usuarios
  • Funciones de seguridad del host, incluida la autenticación con tarjeta inteligente del host, vSphere Authentication Proxy, UEFI Secure Boot, Trusted Platform Module y VMware vSphere Trust Authority.
  • Cifrado de máquinas virtuales, incluidos KMS y VMware vSphere Native Key Provider
  • Seguridad del sistema operativo invitado, incluida la seguridad basada en la virtualización y el uso de un módulo de plataforma virtual de confianza (vTPM).

Costes, licencias y compatibilidad

KVM es principalmente un hipervisor de código abierto y se distribuye gratuitamente sin necesidad de pagar licencia. Si utiliza un hipervisor KVM gratuito, no se proporciona asistencia técnica. Sin embargo, la amplia comunidad KVM y los recursos de Internet pueden ayudarte a solucionar problemas y encontrar respuestas. Existen versiones de pago del hipervisor KVM. Red Hat y Oracle son proveedores oficiales compatibles y ofrecen compatibilidad técnica con sus distribuciones.

VMware vSphere es una solución comercial y es necesario adquirir licencias para utilizar sus componentes. Una licencia de VMware vSphere contiene una licencia para ESXi y vCenter. Existen licencias VMware vSphere Standard y Enterprise Plus, y esta última da acceso a más funciones. El número de licencias necesarias depende del número de procesadores y núcleos. Existe un periodo de prueba gratuito de 60 días para VMware vSphere.

Si utiliza productos de VMware como VMware Tanzu, VMware NSX, VMware vSAN, VMware Horizon y VMware vRealize en vSphere, deberá adquirir licencias adicionales para estas soluciones. Al utilizar VMware vSphere, usted está limitado al Acuerdo de Licencia Empresarial. Se proporciona compatibilidad de nivel empresarial al adquirir una licencia comercial de VMware.

Existe la ESXi Free Edition con una serie de limitaciones, una de las cuales es la posibilidad de utilizar las API sólo en el modo de sólo lectura. La versión gratuita no permite hacer backup de VMware VM con soluciones de backup automatizadas. Puede obtener la clave para ESXi gratuito (la licencia se llama VMware vSphere Hypervisor) tras registrarse en el sitio web de VMware. No puede gestionar hosts con ESXi libre en vCenter y conectarlos en un cluster o solicitar soporte técnico.

En resumen, el hipervisor de código abierto KVM requiere menos costes para su instalación y es el ganador en la categoría de precio de esta comparativa KVM vs VMware.

Actualizaciones y mejoras

KVM se actualiza regularmente y puedes actualizar o mejorar el hipervisor KVM ejecutando unos pocos comandos.

VMware publica periódicamente parches y correcciones de errores para VMware vSphere. Los ejemplos más recientes de actualizaciones de versiones son vSphere 7.0 Update 1, vSphere 7.0 Update 2 y vSphere 7.0 Update 3 (que se retiró en noviembre de 2021 por problemas con los controladores). VMware proporciona vSphere Update Manager para gestionar e instalar actualizaciones en varios hosts ESXi gestionados por vCenter.

Escalabilidad y límites

VMware proporciona interfaces de programación de aplicaciones (API) para vSphere con el fin de facilitar la gestión de máquinas virtuales y la realización de backups de máquinas virtuales mediante la creación o implantación de soluciones de software adicionales que trabajan con vSphere y las máquinas virtuales.

El código fuente del hipervisor KVM es abierto, lo que le permite integrar o ampliar este hipervisor con otras soluciones de software en su infraestructura.

La virtualización anidada es compatible con los hipervisores ESXi y KVM.

Limitaciones de KVM

Límites del host KVM:

  • 384 núcleos de CPU
  • 6 TB de RAM
  • 600 máquinas virtuales ejecutándose simultáneamente en un host (dependiendo del rendimiento del host)

Límites VM:

  • CPU virtuales: 256 (384 RH8)
  • RAM virtual: 2 TB (6 TB RH8)
  • Controladores de interfaz de red (NIC) virtuales: 8

Red Hat Virtualization Manager admite hasta 400 hosts.

El host Oracle Linux Virtualization Manager admite hasta 128 hosts por motor.

Los límites pueden variar en función de la distribución de Linux (SLES, Red Hat, Oracle Linux). Los límites máximos se definen tras las pruebas realizadas por el proveedor correspondiente y significan que esta configuración máxima puede funcionar correctamente. Consulte la documentación de la distribución adecuada para comprobar los límites con mayor precisión.

Limitaciones de VMware vSphere

Límites del host ESXi:

  • 896 CPU lógicas por host
  • 24 TB de RAM por host
  • 1024 máquinas virtuales por host
  • 4096 CPU virtuales por host

Límites VM:

  • CPU virtuales por máquina virtual: 256
  • RAM virtual: 6128 GB
  • NIC virtuales: 10
  • Tamaño del disco virtual: 62 TB

Límites de vCenter:

  • 2.500 hosts ESXi por instancia de vCenter
  • 64 hosts por clúster
  • 8.000 máquinas virtuales por clúster
  • 40.000 máquinas virtuales

Integración

Si utiliza VMware ESXi, necesitará utilizar otros productos de la plataforma VMware vSphere para obtener las funciones necesarias. No existen tales restricciones para KVM porque el hipervisor KVM es de código abierto y es compatible con otras soluciones comerciales y de código abierto. Puede integrar KVM con todo lo que necesite, incluida su infraestructura existente que funcione con plataformas Linux y Windows. No hay dependencia del proveedor.

KVM utiliza un agente instalado en un host para comunicarse con el hardware físico del host.

Para ello, VMware ESXi utiliza el plano de gestión de VMware. Este enfoque permite a ESXi acceder a otros productos VMware utilizando este plano de gestión, pero se requiere la pila de control de VMware.

Active Directory

La integración con Microsoft Active Directory para la autenticación de usuarios es compatible con VMware vSphere. Esta función permite a los usuarios iniciar sesión en VMware vSphere Client utilizando cuentas de Active Directory.

KVM funciona en máquinas Linux. Puede añadir máquinas Linux a un dominio de Active Directory. La configuración es más complicada en comparación con VMware vSphere.

La integración de KVM con OpenStack es excelente. El hipervisor KVM está clasificado como Grupo A con OpenStack (la máxima compatibilidad). Los desarrolladores de Linux tienden a preferir el uso de KVM.

VMware vSphere es compatible con la familia de productos OpenStack. El hipervisor VMware está clasificado como Grupo B con OpenStack.

Almacenamiento

KVM utiliza cualquier almacenamiento soportado por Linux a nivel físico y lógico. Esto significa que puedes utilizar tanto unidades SAS como SATA, volúmenes LVM, recursos compartidos NFS e iSCSI, etc. El almacenamiento compartido puede configurarse en un servidor Linux o en un dispositivo de almacenamiento en red (NAS).

Las máquinas virtuales KVM soportan el uso de imágenes de disco virtual y Raw Device Mapping (Virtio-scsi Passthrough). Puede adjuntar un volumen LVM a una VM KVM. KVM es compatible con las imágenes de disco virtual de VMware.

VMware sólo admite almacenamiento local en unidades de disco SAS formateadas con el sistema de archivos VMFS. Las unidades de disco SATA se conectan como almacenamiento remoto.

VMware vSphere es compatible con diversos proveedores de redes de área de almacenamiento (SAN).

vSphere ofrece funciones de almacenamiento como vSAN, vVols y Raw Device Mapping (RDM).

Formatos de imagen de disco

Los formatos de imagen de disco nativos y las extensiones de archivo son diferentes para los hipervisores VMware y KVM.

Formatos de imagen KVM

KVM admite muchos formatos de archivo de disco virtual, pero los formatos nativos son raw y qcow2.

  • Raw es el formato más sencillo sin compatibilidad con instantáneas. Utiliza la extensión de archivo img. Si un sistema de archivos del disco subyacente admite huecos (por ejemplo, ext2, ext3), sólo los bloques escritos del disco virtual ocupan espacio en el disco físico. Los bloques pertenecientes a los archivos eliminados siguen ocupando espacio de almacenamiento. El formato raw es una imagen bit a bit que es aproximadamente un 10% más rápida que Si hace backup de una máquina virtual utilizando un disco virtual raw, el backup incremental no es compatible y sólo está disponible el backup completo. *.img es el formato de archivo de las imágenes de disco sin procesar.
  • qcow2 es un formato de imagen de disco virtual QEMU y proporciona el mejor conjunto de funciones para máquinas virtuales KVM. QCOW2 (QEMU Copy On Write) admite compresión basada en zlib, cifrado AES opcional e instantáneas múltiples. Los archivos de imagen de disco virtual pueden ser más pequeños en sistemas de archivos que no admitan agujeros (el rendimiento puede disminuir si no se admiten agujeros para ahorrar espacio de almacenamiento). Como resultado, este formato de copia en escritura es compatible con el thin provisioning. Se admite TRIM/UNMAP. Puede recuperar (UNMAP) el espacio de disco no utilizado con la herramienta de línea de comandos virt-sparsify. *.qcow2 es el formato de archivo de las imágenes de disco qcow2.

Nota: Si crea una instantánea de un disco virtual qcow2 en virt-manager, no se crea un nuevo archivo de instantánea. La instantánea se crea dentro del archivo qcow2, lo que no es conveniente. Puede utilizar las teclas qemu-img create o virsh snapshot-create-as para crear una instantánea como un nuevo archivo.

  • VMDK es un formato de imagen de disco virtual de VMware. Puede utilizar este formato si planea migrar una VM entre hipervisores VMware y KVM. Los hipervisores VMware no admiten imágenes de disco virtual KVM nativas (raw y qcow2).
  • VDI es el formato de archivo de disco virtual nativo de Oracle VirtualBox.
  • VHDX es utilizado por las máquinas virtuales Hyper-V. Lea sobre la diferencia entre VHD y VHDX.

KVM también soporta los formatos de imagen de disco dmg, parallels, vvfat, qed, qcow, cow, nbd, cloop, bochs para una mayor compatibilidad.

Formatos de imagen VMware

VMware ESXi sólo es compatible con el formato de archivo de disco virtual VMDK. Un disco virtual VMware ESXi consta de un archivo descriptor *.vmdk y un archivo de datos de disco virtual *-flat.vmdk. Se admite el aprovisionamiento fino y el UNMAP automático (recuperación de espacio libre).

Los hipervisores VMware no son compatibles con las imágenes de disco virtual KVM. Debe convertir una imagen de disco virtual KVM al formato VMDK de VMware con la herramienta de línea de comandos para migrar un disco virtual a un hipervisor VMware. qemu-img para migrar un disco virtual a un hipervisor VMware. Puede utilizar la función de recuperación entre plataformas para convertir los formatos de disco virtual compatibles para la migración de máquinas virtuales entre hipervisores mediante una copia de seguridad de la máquina virtual.

Se recomienda proteger los datos almacenados en discos virtuales independientemente del formato utilizado. Para más información, lea este libro blanco sobre las tendencias en protección de datos en 2023.

Redes KVM vs VMware

La virtualización de redes y la conexión de máquinas virtuales mediante redes virtuales a redes físicas son necesarias para el funcionamiento de los centros de datos virtuales. Los adaptadores de red virtuales y los conmutadores virtuales son otros requisitos para la conexión de red de las máquinas virtuales.

KVM

  • Open vSwitch (OVS) es la implementación de código abierto de un conmutador virtual que puede utilizarse con KVM. Se admiten varios modos de puente, incluido un puente virtual privado y un puente virtual público. La distribución entre servidores físicos se admite de forma similar a un conmutador virtual distribuido en VMware vSphere.
  • Puede configurar NIC bonding y NIC teaming para garantizar la redundancia de enlaces o la agregación de enlaces si tiene dos o más interfaces de red en un servidor Linux que ejecuta un hipervisor KVM. La configuración se realiza manualmente en la interfaz de línea de comandos. La vinculación de NIC permite configurar varios enlaces de red para que funcionen como uno solo y sumen su ancho de banda. Por ejemplo, dos adaptadores de red de 1 Gbit funcionan como un único adaptador de red de 2 Gbit (forman una única tubería gruesa).

NIC teaming permite configurar la conmutación por recuperación y el equilibrio de carga. Si configuras dos adaptadores de red de 1 Gbit para utilizar NIC teaming, no obtendrás el rendimiento de 2 Gbit cuando transfieras datos a/desde otro ordenador. Sin embargo, si dos ordenadores con una velocidad de red de 1 Gbit se conectan a tu servidor, cada uno de los servidores conectados puede utilizar el ancho de banda de 1 GB.

  • La interfaz de red virtio admite VLAN. Puede utilizar livirt, que es una API de virtualización de código abierto, para gestionar las funciones de red. Hay un servicio de servidor DHCP integrado en QEMU. Puede configurar redes VXLAN en máquinas Linux con KVM. La variante de Linux en la que ejecutas KVM proporciona opciones de cortafuegos extra amplias si configuras iptables.

VMware vSphere

VMware vSphere dispone de dos tipos de conmutadores virtuales: el vSwitch estándar y el conmutador virtual distribuido. Se configura un vSwitch estándar en cada host ESXi individualmente. Un vSwitch distribuido se configura en vCenter de forma centralizada y la configuración se aplica a todos los switches virtuales en todos los hosts ESXi seleccionados.

VLAN es compatible con los conmutadores virtuales VMware. Si desea configurar VXLAN, debe utilizar VMware NSX. VMware ofrece la solución NSX para redes definidas por software, que proporciona potentes opciones de virtualización de red.

VMware ESXi en vSphere es compatible con la agregación de enlaces (NIC teaming) para el equilibrio de carga de red y la conmutación por error. Puede configurar la agregación de enlaces en la interfaz web de VMware vSphere Client o VMware Host Client en unos pocos pasos. VMware ESXi incluye un cortafuegos integrado con opciones básicas.

Migración de máquinas virtuales

KVM es compatible con la migración en vivo de máquinas virtuales entre hosts KVM, lo que le permite migrar máquinas virtuales en ejecución sin interrupción del servicio. Durante una migración en vivo, la máquina virtual está encendida, la red funciona y las aplicaciones se ejecutan. Tenga en cuenta que los archivos VM deben almacenarse en un almacenamiento compartido.

KVM admite la migración de almacenamiento cuando se necesita migrar archivos VM almacenados en un host KVM a otro host KVM (en este caso no se requiere almacenamiento compartido). Los desarrolladores de KVM están planeando implementar pronto la migración en vivo de almacenamiento KVM.

VMware vSphere dispone de la función vMotion para realizar la migración en vivo de máquinas virtuales entre hosts ESXi.

VMware es compatible con la migración en vivo del almacenamiento de máquinas virtuales. VMware vSphere Storage vMotion permite migrar archivos de máquinas virtuales entre hosts ESXi y sus almacenes de datos, incluso si una máquina virtual está en ejecución.

Funciones de agrupación

Las funciones de clustering de KVM son limitadas. Una de las opciones para crear un clúster de alta disponibilidad es utilizar la replicación en red DRBD, que sólo admite dos nodos sincronizados sin cifrado. Configurar una conexión VPN cifrada puede proteger los datos transferidos a través de la red. KVM no tiene herramientas integradas como la tolerancia a fallos. Se necesita una aplicación Heartbeat para intercambiar mensajes de servicio sobre el estado de un clúster dentro del clúster. Pacemaker es un gestor de recursos de clúster.

El equilibrio de carga de máquinas virtuales no está disponible de fábrica. oVirt y el software comercial de terceros con múltiples módulos son soluciones para el equilibrio de carga. Configurar el equilibrio de carga para KVM no es fácil y requiere muchas operaciones manuales. El gestor de virtualización oVirt requiere la compra de una suscripción para la compatibilidad con el soporte técnico que se puede utilizar para desplegar y gestionar un clúster para máquinas virtuales KVM.

VMware ofrece excelentes funciones de agrupación en clúster, como la alta disponibilidad (HA) y el programador de recursos distribuidos (DRS). Si utiliza un clúster de HA, puede configurar la tolerancia a fallos para varias máquinas virtuales. Existe Distributed Power Manager, que permite ahorrar energía si hay recursos no utilizados dentro de un clúster y las máquinas virtuales no necesitan recursos informáticos adicionales. La configuración de las funciones de clustering de VMware es sencilla y puede realizarse en la interfaz gráfica de fácil uso de VMware vSphere Client. Existen muchas opciones de clustering en VMware vSphere. Hay un ebook disponible sobre VMware clustering.

VMware es el ganador en la categoría de clustering de la comparativa VMware vs KVM.

Compatibilidad con SO huésped

Los hipervisores VMware ESXi y KVM son compatibles con muchas familias de sistemas operativos que pueden ejecutarse en máquinas virtuales, entre las que se incluyen:

  • Windows (empezando por los antiguos como Windows 95 y Windows NT)
  • Linux, incluidas distribuciones como Ubuntu, Debian, OpenSUSE, Red Heat, CentOS, Fedora, Oracle Linux, Kali Linux, etc., así como Free BSD y otros sistemas operativos basados en BSD.
  • Solaris, OpenSolaris, Novell Netware y MS-DOS
  • MacOS puede instalarse en ESXi, pero con pasos adicionales como la instalación de parches. Si quieres instalar macOS en KVM, tienes que instalar los paquetes necesarios en el host Linux.

La compatibilidad con sistemas operativos invitados es casi idéntica.

Adaptación para contenedores

La popularidad de los contenedores es cada vez mayor y su compatibilidad es la opción deseada en los centros de datos virtualizados.

KVM

Ejecutar contenedores utilizando el proveedor KVM/Libvirt permite ejecutar el motor Docker en una máquina Docker (VM) de forma transparente sin configurar manualmente la VM. El controlador KVM para ejecutar contenedores puede instalarse descargando el paquete docker-machine-driver-kvm.

Nota: También existe un controlador similar para VirtualBox e Hyper-V.

La ejecución de contenedores mediante el controlador Docker/KVM permite aislar mejor los contenedores de la máquina anfitriona y mejorar el rendimiento en comparación con la creación manual de máquinas virtuales con contenedores dentro de las máquinas virtuales. Puede ejecutar el comando docker-machine create para crear máquinas locales adicionales. Normalmente se utiliza una distribución ligera de Linux con el instalador del demonio Docker (por ejemplo, boot2docker). La herramienta virsh se utiliza para ver los recursos de libvirt. El comando docker-machine ls se utiliza para listar las máquinas Docker disponibles. También puede desplegar Kubernetes en máquinas que ejecuten el hipervisor KVM.

VMware vSphere

Contenedores integrados de VMware. Esta función se utiliza para ejecutar contenedores como máquinas virtuales en hosts ESXi. Una infraestructura virtualizada vSphere y la agrupación en clústeres constituyen una plataforma fiable para ejecutar contenedores. Las redes VMware vSphere se utilizan como redes para los contenedores Docker y se muestran en el cliente Docker. La ligera máquina virtual Photon Linux, diseñada para ser «sólo un núcleo», arranca desde una imagen ISO para ejecutar contenedores. Puede gestionar máquinas virtuales contenedoras en VMware vSphere Client.

Los componentes principales son vSphere Integrated Containers Engine y vSphere Integrated Containers Registry. Estos componentes son compatibles con imágenes Docker. Las imágenes de los contenedores se ubican en el almacenamiento VMFS, y VMware vSphere es el plano de control. Sin embargo, el despliegue de contenedores como máquinas virtuales no es óptimo si se compara con el despliegue de contenedores en la nueva plataforma VMware Tanzu.

VMware Tanzu es el servicio más reciente para ejecutar contenedores en VMware vSphere. Este servicio es el sucesor de VMware Integrated Containers y tiene más ventajas. VMware Tanzu forma parte de ESXi, y los contenedores pueden ejecutarse directamente en un host ESXi de forma más eficiente. Se compatibiliza la instalación de Kubernetes. VMware vSphere Tanzu crea un plano de control dentro de la capa del hipervisor ESXi. Los principales componentes de Tanzu son Tanzu Runtime Services y Hybrid Infrastructure Services.

Puede gestionar Tanzu y contenedores en vCenter y VMware vSphere Client. La herramienta tradicional kubectl también está disponible para gestionar Kubernetes. Se recomienda implementar VMware NSX-T para utilizar vSphere Pods, Embedded Harbor Registry y el equilibrador de carga de red. Sin embargo, puede utilizar conmutadores virtuales estándar y distribuidos para configurar redes para contenedores sin las funciones avanzadas. Un clúster de alta disponibilidad que utiliza almacenamiento compartido es la solución óptima para ejecutar Tanzu con contenedores en VMware vSphere. Los agentes Spherelet se instalan en hosts ESXi y los hacen funcionar como nodos trabajadores de Kubernetes.

Los administradores de VMware vSphere pueden proporcionar acceso a DevOps y otros usuarios para crear y configurar contenedores utilizando vSphere Integrated Containers y VMware Tanzu. Existe un portal de servicios para los usuarios. VMware Tanzu requiere una licencia para una de las ediciones Tanzu disponibles.

Backup de datos

En cuanto a la comparación de hipervisor KVM vs VMware, estas dos plataformas de virtualización no son idénticas a la hora de hacer backups. Es mejor planificar el proceso de backups en función de requisitos como el tiempo de backup, la automatización, la interrupción del servicio (tiempo de inactividad), el RTO y el RPO antes de seleccionar la plataforma de virtualización. Tenga en cuenta las opciones de backups para el hipervisor que va a hacer backups en su infraestructura.

KVM backup

Los métodos básicos para hacer backups de VMs KVM son usando virsh, que es la herramienta de línea de comandos Linux para KVM. Cuando se utiliza virsh, la VM debe estar apagada. Puede utilizar comandos y scripts para hacer backup de máquinas virtuales en ejecución y automatizar el proceso de backups. Cron se utiliza para ejecutar scripts basados en una programación. Para hacer backup de máquinas virtuales en ejecución es necesario utilizar instantáneas. Una instantánea fija los datos en un estado consistente en el momento de la creación de la instantánea y permite hacer una copia de los datos consistentes cuando una máquina virtual está en ejecución. Instantánea y backups no son sinónimos. Permítanme cubrir los métodos para hacer backup de KVM VM.

  • Volúmenes LVM adjuntos a una máquina virtual. Puede utilizar las funciones nativas de instantáneas LVM y hacer backup de los datos de las máquinas virtuales. Las ventajas son la sencillez y el alto rendimiento. Las desventajas son la dificultad de gestión, la disponibilidad de migración a otro host KVM y la menor flexibilidad para la gestión del espacio de almacenamiento de las máquinas virtuales.
  • Imágenes de disco virtual RAW (IMG). No se admiten instantáneas. Sólo es compatible hacer backups de máquinas virtuales apagadas.
  • Imágenes de disco virtual QCOW. Se admiten instantáneas, lo que significa que puedes hacer backup de máquinas virtuales en ejecución.

Para crear una instantánea de una máquina virtual en ejecución, se debe instalar un agente invitado QEMU en un sistema operativo invitado y se debe establecer el dispositivo de canal con el nombre org.qemu.guest_agent.0 en la configuración de la máquina virtual. Puede considerar aplicaciones que utilicen la API Backup and Restore para hacer backups de KVM. Las capacidades para hacer backups incrementales se basan en las funciones de libvirt y oVirt.

La replicación KVM puede realizarse con Distributed Replicated Block Device (DRBD), que forma parte del núcleo Linux. En este caso, la replicación de máquinas virtuales es sincrónica.

Backup de VMware vSphere

VMware vSphere proporciona potentes funciones de protección de datos, incluidas las copias de seguridad y la replicación de máquinas virtuales. Las API de VMware vSphere para la protección de datos (API de vStorage para la protección de datos) permiten hacer backup de máquinas virtuales en ejecución a nivel de host mediante instantáneas y quiescencia de datos para conservar los datos en un estado coherente. En ESXi Libre se pueden utilizar scripts y backups manuales de máquinas virtuales apagadas, ya que en este caso las APIs para la protección de datos están deshabilitadas.

Es necesario instalar VMware Tools en un sistema operativo invitado para que los datos se almacenen correctamente al tomar una instantánea. Se crea un nuevo archivo de disco virtual instantáneo en un almacén de datos conectado al host ESXi.

VMware vSphere es compatible con Changed Block Tracking para realizar un seguimiento de los bloques modificados para hacer backups incrementales. El backup incremental permite ahorrar espacio de almacenamiento copiando sólo los datos que han cambiado desde la operación de backup anterior.

En la categoría de backup de máquinas virtuales, el ganador es VMware vSphere en esta comparación de hipervisores VMware vs KVM.

Selección de una solución de backup

Una buena solución de backup debe estar diseñada para aprovechar al máximo las funciones nativas de VMware, como el seguimiento de cambios y el quiescing. NAKIVO Backup & Replication es una solución de protección de datos sin agentes para máquinas virtuales VMware que se ejecutan en vSphere. NAKIVO Backup & Replication es compatible con funciones avanzadas para la protección de datos, incluyendo:

  • Backup coherente con las aplicaciones e incremental de las máquinas virtuales en ejecución.
  • Backup de VMs en un cluster
  • Ajustes avanzados de retención
  • Recuperación instantánea de VM y recuperación de P2V
  • Recuperación granular instantánea de archivos y objetos de aplicaciones
  • Repositorios inmutables en almacenamiento local y en la nube

KVM vs VMware – Tabla comparativa

Resumamos en una tabla los puntos principales de la comparación entre hipervisores KVM y VMware antes de sacar conclusiones.

Función KVM VMware vSphere
Tipo de hipervisor Tipo 1 Tipo 1
Complejidad de la instalación Difícil Fácil
Almacenamiento Todos los tipos de almacenamiento compatibles con Linux Discos SAS para almacenamiento local. Almacenes de datos VMFS, iSCSI, NFS
vSAN, vVols No
Formato de disco virtual nativo RAW(IMG), QCOW2 VMDK
Asignación de dispositivos sin procesar Sí. LVM es compatible
Aprovisionamiento fino
Sistemas de archivos nativos Sistemas de archivos Linux, NFS VMFS, NFS
Instantáneas de máquinas virtuales
Migración de máquinas virtuales
Migración del almacenamiento de máquinas virtuales
Migración de almacenamiento VM Live No
Funciones de agrupación Sí (limitado) Sí (amplia compatibilidad)
Alta disponibilidad Sí, con DRBD
Equilibrio de la carga Limitado Sí (DRS)
Tolerancia a fallos No
Interfaz de gestión Línea de comandos (virsh), KVM virt-manager Cliente vSphere, Cliente host, ESXCLI, PowerCLI
Integración AD
Precio Gratuito/bajo (sólo hay que pagar por la compatibilidad con la tecnología) Alta
rendimiento Alta Alta
Opciones de backup de VM Limitado Ancho
Asistencia técnica Oracle KVM, Red Hat KVM
Sistemas operativos invitados compatibles Ancho Ancho
Red Conmutación virtual, conmutación distribuida, NIC bonding, agregación de enlaces vSwitch, vSwitch distribuido, NIC Teaming y agregación de enlaces, NSX
Cortafuegos Amplias funciones de Linux con iptables Cortafuegos ESXi básico o funciones adicionales de NSX
Integración de contenedores
VDI Sí, con OpenStack Sí, con VMware Horizon
Virtualización anidada
Clones vinculados a máquinas virtuales

Conclusión

En una comparación de hipervisores KVM vs VMware, cada uno tiene sus pros y sus contras dependiendo de tus necesidades y del uso práctico. Sin embargo, si utiliza máquinas virtuales para ejecutar aplicaciones críticas y almacenar datos críticos, tenga en cuenta que las opciones de backups para máquinas virtuales KVM son limitadas. Hacer backup de máquinas virtuales en estado de ejecución puede ser todo un reto. VMware vSphere proporciona API para la protección de datos que permiten a los desarrolladores crear soluciones de backup funcionales para proteger las máquinas virtuales a nivel de host. Si utiliza VMware vSphere, descargue gratuitamente NAKIVO Backup & Replication para proteger sus máquinas virtuales.

1 Year of Free Data Protection: NAKIVO Backup & Replication

1 Year of Free Data Protection: NAKIVO Backup & Replication

Deploy in 2 minutes and protect virtual, cloud, physical and SaaS data. Backup, replication, instant recovery options.

Artículos recomendados