Documente Academic
Documente Profesional
Documente Cultură
MODULO – II
Diplomado en Software Libre GNU/Linux
TEMÁTICA: Virtualización con KVM (Kernel Virtual Machie)
Escuela de la Gestión Pública Plurinacional
Diplomado en Software Libre GNU/Linux
Este tema ofrece información de consulta sobre cómo gestionar entornos virtuales
mediante KVM. Esta página también ofrece información de resumen sobre
el paquete de automatización relacionado.
KVM es una solución de virtualización para Linux en hardware x86 (incluyendo hardware
de 64-bits) que contienen las extensiones de virtualización Intel VT o AMD-V. Se compone
de un módulo del kernel que puede ser cargado, kvm.ko, para proveer toda la
insfraestructura de virtualización base y un módulo específico del procesador, kvm-
intel.ko o kvm-amd.ko.
¿Qué es KVM?
KVM (Kernel Virtual Machine) es un módulo del kernel Linux que permite que los
programas en espacio usuario utilicen las características de virtualización por
hardware ofrecidas por diferentes procesadores. En la actualidad, soporta
procesadores AMD e Intel (x86 y x86_64), PPC 440, PPC 970, S/390, y ARM
(Cortex A15).
¿Qué es QEMU?
QEMU aprovecha KVM cuando ejecuta una arquitectura guest que coincide con la
arquitectura host. Por ejemplo, cuando se utiliza qemu-system-x86 sobre un
procesador x86 compatible, se aprovecha la aceleración de KVM (beneficiando
tanto al sistema guest como al host), ya que el código guest se ejecuta
directamente en el host (sin traducción).
Anteriormente, KVM mantenía su propio fork de QEMU llamado "qemu-kvm" para
soportar virtualización por hardware en arquitecturas x86. Actualmente
está deprecated ya que QEMU ha incorporado la funcionalidad necesaria
(ver http://wiki.qemu.org/KVM.
¿Qué es libvirt?
KVM
Para poder utilizar KVM se debe contar con un procesador que soporte
virtualización por hardware.
En caso de contar con un procesador AMD o Intel, se puede comprobar si soporta
virtualización por hardware ejecutando cat /proc/cpuinfo | grep svm (si se trata de
un procesador AMD) o cat /proc/cpuinfo | grep vmx (si se trata de un procesador
Intel), y buscando la existencia de los FLAGS "svm" (si es AMD) o "vmx" (si es
Intel):
bridge
cómo crear un bridge (puente por software, con el objetivo principal de usarlo para
una máquina virtual (emulador) en vez del uso clásico de un bridge. En la práctica
la idea es crear un interfaz de red virtual y/o poder conectar a nuestro ordenador
con más de una dirección IP y una única tarjeta de red.
La función tradicional de un bridge es unir dos redes (la diferencia con un router es
que éste interconecta dos redes y regula el paso de información entre ellas,
un bridge, por contra, simplemente une las dos redes como si fueran una sola).
Para conseguir esta función lo único que se necesita es copiar los datos que
pasen por cada tarjeta de red que forme parte del bridge al resto de tarjetas.
Escuela de la Gestión Pública Plurinacional
Diplomado en Software Libre GNU/Linux
Instalación:
2) Habilitamos el net.ipv4.ip_forwarding=1
sysctl.conf
Este archivo de configuración se utiliza para pasarle al kernel parámetros
de configuración en tiempo de ejecución. En terminos mas simples sirve
para configurar el kernel que se esta ejecutando o cambiar su
comportamiento. Es equivalente a cambiar valores en los archivos del
directorio virtual /proc/sys.
net.ipv4.ip_forward=1
fs.file-max = 16384
kernel.threads-max = 2048
net.ipv4.conf.eth0.arp_ignore = 1
net.ipv4.conf.eth0.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
Desactiva las respuesta del kernel a las peticiones ARP. Esta técnica es útil
a la hora de configurar dos maquinas con la misma dirección IP.
Verificación de la configuración
Desde consola podemos verificar el proceso de habilitación de forward=1
auto eth0
iface eth0 inet manual
auto br0
iface br0 inet static
address 192.168.55.19
network 192.168.55.0
netmask 255.255.255.0sudo
gateway 192.168.55.1
bridge_ports eth0
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp off
Ejemplo:
$ sudo adduser freddy libvirt
virt-manager
Su instalación:
Primera parte:
ISO_PATH=/home/freddy/INSTALL/debian-9.4.0-amd64-xfce-CD-1.iso
KVM_HOSTNAME=demo
KVM_RAM=512
KVM_CPU=1
KVM_DISCO=5
KVM_PATH=/home/freddy/mq_virtuales/cli-01.img
Segunda Parte:
Bibliografía
https://wiki.debian.org/es/KVM
https://wiki.debian.org/es/KVM
http://www.linux-kvm.org/page/Main_Page