Hoy vamos a buscar una plataforma de virtualización de código libre dentro de las distintas alternativas a nuestra disposición. En mi caso la opción elegida para analizar ha sido KVM. Vamos a ver que nos puede ofrecer la virtualización con KVM como una opción de virtualización de código abierto.
VM me parece una opción de futuro
puesto que recientemente Red Hat a apostado fuerte por esta
solución, lo que le garantiza un recorrido y un desarrollo
importante en los próximos años. KVM se
encuentra integrado en el núcleo de Linux a partir de la
versión 2.6.20 del kernel. Esta aplicación necesita
soporte de hardware para ejecutar la virtualización, ya sea con
procesadores de Intel o de AMD. En caso
de que nuestro procesador no soporte dichas tecnologías de
virtualización será inútil intentar instalarlo.
$ cat /proc/cpuinfo | grep vmx # para CPUs Intel
$ cat /proc/cpuinfo | grep svm # para CPUs AMD
Si el sistema no nos devuelve nada me temo que no tenemos soporte de virtualización en nuestro procesador o no lo tenemos activado. En caso afirmativo, instalamos los paquetes necesarios:
$ sudo apt-get install kvm libvirt-bin ubuntu-vm-builder bridge-utils
e incluimos el usuario en el grupo de kvm
$ sudo adduser $USER kvm
Una vez realizado todos estos pasos tendremos que reiniciar la sesión, dependiendo de la versión de Ubuntu que estemos utilizando. Si todo ha ido bien, tendremos una nueva entrada en nuestro menú Aplicaciones/Herramientas del Sistema/Administrador de Máquina Virtual desde donde podemos comenzar la instalación de nuestras máquinas virtuales.
Creación de las máquinas virtuales
Lo primero que tenemos que hacer es asignar un nombre al sistema que vamos a virtualizar, y luego nos permite elegir cómo queremos virtualizarlo, ya sea virtualización completa o paravirtualización. Este segundo método utiliza el hipervisor para compartir el acceso al hardware subyacente pero integra código que está al tanto de la virtualización en el propio sistema operativo. Es necesario que los sistemas operativos alojados sean modificados por el hipervisor. Ofrece un rendimiento próximo al de un sistema no virtualizado. En mi caso he optado por una virtualización completa para tratar de aproximar los resultados al resto de opciones que hemos virtualizado.
Comenzamos con el asistente a definir las opciones de nuestra máquina virtual. Podemos elegir visor, ya sea KVM o QEMU y la instalación la podemos llevar a cabo mediante una imagen ISO, un CD o a través de la red. Lo siguiente que debemos hacer es indicar donde está la imagen *.ISO y dónde vamos a alojar nuestro disco duro virtual. Podemos elegir si le damos el tamaño fijo o dentro del tamaño asignado el archivo de imagen va creciendo a medida que vamos instalando archivos. Después nos bastará con elegir las opciones de red, ya sea red virtual o compartir la tarjeta de red física con el equipo anfitrión. Por último asignamos memoria y CPU a la máquina virtual y ya tendremos creada nuestra máquina virtual.
Una vez creada la máquina virtual tendremos que instalar el sistema operativo que hayamos elegido al igual que haríamos en este caso con un ordenador al que le acabamos de instalar el disco duro. Este proceso nos llevará más o menos tiempo en función de la memoria y procesador que hayamos asignado a nuestra máquina virtual, así como si instalamos a través de CD, de una imagen *.ISO o de la red que son las opciones disponibles.

El soporte de los USB es bastante bueno. Tenemos que seleccionar la opción de añadir hardware en las opciones de la consola, hardware donde tenemos una opción para añadir hardware. En este caso para dispositivos USB podemos añadirlos como dispositivos de almacenamiento, seleccionando directamente la partición de disco y la opción de disco USB. Con esta opción podemos utilizar nuestro dispositivo tanto en nuestro sistema anfitrión como en nuestro invitado. Siempre es posible realizar mejoras en este sector que creo que es uno donde todos los sistemas tiene margen para conseguir que la experiencia del usuario sea más satisfactoria.

Respecto a la instalación de los dispositivos USB uno de los aspectos positivos es que una vez instalado el controlador del dispositivo en el equipo invitado podremos conectarlo directamente en caliente. No es necesario tener previamente seleccionado el dispositivo antes de arrancar el sistema, ni siquiera es necesaria que la unidad esté montada en nuestro sistema. El aspecto que menos me ha gustado ha sido el gráfico, donde creo que KVM rinde peor que otras soluciones en el apartado gráfico puesto que no soporta la aceleración por hardware 3D que si está disponible por ejemplo en VirtualBox.
Un aspecto que me ha parecido interesante es la incorporación de los gráficos de rendimiento de los sistemas virtuales dentro de Virtual Manager que nos indica como se está comportando nuestro sistema virtual, qué uso está haciendo de la CPU o de la memoria, datos que nos ayudan a ver el rendimiento de estas máquinas y hasta que punto podemos tener varias trabajando en paralelo en nuestro ordenador.

Respecto a los puntos negativos de este sistema podemos subrayar que únicamente está disponible para Linux, por lo tanto no se trata de un sistema multiplataforma y esto sin duda le resta puntos. Podríamos decir que es el equivalente de Virtual PC en sistemas Linux, con un buen rendimiento aún a costa de una peor resolución gráfica. La parte buena es que al estar integrado en el kernel de Linux la relación entre sistemas es bastante buena.
En general KVM no me parece muy intuitivo, no es que tampoco podamos decir que es complicado, pero si es verdad que para usuarios noveles no es el sistema con el cual yo les recomendaría que se iniciasen en la virtualización. Existen formas más sencillas de dar soluciones a distintos aspectos de la virtualización, y no me refiero a nivel técnico, sino respecto a la usabilidad del programa, que a veces te puedes perder un poco entre las distintas opciones.
Para finalizar esta serie de artículos sobre sistemas virtualizados el próximo día haremos un pequeño resumen de las características de cada uno de ellos y sus aspectos más destacados, que nos ayude a elegir la opción más adecuada para cada uno, puesto que cómo habéis podido observar respecto a las distintas opciones presentadas no existe una buena y otra mala, sino que dependiendo de las circunstancias de cada uno se obtendrán mejores o peores resultados con una u otra opción.
Más Información | KVMSi quieres recibir cada semana las noticias más interesantes suscríbete a nuestro boletín.


La virtualización soluciona el problema "no es que no quiera usar Linux... es que yo NECESITO Corel Draw porque si no no puedo hacer los cartelitos para pegar a los archivadores".
Una máquina virtual permite correr todas esas aplicaciones cuyos fabricantes se han empecinado en que sólo funcionen en windows. A demás con la ventaja de no necesitar antivirus porque desinfectar una máquina virtual es tan fácil como darle a un botón y esperar unos segundos.
hola buenos dias por fa necsito ayuda para crear un simulador de un tekecajero automatico