PDF de programación - KVM: The Kernel Virtual Machine

Imágen de pdf KVM: The Kernel Virtual Machine

KVM: The Kernel Virtual Machinegráfica de visualizaciones

Publicado el 2 de Junio del 2018
376 visualizaciones desde el 2 de Junio del 2018
703,6 KB
17 paginas
Creado hace 15a (28/08/2008)
KVM: The Kernel Virtual Machine

Virtualizando con GNU/Linux

Versión 1.0

Juan Matias Granda – [email protected]
Algunos derechos reservados: Licencia GFDL ­ 2008

http://gugs.sindominio.net/licencias/gfdl­1.2­es.html

http://www.gnu.org/copyleft/fdl.html

traducción NO oficial al español: 

Introducción:

KVM es una solución para implementar virtualización completa con Linux
sobre hardware x86. Está formada por un módulo del núcleo (con el nombre
kvm.ko) y herramientas en el espacio de usuario, siendo en su totalidad
software libre. El componente KVM para el núcleo está incluido en Linux desde
la versión 2.6.20.

KVM permite ejecutar máquinas virtuales utilizando imágenes de disco
que contienen sistemas operativos sin modificar. Cada máquina virtual tiene su
propio hardware virtualizado: una tarjeta de red, discos duros, tarjetas gráfica,
etc.

Lo que se verá en este documento son todos los pasos necesarios para
montar un Servidor de maquinas virtuales por medio de KVM y las
herramientas necesarias para poder administrar tanto al servidor como así
también a sus respectivas maquinas virtuales.

Reuniendo lo necesario

Hardware a utilizar

El hardware a utilizar es muy importante ya que no todos los equipos
permiten realizar este tipo de virtualización, para ello el procesador del equipo
deberá tener una de las siguientes micro instrucciones:

Procesadores Intel: INTEL-VT
Procesadores AMD: AMD-V





Para comprobar si nuestro equipo posee alguna de estas micro

instrucciones deberemos ejecutar en consola:

$ egrep '(vmx|svm)' /proc/cpuinfo

Lo que nos devolverá algo como:

flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm
constant_tsc arch_perfmon pebs bts rep_good pni monitor ds_cpl vmx est tm2 ssse3
cx16 xtpr lahf_lm ida

Esto es así ya que grep encontró la micro instrucción “vmx” en el
microprocesador del equipo, si hubiera sido un equipo AMD, la micro
instrucción a encontrar sería “svm”.

Si bash no nos devolvió nada quiere decir que el equipo no podrá correr

KVM.

Software a utilizar

Si todo ha ido bien en el punto anterior, el Software a usar sera el

siguiente:

• Ubuntu Linux 8.04.1 Server Edition, arquitectura 64bits.
• Kernel Linux 2.6.24 (versión del manual: 2.6.24-21-generic).



libvirt0 0.4.0 (versión del manual: 0.4.0-2ubuntu8 ).
virt-manager 0.5.3 (versión del manual: 0.5.3-0ubuntu9).

todo el software a utilizar se encuentra en los repositorios de Ubuntu, ya
que Ubuntu eligió a KVM como sistema de virtualización, lo que nos asegura un
buen rendimiento.

Instalando y Configurando

Instalando KVM y herramientas necesarias

La instalación de KVM y sus herramientas es prácticamente sencillo, solo

deberemos ejecutar:

$ sudo apt-get install kvm libvirt-bin virt-manager

libvirt-bin: trae el demonio libvirtd el cual se usara para administrar KVM.


• Kvm: el emulador x86.
• Virt-manager: Interfaz gráfica que nos permitirá crear y administrar las

maquinas virtuales.

Con esto ya tendremos corriendo nuestro KVM, pero antes de utilizarlo

deberemos hacer un par de configuraciones previas.

Incorporando usuarios al grupo libvirtd

Para poder administrar KVM debemos ingresar el/los usuario(s)

administrador al grupo libvird, para ello:

$ sudo adduser `id -un` libvirtd

El comando `id -un` nos devolverá el usuario que estamos utilizando en
estos momentos, cabe aclarar que para poder agregarlo el mismo debe poder
hacer uso del comando sudo.

Si deseamos agregar mas usuario, debemos cambiar el comando `id -un`

por el nombre del usuario, por ejemplo:

$ sudo adduser admin2 libvirtd

Recuerde que para que los nuevos grupos sean agregados a su usuario
deberá loguearse nuevamente, NO en el entorno gráfico, sino en las consolas
que este usando en ese momento.

NOTA: Este punto no es del todo necesario si es que vamos a utilizar virt-
manager (ya que lo correremos con permiso de root), pero se pretende
enseñar en una nueva versión del manual herramientas como virsh, las cuales
nos permitiran administrar KVM usando nuestro usuario y no root.

Creando bridged network (red virtuales usando puente )

Para que las máquinas virtuales puedan tener conexión a redes físicas
reales, debemos crear puentes o bridges entre las placas reales (eth0, eth1,
etc) y placas virtuales que crearemos (br0, br1, etc).

Como vamos a modificar la configuración de la red, seria conveniente

parar el sistema de red un momento:

invoke-rc.d networking stop

Luego editamos el archivo “ /etc/network/interfaces “ y agregamos las

siguientes lineas al final del mismo:

auto br0
iface br0 inet static
address 192.168.1.200
network 192.168.0.0
netmask 255.255.0.0
broadcast 192.168.255.255
gateway 192.168.2.1
bridge_ports eth0
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp off
bridge_maxwait 5

Suponemos que el lector comprende las lineas agregadas, la única que

vale la pena explicar es:

bridge_ports eth0

La cual nos esta diciendo que la placa asociada a la placa bridge virtual

es la placa “real” eth0.

Una vez creadas todas las placas bridge que necesitamos, reiniciamos el

sistema de red:

$ sudo /etc/init.d/networking restart

virt-manager: Creando VMs

virt-manager (Virtual Machine Manager) es una aplicación de escritorio
para administrar maquinas virtuales. La misma presenta un sumario de los
“dominios” o maquinas virtuales que están corriendo, mostrando la
performance y sus estadísticas. virt-manager posee un Wizard para la creación
de nuevas VM, permitiendo configurar y ajustar los recursos y hardware virtual
de las mismas. Este programa también posee embebido un cliente VNC para
ver gráficamente los dominios que se estén corriendo.

virt-manager aún se encuentra en desarrollo (y que software no?) por eso
encontraremos ciertas fallas en el, como así también la falta de traducción a
nuestro idioma nativo, el español.

Corriendo el virt-manager

Al programa lo ejecutaremos con sudo ya que sino habrá ciertas

características inhabilitadas:

$ sudo virt-manager

imagen 1

En la imagen 1 podemos observar que tenemos un host cargado de
forma predeterminada, el localhost, al cual virt-manager no se encuentra
conectado (ver estatus “disconnected”), para conectarnos y poder trabajar
sobre nuestro KVM del localhost, haremos click derecho sobre el host y
seleccionaremos “conectar”. Ahora el estado ha cambiado a “active” y ya nos
muestra la cantidad de CPUs que posee el equipo, en este caso 2 (imagen 2).

imagen 2

Creando una Maquina Virtual

Una vez conectados al host, se nos habilitará el botón “nuevo”, el cual al

hacer click nos permitirá crear una máquina virtual (desde ahora VM).

imagen 3

Eligiendo un nombre

Lo primero que se nos preguntará sera el nombre de la nueva VM

(imagen 4).

imagen 4

Método de virtualización

Se nos preguntará el método de virtualización (ya que virt-manager
puede ser utilizado con Xen veremos que se encuentra una opción
“Paravirtualized”, la cual no esta habilitada para KVM) aquí dejaremos todo
como esta, manteniendo la arquitectura del CPU en x86_64 y habilitada la
aceleración por hardware (imagen 5).

imagen 5

Medio de instalación y tipo de host

Podremos elegir entre 3 métodos para instalar el nuevo sistema

Imagen ISO.

operativo de nuestra VM:

• CD-ROM o DVD.
• Booteo por red.

El tipo de Host a elegir dependerá del sistema operativo que querramos
instalar, en este ejemplo seleccionaremos como “OS Type” a Linux y como “OS
Variant” a Ubuntu Hardy (imagen 6).

imagen 6

Seleccionando el medio de almacenamiento

Para almacenar los datos de nuestra VM, podremos elegir entre una

partición real o un simple archivo o “disco virtual”.

Cuando elegimos un disco virtual deberemos especificar el tamaño
máximo que tendrá y si se debe reservar todo el espacio asignado al crearlo o
que vaya creciendo incrementalmente a medida que se use (imagen 7).

imagen 7

Eligiendo la conexión de red

Tendremos dos métodos de red para nuestra VM, una red virtual, entre el
host y la VM (“Virtual Network”) y la otra que nos permite conectar la VM a un
dispositivo físico del host, permitiendo conectar la VM a redes fisicas reales
usando de puente el host donde esta alojada esta(“Shared physical device”).

En este punto seleccionaremos en “Shared physical device” la placa de

red virtual “br0” creada previamente (imagen 8).

Veremos un punto también llamado “set fixed MAC...” esto nos permitirá

modificar la MAC address de la placa de red a utilizar.

imagen 8

Cantidad de memoria y CPU

En este punto deberemos seleccionar la cantidad de memoria ram que

será asignada a nuestra VM.

Aquí veremos que podemos elegir la cantidad máxima de memoria y la
cantidad de memoria reservada al inicio, esto es así por Xen (recuerden que la
aplicación sirve para administrar host con Xen o KVM), KVM no permite aún
manejar memoria incremental, así que en este punto se asignara en los 2
campos la misma cantidad de memoria.

Con respecto a los Virtual CPUs que utilizaremos queda a criterio de cada

uno (imagen 9).

imagen 9

Finalizando

Lo ultimo que resta es ver si todos los datos ingresados son los correctos,

al dar click en “Finish” se creara la VM (imagen 10).

imagen 10

imagen 11

virt-manager: Administrando Vms

Ya tenemos nues
  • Links de descarga
http://lwp-l.com/pdf11546

Comentarios de: KVM: The Kernel Virtual Machine (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad