best counter

KVM, ¿el nuevo rey de la virtualización?

18 de octubre de 2009 - por thrash

18 comentarios

Alguna vez hemos hablado de KVM en este blog. KVM es uno de los muchos sistema de virtualización que hay en Linux. Como siempre, tiene sus detractores y sus defensores. Aquí no vamos a opinar si es mejor o peor, sino a comentar características técnicas de él y haceros la pregunta que hacemos en el título del post: ¿será el nuevo rey de la virtualización?

kvmbanner-logo2

¿Por qué nos hacemos (y se la hacemos a los lectores) esta pregunta? Muy sencillo. Red Hat compró Qumranet hace ya un tiempo (recordemos que en el mundo de la informática 6 meses ya es “historia” y 1 año es “prehistoria” ;) y ha invertido mucho tiempo y dinero (tanto en su desarrollo como en marketing) en KVM. Cierto es que Red Hat empezó impulsando Xen muy fuerte, pero luego cambió/compró a KVM. ¿Lo hizo porque Xen fue comprado por Citrix? ¿Lo hizo porque tecnológicamente no le convencía más? No lo sabemos.

¿Por qué KVM y no Xen? Hay respuesta técnicas, económicas, sociales y de todo tipo para responder a esta pregunta. Yo voy a dar algunas técnicas que, en mi opinión, son importantes/interesantes.

Para empezar, KVM es un módulo más del kernel. Esto significa que no es un kernel diferente como le ocurre  Xen. Al ser un módulo del kernel

  • lo podemos cargar y descargar en tiempo de ejecución
  • soporta los demás módulos
  • viene por defecto del kernel (Xen no viene por defecto, hay que parchear aunque algunas distros parchean el kernel para nuestra propia comodidad)

En segundo lugar, debido a que es parte del kernel, “hereda” (mejor dicho, utiliza) muchas de las ventajas que ya tiene el kernel por sí como son:

  • eclabilidad
  • soporte para diferentes procesadores (Itanium, x86_64 y x86)
  • gestión de memoria
  • NUMA

En el apartado de memoria, una ventaja que tiene frente a Xen es la posibilidad de compartir páginas de memoria. Esto es una gran ventaja ya que nos permite ahorrar memoria (y dinero).

Otra ventaja que podemos mencionar es que, al ser parte del kernel, tiene menos líneas de código ya que muchas características las aprovecha del propio kernel. Esto implica un desarrollo más fácil y centralizado.

¿Qué esfuerzos comerciales está haciendo Red Hat con KVM? En primer lugar, Red Hat está ofreciendo KVM como

  • parte de su RHEL (5.4 y siguientes), no hay nada nuevo en esto, otras distros tmbién lo ofrecen
  • un “appliance” llamado RHEV (Red Hat Enterprise Virtualization) que no es más que una versión de RHEL “pelada” en la que no hay servicios ni aplicaciones casi, sinó que se centra todo en KVM. Esto sería un equivalente a VMWare, por ejemplo, en que sólo tenemos el kernel y el sistema de virtualzaición, pero no tenemos ningún otro servicios “molestando”

Como siempre, en el mundo FLOSS la idea es ofrecer diferentes opciones a los usuarios. Si quieres un Linux completo … pues te vas a la primer opción. Que lo que quieres es un sistema de virtualización puro y duro basado en FLOSS … pues tiras por el segundo camino. Como podéis ver, parece que el contricante real NO es Xen sinó … VMWare. Como digo, “parece”, no somos de Red Hat y no lo podemos confirmar ;)

Si fuera cierto que el principal contrincante es VMWare, KVM-Red Hat se pueden topar con un “pequeño” problema: gestión. VMWare lleva muchos años en el mercado y tiene una herramienta de gestión realmente potente y cómoda de utilizar. ¿Podrá Red Hat igualar (o superar) esa herramienta de gestión? No sólo eso sino que VMWare tiene una serie de productos orientados al mundo de la virtualización muy completo. Red Hat no lo tiene fácil, pero cierto es que Red Hat tiene muy buena visión de negocio y sabe lo que hace. Puede que con esta primera versión no consiga un producto equivalente a VMWare, pero el tiempo seguro que le permite competir seriamente con VMWare y otros sistemas de virtualización.

Abierta queda la “veda” para comentarios y suposiciones y especulaciones.

Hay 18 comentarios

  1. 1
    juancarlospaco dice:

    KVM tiene PCI passthrough en Karmic,
    o sea placa PCI que enchufas en el mother la VM la ve como es,
    ve el “bare metal”, y no una placa virtualizada generica.
    Ideal para hardware exotico, como Virtualizar Asterisk’os.
    Ademas tiene mejor I/O performance que Xen por lejos.
    Mejor diseño tambien.
    Ademas ya esta integrado en Linux.

  2. 2
    Daniel dice:

    Estuve utilizando Xen en SuSE Linux Enterprise Server por algun tiempo, me funciono perfectamente dado que el Modulo de Virtualizacion ofrecido por el YaST permite una administracion grafica bastante intuitiva. Sin embargo, algunas de las tareas tediosas eran por ejemplo, el reinicio de la interfaz de red de la maquina real, puesto que debes detener el gestor de interfaces virtuales primero; el reinicio automatico de las maquinas virtuales, una vez que era reiniciada la maquina real, entre otras.

    En alguno de los Twitter a los que estoy suscrito, conoci a Proxmox (www.proxmox.com), son su manejo eficiente de OpenVZ y KVM, y desde entonces, ha sido la herramienta de virtualizacion mas potente y eficiente que con que he trabajado hasta ahora.

  3. 3
    Required dice:

    ¿VMWare? Me daba la impresión de que la gente lo que usa es Virtualbox, al menos en el mundo Linux no empresarial, esa sería la competencia de KVM en mi modesta opinión.

  4. 4
    jado92mx dice:

    apoio a required: al menos en el campo no profesionak o de hobby, el mas usado ha de ser virtualbox… talvez los usuarios expertos qe busquen el mayor rendimiento se decantaran por qemu o kvm

    Saludos!

    JaD!

  5. 5
    antonio dice:

    era justo lo que yo iba a decir,.. virtualbox es la herramienta mas popular y sencilla de virtualización que existe, aunque no sé si será la más potente. ofrece algún tipo de ventajas el uso de kvm sobre el uso de virtualbox?

    por cierto, al escritor del post, se agradece mucho el estilo, has mejorado muchísimo en la calidad y contenido de los dos nuevos artículos que he visto (este y el de la virtualización). hace un tiempo que no visitaba este blog, antes era un poco más sensacionalista y hueco, pero ahora las noticias se ven con más contenido, más consistentes, sigue así!

  6. 6
    antonio dice:

    perdón, me refería a “este artículo y el artículo de kde” :D

  7. 7
    anonimo2 dice:

    Bueno es que VirtualBox no se usa en el ambito tecnico empresarial, muchas empresas con esto de llevarlo todo a la red utilizan mucho VMWare para virtualizar muchos OS en numero menor de servidores.

    VMWare es el lider comercial en virtualizacion, he utilziadoVMWare y VirtualBox (si lo abrevio VB me cuelgan lo mas seguro lol) y aunque VirtualBox es gratuito VMWare es mas maduro.

    Si el contricante real es VMWare, Red Hat esta en una batalla casi imposible de ganar, algo asi como intentar derribar a Oracle en el mundo de las RDBMS. Aparte VMware adquirio SpringSource y se propone a ser el lider en virtualziacion y especializarse en todo lo que tenga que ver con Spring, tambien VMWare amenaza con involucrarse en el mundo de la cloud computing con un stack basado en Spring y en Java, asi que solo puedo decir que VMWare se fortalece cada dia mas. Pero, en mi mundo no existen rivales solo empresas con mucho talento, le deseo lo mejor a Red Hat en este mundo nuevo y nada sigamos adelante con post interesantes como este.

  8. 8
    Anónimo dice:

    Todavía no he probado KVM. Le echaré un ojo, aunque con QEMU tengo de sobra para mis pruebas de distros puntuales.

    @antonio, es que son dos autores diferentes los del blog. Thrash y Picajoso hacen artículos diferentes. Los de thrash son más detallados, profundos y técnicos. Mientras que los de Picajoso son más de noticias rápidas para mantenernos informados. De ahí que notes diferencias en las entradas.

  9. 9
    Thrash dice:

    @juancarlospaco: cierto, se me olvidaba lo del passthrough (y seguro que muchas otras cosas 0:) Gracias por comentarlo.

    @Daniel: no he trabajado con Proxmox (sólo lo he probado en casa) y es cierto que es muy interesante. Para los que no conozcan OpenVZ, es una tecnología similar a los jails de BSD, algo parecido al chroot (por lo menos en idea), los contenedores/zonas de (Open)Solaris. Es bastante interesante.

    En cuanto a lo de VMWare, cierto, me refería al mundo empresarial 0:) RHEL está orientado al mundo corporativo/empresarial. Como dice anonimo2, VMWare es el más usado en ese tipo de entornos y se está metiendo mucho en el mundo Cloud.

  10. 10
    Land-of-Mordor dice:

    @Thrash por cierto, no estaría mal si tu tiempo y disponibilidad lo permiten, un pequeño “how to” de como empezar a trabajar con KVM, sobretodo para que los usuarios más ligados a soluciones como VirtualBox puedan comprender sus posiblidades y funcionamiento. Unos conceptos básicos de funcionamiento más cercanos a la implementación real y al usuario pueden ayudar a entender las diferencias entre uno u otro sistema más que una explicación de los “roadmaps” o de las listas de especificaciones.

  11. 11
    Blackhaze dice:

    VMWare es a dia de hoy la mejor solución tanto a nivel empresarial como doméstico mires como lo mires.

    Es irónico que Red Hat prepare su propio software de virtualización, cuando vmware esxi incorpora un kernel basado en Red Hat. Cosas del software libre, supongo xD

  12. 12
    Thrash dice:

    @Land-of-Mordor: Escribí una vez un (muy mini) HOWTO sobre cómo usar KVM en este blog. No ha cambiado mucho la cosa desde entonces (en cuanto a uso y configuración, en cuanto a características sí ;) Mira a ver si te vale:

    http://www.muylinux.com/2008/05/06/kvm-mi-nuevo-amor/

    Es cierto lo que dices de los conceptos básicos … y lo de si tengo tiempo ;) Espero encontrar tiempo y poder hacer lo que propones, pero no te puedo prometer nada.

  13. 13
    juancarlospaco dice:

    Virtualbox no tiene consola de administracion centralizada gente, eso pasa…

  14. 14
    Daniel dice:

    Entre otras cosas, vale la pena destacar que soluciones como VirtualBox (que lo he utilizado y es una maravilla) solo pueden proveer virtualizacion sobre un Sistema Operativo en ejecucion o lo que es llamado Para-Virtualizacion. Es decir, no administra los recursos directamente, los gestiona a traves del S.O. host.

    KVM (asi como OpenVZ y VMWare) tambien necesitan de un S.O. host, pero son capaces de gestionar directamente los recursos de hardware, o lo que es llamado Full-Virtualizacion. Esto permite en cierta medida un mejor rendimiento y aprovechamiento de los recursos disponibles.

    Hay otra excelente herramienta con la que he trabajado llamada Crossover, mas utilizada en un ambiente Particular que Corporativo.

    En mi opinion, la Virtualizacion es la caña, siempre y cuando se dimensione correctamente el hardware.

  15. 15
    Sergi dice:

    Daniel, ¿pero que un sistema huesped pueda gestionar el hardware no es un agujero de seguridad como la copa de un pino? ¿Os imagináis estar virtualizando un Windows 98 y que éste pudiera acceder diractamente al hardware? “Disfrutaríamos” de los odiosamente famosos pantallazos azules en nuestro sólido Linux! Vivir para ver… XDD

  16. 16
    Anonimo dice:

    Hola,

    Para los que hablan de virtualbox… Virtualbox es una solución de virtualización para escritorio, no para servidores. Es el usuario el que lanza la VM, la para,… Si el usuario cierra su sesión, se cierra el virtualbox y las VM. En Xen, KVM, VMware… son virtualizaciones para servidores. Las VM se lanzan al arrancar, no van ligadas a un usuario.

    Sergi: En casi cualquier VM de servidor es conveniente (o puede serlo) el gestionar el HW desde la VM. No creo que nadie monte W98 en este tipo de virtualizaciones, no tiene mucho sentido (salvo quizás algún caso concreto), ya que es para montar servidores.

    En cuanto a VMWare hay mucho mundo fuera de VMWware. Cierto que es el más usado, pero hay mucho mundo fuera. Hay muchos proveedores de hosting que dan servicios mediante VM Xen (o KVM u otros), por ejemplo.

  17. 17

    [...] como el soporte de nuevo hardware y las mejoras implementadas en la virtualización a través de KVM, una tecnología que está siendo uno de los valores más claros de esta solución [...]

  18. 18

    [...] como el soporte de nuevo hardware y las mejoras implementadas en la virtualización a través de KVM, una tecnología que está siendo uno de los valores más claros de esta solución [...]

Escribe tu comentario