¿Qué es más rápido en el mismo hardware, Xen o KVM?
Estoy tratando de elegir una tecnología de virtualización para que funcione, lo que brinda el mejor rendimiento.
Aquí hay algunos puntos de referencia que encontré sobre el tema: http://virt.kernelnewbies.org/XenVsKVM
Muestran a KVM como un ganador, con una diferencia significativa en el rendimiento, lo que va en contra de la idea de que KVM es un hipervisor de tipo 2 y, por definición, debería ser más lento que los hipervisores de tipo 1 (como Xen), o al menos eso es lo que artículos en la web dicen.
¿Alguna idea sobre el tema?
xen
kvm-virtualization
performance
benchmark
SyRenity
fuente
fuente
Respuestas:
Ese punto de referencia solo compara la velocidad del sistema operativo nativo con un único sistema operativo invitado. No es una prueba del mundo real. No creo que le ponga mucho peso. La mayoría del campamento de KVM argumenta que Xen requiere demasiadas interrupciones y saltos entre el kernel y el espacio de usuario, pero de la mayoría de los puntos de referencia más reales que he visto que realmente no se han realizado y Xen parece ser un poco más rápido que KVM.
Lo siento, no tengo un enlace que lo respalde a mano. Pero diré que KVM está mejorando rápidamente y parece estar alcanzando rápidamente el conjunto de características y la estabilidad.
En cuanto a qué enfoque es mejor. El campamento de Xen argumentará que un verdadero hipervisor ligero y ligero requiere virtualización para ser seguro y rápido. Xen también está comenzando a ser compatible con el firmware de algunos proveedores, lo que también es bueno. El campamento de KVM argumentará que KVM es más simple y que Linux es capaz de ser un buen hipervisor.
Al final, aún no está claro qué dirección finalmente ganará. Xen ciertamente tiene una ventaja y ya tiene una buena participación de mercado. Pero todavía no está en el núcleo de la línea principal. Esperemos que eso cambie pronto y ciertamente se ha hablado mucho sobre esto en la lista de kernel en los últimos meses. Red Hat está en el campamento KVM ahora y lo impulsará como la plataforma de virtualización elegida. Red Hat Linux 5.4, que saldrá en breve, será el primero en incluirlo. Por lo tanto, es probable que eso atraiga a las tiendas que aún no se han implementado o comprometido con una plataforma de virtualización.
En cuanto a las herramientas, tanto Xen como KVM usan libvirt y QEMU y las herramientas asociadas con ellas. Por lo tanto, comparten muchas de las mismas herramientas, como virt-manager.
Usamos Xen en el trabajo, y nos funciona bien. Pero he estado buscando en KVM debido a algunos problemas de reenvío de USB y transferencia de PCI que no he podido resolver con Xen. No estoy seguro de que KVM sea mejor en esto, pero creo que lo descubriré una vez que lo intente. Una cosa que he notado al investigar mis problemas de USB es que la documentación de KVM es más evaluable y organizada en comparación con la de Xen. Pero no existe una plataforma de virtualización perfecta, por lo que deberá descubrir qué tiene sentido para usted.
fuente
Yo personalmente elegiría la virtualización basada en usabilidad, soporte, confiabilidad e idoneidad para las máquinas virtuales que está utilizando.
Las tasas de transferencia de datos de red de Xen parecen ser tan buenas como el hardware real, pero también he tenido algunas batallas con Xen y vLans y varias tarjetas Ethernet. No tengo experiencia en KVM, pero también te sugiero que consideres VMware ESX (i) también.
fuente
FWIW: La respuesta depende completamente de sus necesidades, ahora y en el futuro.
Sí, sé que es una respuesta inútil. Lamentablemente es verdad. Su elección de virtualización afectará prácticamente todo lo que haga después, por lo que debe hacerse algunas preguntas.
(1) ¿Es realmente importante para usted la diferencia entre el 97% del rendimiento nativo y el 96% del rendimiento nativo (cifras extraídas del aire)?
(1a) Si a uno le va mejor con el acceso a HD (lo que realmente implica que está utilizando una excelente base de datos, o que no puede permitirse la RAM adicional), y al otro le va mejor con las redes, lo cual es más importante para usted ?
(2) ¿Confía en utilizar las herramientas proporcionadas con cualquiera de las soluciones?
(3) ¿El hecho de que uno es (más o menos) nativo de los núcleos de Linux recientes, y el otro no, hace la diferencia?
(3a) ¿Ahora, o alguna vez ha sido ... er ... alguna vez necesitará ejecutar un sistema operativo diferente bajo virtualización? No tiene que ser Windows. Puede ser FreeBSD, o incluso Haiku, o lo que sea. (Xen probablemente gane aquí, pero le sugiero que compruebe).
Mirando el panorama general, veo KVM como la respuesta de Linux a las zonas de Solaris. (Prefiero tener zonas de Solaris, pero veo el paralelo.) Veo a Xen como una tecnología de hipervisor madura con soporte para múltiples sistemas operativos, pero si no necesita múltiples sistemas operativos, eso no importa mucho.
Para ser sincero, no puedes equivocarte de ninguna manera (dadas las advertencias anteriores). Prefiero Xen, porque fui a Cambridge; pero luego, si trabajara para RH, probablemente preferiría KVM.
fuente
Encontrará información muy interesante sobre el tema en la siguiente presentación: Comparación cuantitativa de Xen y KVM
La persona que hizo esto es un experto en Xen, pero la comparación parece bastante justa.
fuente
Podría estar yendo por las ramas aquí, pero no creo que el rendimiento bruto sea la métrica más importante cuando se trata de tecnologías como esta.
Creo que la usabilidad y la interfaz son importantes, así como las herramientas para soportar una infraestructura confiable. Me parece que Xen tiene un conjunto mucho más robusto de aplicaciones existentes que lo admiten que KVM. Ese podría no ser el caso, ya que no tengo evidencia que lo respalde.
Elija lo que elija, decida cuál es la mejor solución para usted y observe el paquete completo, no solo el rendimiento en bruto.
fuente
Gran parte de la dificultad o la facilidad para configurar KVM depende de la distribución. Elegir una distribución centrada en Xen hará que Xen sea más fácil. Elegir una distribución centrada en KVM hará que KVM sea más fácil.
La pregunta de las herramientas es algo irrelevante porque ambos usan libvirt. Esto significa que usa las mismas herramientas de administración para ambos en la mayoría de los casos.
fuente
A finales de 2017, Amazon, que anteriormente era el mayor usuario de Xen, anunció que utilizará KVM para todos sus nuevos tipos de instancias C5 . Que yo sepa, solo el proveedor de la nube SoftLayer queda como un gran usuario de Xen. Linode cambió en 2015 e informó importantes mejoras de rendimiento .
Es difícil encontrar una comparación de rendimiento realista y actualizada, pero no parece haber una brecha tan grande entre ambas soluciones como podría pensar. Dependiendo del caso de uso, Xen puede ser aún más rápido. KVM tiene otros beneficios, ser parte del kernel de Linux y ser aceptado por RedHat, que también son relevantes. Por ejemplo, esta respuesta explica por qué Google elige KVM para Google Compute Engine.
Aún así, el hecho de que casi todos los proveedores de la nube, especialmente Google y Amazon, eligen KVM en lugar de Xen es un fuerte argumento de que, para las cargas de trabajo típicas, KVM es una muy buena opción en términos de rendimiento.
fuente