Visitas: 1
KVM (Kernel virtual Machine) es una solución de virtualización completa para Linux en el hardware x86 con extensiones de virtualización (Intel VT o AMD-V).
Se pueden crear miles de máquinas virtuales de Linux, Windows, etc.
La lista completa de guest que fue probada pueden encontrarla en su sitio oficial.
Cada máquina virtual tiene su propio hardware virtualizado como una tarjeta de red, disco, adaptador de gráficos, procesador, memoria ram, etc
KVM es software de código abierto y es una solución muy buena para nivel empresarial, o también para jugar un poco en nuestras casas. XD
Ahora no daremos más tantas vueltas y comenzaremos con la instalación de KVM.
Quiero aclarar que para este post haremos en la misma máquina (PC) los accesos a los guest, pero también se puede tener en una máquina (PC) como servidor de máquinas virtuales y se accede remotamente a ellas.
OBS:
Ser root
Lo primero que vamos a identificar es si nuestro procesador soporta KVM, los de Intel le llaman Intel-VT y los de AMD le llaman AMD-V. Con los nuevos procesadores que están en el mercado casi seguro que ya soportan virtualización por hardware.
La forma de identificarlos es distinta, para ver si tu procesador soporta virtualización por Kernel, vamos a buscar en las flags del procesador.
Para Intel, escribimos en la consola:
grep --color vmx /proc/cpuinfo
Debe aparecer en rojo un montón de palabras, entre ellas, la palabra vmx.
En el caso de AMD el procedimiento es similar. Escribimos en la consola:
grep --color svm /proc/cpuinfo
Debe aparecer en rojo un montón de palabras, entre ellas, la palabra svm.
Si aparece en tu caso uno de los dos resultados, dependiendo de tu procesador; te recomiendo a que instales KVM; pero si no, sería mejor optar por una solución como VirtualBox, porque con KVM sería muy lento.
Ahora instalaremos los paquetes necesarios, entramos en la consola y escribimos:
aptitude install qemu-kvm libvirt-bin virtinst kvm virt-viewer
Para agregar al usuario que queremos que use la virtualización. En este caso usamos proyectosbeta, pero pueden elegir cualquiera. Escribimos en la consola:
adduser proyectosbeta libvirt
adduser proyectosbeta kvm
Sería bueno cargar el módulo por si las moscas:
Para Intel, escribimos en la consola:
modprobe kvm-intel
Para AMD, escribimos en la consola:
modprobe kvm-amd
Preparar la configuración de red para que los futuros guests tengan conectividad entre el host y los guest.
Entramos en la consola y escribimos:
nano /etc/network/interfaces
Les podría salir algo similar a lo siguiente:
auto eth0
iface eth0 inet dhcp
Deberían de llegar a algo como lo siguiente:
auto br0
iface br0 inet dhcp
bridge_ports eth0
bridge_stp off
bridge_maxwait 5
Antes de crear una máquina virtual debe de reiniciar su sistema. Escribimos en la consola:
reboot
OBS:
Ser usuario proyectosbeta.
Luego de reiniciar podemos continuar.
Creación de VM’s por línea de comando virt-install:
Escribimos en la consola:
virt-install --connect=qemu:///system --name=debian6Prueba --ram=256 --vcpus=1 --check-cpu --os-type=linux --hvm --vnc --accelerate --disk=/home/proyectosbeta/kvm/debian6Prueba.img,size=8,sparse=true --cdrom=/home/proyectosbeta/isos/debian-6.0.4-amd64-netinst.iso --network=bridge:br0
El significado de los parámetros:
- name=debian6Prueba -> El nombre que le vamos a dar a la VM.
- ram=256 -> La RAM que le vamos a asignar (se puede modificar posteriormente).
- vcpus=1 -> CPU’s virtuales que le vamos a asignar.
- check-cpu -> Comprueba que el nº de CPU’s asignadas no exceda el del Host y si es así nos avisa.
- os-type=linux -> Tipo de Sistema Operativo que vamos a instalar (linux o windows).
- hvm -> Que utilice full-virtualization.
- disk=/home/proyectosbeta/kvm/debian6Prueba.img,size=8,sparse=true -> El disco que vamos a crear, size=8 el tamaño en GB, sparse=true que no reserve todo el espacio y que lo vaya asignando a medida que crece el disco (.img).
- cdrom=/home/proyectosbeta/isos/debian-6.0.4-amd64-netinst.iso -> La iso o el cd si está puesto y montado.
- network=bridge:br0 -> Que utilice como red el dispositivo bridge ‘br0’ para poder tener la red en el mismo rango que el host.
Saldría algo como:
Empezando la instalación...
Creando archivo de almacenamiento debianPrueba.img | 8.0 GB 00:00
Creando dominio... | 0 B 00:01
Y nos saldrá esta imagen para que podamos instalar Debian 6 en nuestra máquina.
Al terminar de instalar el guest, ya se inicia automáticamente y podremos usar la máquina virtual que recién creamos.
OBS:
- Quiero aclarar que también se puede crear las máquinas virtuales utilizando LVM.
Espero que lo disfruten y si tienen dudas pregunten nomas. XD