Está en la página 1de 34

Gua Instalacin de KVM en opensuse 13.

X
Contenido de la gua
GUA INSTALACIN DE KVM EN OPENSUSE 13.X ................................................................................................................. 1
CONTENIDO DE LA GUA .................................................................................................................................................................... 1
Objetivos: ............................................................................................................................................................................... 1
Indicaciones............................................................................................................................................................................ 1
I. INSTALACIN DEL HIPERVISOR KVM .................................................................................................................................... 2
1 INFORMACIN DE KVM ................................................................................................................................................................. 2
1.1. Conceptos de virtualizacin ............................................................................................................................................ 2
1.2 Qu es KVM? .................................................................................................................................................................. 2
1.3 Ventajas de KVM: ............................................................................................................................................................. 3
1.4 Componentes de KVM: ..................................................................................................................................................... 4
2 INSTALACIN DE KVM EN OPENSUSE 13.X ....................................................................................................................................... 6
II. MODIFICACIN DEL TIPO DE ARRANQUE (RUNLEVEL) ...................................................................................................... 10
2.1 CONSIDERACIONES PARA OPENSUSE 13.X .................................................................................................................................... 10
2.2 PASOS PARA CONFIGURAR EL ARRANQUE EN MODO TEXTO. .............................................................................................................. 11
III. CREACIN DE MV EN KVM ............................................................................................................................................... 14
3.1 MTODO GRAFICO UTILIZANDO EL ASISTENTE VIRT-MANAGER........................................................................................................... 14
3.2 INSTALACIN Y CONFIGURACIN DE TINYCORE .............................................................................................................................. 24
TAREAS. ................................................................................................................................................................................ 28
Paso 7 Crear las particiones en el disco duro .................................................................................................................... 29

Objetivos:

Instalar el hipervidor KVM en opensuse 13.X


Exponer brevemente qu es KVM.

Indicaciones

Se escogi opensuse porque presenta mayor facilidad de uso cuando no se tiene mucha experiencia en
Linux, inicialmente para este mdulo se haba considerado Centos 6.4 u Ubuntu Server 12.04, debido a que
Opensuse consume ms recursos de RAM cuando se ejecuta con el escritorio.
Si se instala Opensuse como una mquina virtual como VirtualBox o VM Workstation, no se tendr
la opcin de virtualizacin completa, la cual es necesaria para ejecutar sistemas operativos como
Windows (todas las versiones) y los Linux cuyo kernel no sea similar al del sistema operativo instalado (en
este caso opensuse). Slo se podr realizar paravirtualizacin, aunque esto es una ventaja en el rendimiento
la desventaja es que los recursos disponibles de la MV con opensuse sern menores que si estuviera
instalada y los Linux que podrn ejecutarse virtualizados dentro de XEN debern ser similares a opensuse y
como lo he expresado con anterioridad opensuse consume muchos recursos con el escritorio)

Pgina 1 de 34

I. Instalacin del hipervisor KVM


1 Informacin de KVM

1.1. Conceptos de virtualizacin


Informacin tomada de: http://docs.fedoraproject.org/esES/Fedora/18/html/Virtualization_Getting_Started_Guide/index.html
Virtualizacin es un trmino amplio en computacin usado para usado para la ejecucin de software, normalmente
mltiples sistemas operativos, concurrente y en aislamiento de otros programas sobre un nico sistema. La mayora
de las implementaciones existentes de virtualizacin utilizan un hypervisor, una capa de software o subsistema que
controla el hardware y provee a los sistemas operativos invitados de acceso al hardware subyacente. El hypervisor
permite que mltiples sistemas operativos, llamados invitados, correr sobre el mismo sistema fsico ofreciendo
hardware virtualizados a los sistemas operativos invitados. Hay varios mtodos para la virtualizacin de sistemas
operativos.

Virtualizacin completa
La virtualizacin completa usa las caractersticas hardware del procesador para suministrar al invitado con
una abstraccin total del sistema fsico subyacente. Esto crea un nuevo sistema virtual, llamado mquina
virtual, que permite que los sistemas operativos invitados corran sin modificaciones. El sistema operativo
invitado y cualquier aplicacin sobre el invitados se desentienden de su entorno virtualizado y corren
normalmente. La virtualizacin asistida por el hardware es la tcnica usada para la virtualizacin con KVM
(Mquina Virtual Basada en el Kernel) en Fedora.
Paravirtualizacin
La paravirtualizacin emplea una coleccin de software y estructuras de datos que son presentadas al
invitado virtualizado, requiriendo modificaciones del software en el invitado para utilizar el entorno
paravirtualizado. La paravirtualizacin puede comprender a todo el kernel, como en el caso de los invitados
paravirtualizados Xen, o drivers que virtualizan dispositivos I/O.
Virtualizacin software (o emulacin)
La virtualizacin software utiliza traducciones binarias ms lentas y otras tcnicas de emulacin para correr
sistemas operativos no modificados.

Informacin tomada del sitio web:


http://wiki.xenproject.org/wiki/Xen_Overview#What_is_Xen.3F

1.2 Qu es KVM?
Tomado de http://www.linuxparatodos.net/web/comunidad/base-de-conocimiento//wiki/Base+de+Conocimiento/Kernel+Based+Virtual+Machine+(KVM)#sectionKernel+Based+Virtual+Machine+(KVM)-Caractersticas+KVM
KVM (Kernel-Based Virtual Machines), es una solucin de virtualizacin completa sobre GNU/Linux que depende
de la extensin de espiritualizaron de los procesador como INTEL VT o AMD-V. KVM se incluy oficialmente en
el kernel 2.6.20 y consiste en un mdulo para el kernel "kvm.ko" que proporciona al ncleo la infraestructura de
virtualizacin y tiene un mdulo por cada tipo de procesador.
INTEL "kvm-intel.ko"
AMD "kvm-amd.ko"

Pgina 2 de 34

Se completa con la versin de QEMU que proporciona toda funcionalidad de Hardware Virtual para los sistemas
virtualizados. Todas las nuevas tecnolgicas de desarrollo se estn llevando a cabo en KVM, ya que va hacer la
solucin ms recomendada, soportada por varios sistemas operativos como GNU/Linux, BDS, Solaris, MAC y
Windows. Tambin te mayor seguridad entre las mquinas virtuales y una configuracin ms amigable para los
administradores, en varias distribuciones que van a cambiar a KVM por Xen entre estas ya estn deban, Ubuntu,
RHEL, Centos, Fedora, opensuse, mandriva y entre otras ms.

1.3 Ventajas de KVM:

Est diseado para procesadores x86, centrando en un virtualizacin total.


No se modifica el kernel de GNU/Linux.
Solamente es un mdulo que no necesita parches.
Contiene soporte de paravirtualizacin.
KVM funciona en todo tipo de mquinas, servidores, escritorio o laptop.
Migracin en caliente de mquinas virtuales.
Tiene administracin va web, grfica y consola.
La administracin de las mquinas virtuales de hacen por medio de un usuario comn.
Podemos utilizar el comando kill para matar maquina virtuales ya con KVM son reconocidos como
procesos.
Maneja 3 tipos de configuracin de red:
o Bridge,
o Route,
o NAT.
Permite ejecutar mltiples mquinas virtuales cada una con su propia instancia.

Informacin tomada de: http://docs.fedoraproject.org/esES/Fedora/18/html/Virtualization_Getting_Started_Guide/chap-Virtualization_Getting_Started-Products.html#seckvm_and_virt


KVM (Mquina Virtual basada en Kernel) es una completa solucin de virtualizacin para Linux sobre hardware
AMD64 e Intel 64 que est construido dentro del kernel estndar de Linux. Puede ejecutar diversos sistemas
operativos invitados Windows no modificados y Linux. El hypervisor KVM en Linux es gestionado por la API
libvirt y herramientas construidas para libvirt (como virt-manager y virsh). Las mquinas virtuales se ejecutan y
corren sobre procesos Linux multi-hilo controlados por estas herramientas.
Caractersticas de KVM
Sobrealojamiento
El hypervisor KVM soporta sobrealojamiento de los recursos del sistema. Sobrealojamiento significa asignar
ms CPUs o memoria virtualizadas que los recursos disponibles en el sistema. El sobrealojamiento de memoria
permite a los hosts utilizar la memoria y la memoria virtual para incrementar las densidades de los invitados.
Aprovisionamiento delgado
El aprovisionamiento delgado permite la localizacin de almacenamiento flexible y optimiza el espacio
disponible para cada invitado. Da la apariencia de que hay ms almacenamiento fsico para el invitado del que
est disponible actualmente. Esto no es lo mismo que el sobrealojamiento porque esto slo pertenece al
almacenamiento y no a las localizaciones de CPUs o memoria. Sin embargo, como en el sobrealojamiento, se
aplica la misma advertencia, Puede generar inestabilidad si no se configura adecuadamente
KSM
Kernel SamePage Merging (KSM), usado por el hypervisor KVM, permite a los invitados KVM compartir
pginas de memoria idnticas. Estas pginas compartidas son usualmente libreras comunes u otros datos
idnticos de alta utilizacin. KSM permite una mayor densidad de invitados de sistemas operativos invitados
idnticos o similares porque evita la duplicacin de memoria.
Pgina 3 de 34

1.4 Componentes de KVM:


En la siguiente figura se muestran los componentes de KVM

El paquete libvirt es una API hypervisor independiente de la virtualizacin que es capaz de interactuar con las
capacidades de virtualizacin de una variedad de sistemas operativos.
El paquete libvirt suministra:
Una capa comn, genrica, y estable para gestionar con seguridad mquinas virtuales en un host.
Una interfaz comn para gestionar los sistemas locales y los hosts en red.
Todas las APIs requeridas para provisionar, crear modificar, monitorizar, controlar, migrar y parar
mquinas virtuales, pero slo si el hypervisor soporta estas operaciones. Aunque se puede acceder a
mltiples hosts con libvirt, las APIs estn limitadas a operaciones de nico nodo.
El paquete libvirt est diseado como un bloque de construccin para el nivel ms alto de herramientas de gestin y
aplicaciones, por ejemplo, las herramientas de gestin desde lnea de comandos virt-manager y virsh. Con la
excepcin de las capacidades de migracin, libvirt se enfoca en la gestin de hosts nicos y suministra APIs para
enumerar, monitorizar y utilizar los recursos del nodo gestionado, incluyendo CPUs, memoria, almacenamiento, red
y particiones de Acceso a Memoria No Uniforme (NUMA). Las herramientas de gestin pueden ser colocadas sobre
mquinas fsicas separadas del host utilizando protocolos seguros.
Pgina 4 de 34

El paquete libvirt est disponible como software libre bajo la Licencia GNU Lesser General Public. El proyecto
libvirt tiene como objetivo suministras un C API estable a largo plazo para las herramientas de gestin de
virtualizacin, corriendo en lo ms alto de las variadas tecnologa de hypervisor.
virsh
La herramienta de lnea de comando virsh est construida sobre el API de gestin libvirt y trabaja como una
alternativa a la aplicacin grfica virt-manager. El comando virsh puede ser utilizado en modo slo lectura por
usuarios sin privilegios, o, con acceso de root, con funcionalidad de administracin completa. El comando virsh
es ideal para escribir guiones de administracin de virtualizacin.

virt-manager
virt-manager es una herramienta grfica de ordenador para la gestin de mquinas virtuales. Permite el
acceso a consolas grficas de invitado y puede ser usado para llevar a cabo administracin de virtualizacin,
creacin de mquinas virtuales, migracin y tareas de configuracin. Tambin dispone de la capacidad de
visualizar mquinas virtuales, estadsticas de host, informacin del dispositivo y grficos de rendimiento. El
hypervisor local y los hypervisores remotos pueden ser gestionados a travs de una nica interfaz.

La virtualizacin en Linux presenta tres tipos distintos de dispositivos del sistema para mquinas virtuales. Los tres
tipos son:
Dispositivos virtualizados y emulados
Dispositivos para-virtualizados
Dispositivos fsicos compartidos
Todos estos dispositivos hardware aparecen como si estuvieran conectados fsicamente a la mquina virtual pero los
drivers de dispositivo trabajan de maneras diferentes.
CPUs virtuales (vCPUs)
Un host del sistema puede tener un mximo de 160 CPUs virtuales (vCPUs) que pueden ser presentadas los
invitados para su uso, sea cual sea el nmero de CPUs del host.
Dispositivos grficos emulados
Se suministran dos dispositivos grficos emulador. Estos dispositivos pueden ser conectados con el protocolo
SPICE (Protocolo Sencillo para Entornos de Computacin Independientes) o con VNC:
o Tarjeta Cirrus CLGD 5446 PCI VGA (usando el dispositivo cirrus).
o Tarjeta grfica estndar VGA con extensiones Bochs VESA (nivel hardware, incluyendo todos los
modos no estndar)
Dispositivos emulados de red
Hay dos dispositivos de red emulados disponibles:
o El dispositivo e1000 emula un adaptador de red Intel E1000 (Intel 82540EM, 82573L, 82544GCC).
o El dispositivo rtl8139 emula un adaptador de red Realtek 8139.
Herramientas para virtualizacin
virsh = herramienta de consola para administrar el hipervisor y MV
virt-manager = herramienta grfica para gestionar el hipervisor y MV
virt-install = herramienta de consola para instalar clientes.
Guestfish = herramienta de lnea de comando para examinar y modificar los sistemas de archivos en el host.

Pgina 5 de 34

2 Instalacin de KVM en Opensuse 13.X


Paso 0 Pasos Previos

0.1 Configurar la conexin de red con salida a Internet


0.2 Actualizar Opensuse (YaST / Software / Actualizacin en Lnea)
0.3 Es recomendable que el nombre de la Interfaz principal sea eth0, sin embargo puede utilizar enp0s3
0.4 Desinstalar las herramientas de virtualbox o Workstation si estuvieran instaladas
0.5 Muy recomendable utilizar Opensuse en runlevel3 y con el cliente ssh y servidor X, ejecutar las aplicaciones
grficas. (si no lo ha realizado seccin 2 de esta gua)
Paso 1 Abrir el YaST

1.1 Presione las teclas Alt + F2


1.2 Digite yast (en minsculas)

Paso 2 Abrir asistente de configuracin de red

2.1 Seleccione en el panel de la izquierda Virtualizacin


2.2 Seleccione o (d doble clic) en el panel de la derecha Install Hypervisor and Tools

Pgina 6 de 34

Paso 3 Definir el hipervisor a instalar

Seleccione KVM, (y no marque XEN)

Paso 4 Instale los archivos necesarios

kvm =
libvirt = libreras para la virtualizacin en sistemas Linux
libvirt-python = libreras de python para libvirt que permiten crear todos los scripts de manera que se
extremadamente fcil la configuracin de las MV (opciones de RAM, red, CPU, respaldos, etc.)
libvirt-daemon-qemu =
vm-install = asistente grfico de opensuse para crear mquinas virtuales (virtualizacin completa y
paravirtualizacin)
virt-manager = herramienta grfica para administrar las mquinas virtuales (start, pause, shutdown, etc.)
virt-viewer = herramienta grfica para visualizar la consola del sistema operativo guest

D un clic en el botn Instalar

Pgina 7 de 34

Paso 5 Copia de los archivos

El asistente descargar e instalar los archivos (Opensuse 13.X), aparece una pantalla indicando dominio0 ya que el
asistente puede configurar el hipervisor KVM y Xen

Paso 6 - Configuracin del Bridge

De forma predeterminada el asistente crear el primer puente del sistema br0, el br0 ser la interfaz de red que se
utilizar para las comunicaciones del husped (opensuse), la interfaz eth0 no se utilizar y deber tener la direccin
0.0.0.0 mscara 32 (255.255.255.255)

El asistente detectar las interfaces de red y crear el primer bridge br0. Para mayor informacin sobre los bridge
consulte los siguientes sitios:
http://www.microhowto.info/howto/persistently_bridge_traffic_between_two_or_more_ethernet_interfaces
_on_suse.html
http://www.tldp.org/HOWTO/BRIDGE-STP-HOWTO/set-up-the-bridge.html
Paso 7 Reiniciar el sistema operativo husped

Pgina 8 de 34

Paso 8 Escoja el kernel con KVM

Importante de manera predeterminada el gestor de arranque grub2 inicia el kernel por default, en los sistemas Linux
es comn poder escoger entre ms de un kernel (cuando hay ms de uno instalado)

Paso 9 Verifique que ha iniciado con KVM.

Es recomendable saber cul es el kernel utilizado Cuando no se ha instalado opensuse al ejecutar el comando uname
a se obtiene la siguiente salida:
hipervisor1:/home/localadmin # uname a
Linux hipervisor1 3.11.6-4-desktop #1 SMP PREEMPT Wed Oct 30 18:04:56 UTC
2013 (e6d4a27) x86_64 x86_64 x86_64 GNU/Linux
Digite el siguiente comando para ver las estadsticas (no hay, pero verificamos si se ha instalado KVM)
hipervisor1:/home/localadmin # /usr/bin/kvm_stat
Traceback (most recent call last):
File "/usr/bin/kvm_stat", line 196, in <module>
filters[f] = (filters[f][0], invert(filters[f][1]))
File "/usr/bin/kvm_stat", line 193, in invert
return dict((x[1], x[0]) for x in d.iteritems())
AttributeError: 'NoneType' object has no attribute 'iteritems'

Pgina 9 de 34

II. Modificacin del tipo de arranque (runlevel)


2.1 Consideraciones para Opensuse 13.X
Despus de pasar un par de horas probando las configuraciones con diferentes variables para el arranque, los
resultados del consumo de memoria RAM para la mquina virtual de opensuse 12.3 son los siguientes:
Nota: El nico servicio activado fue el openssh-server
Comandos para ver la memoria utilizada: free m, cat /proc/meminfo
Cantidad de memoria iniciando con Escritorio: 12.3 (652 660 MB), 13.1 (720 760 MB)
Cantidad de memoria iniciando con Escritorio, cambiando a modo texto: 356 MB

Cantidad de memoria iniciando sin Escritorio, 132 150 MB


Cantidad de memoria iniciando sin Escritorio, cambiando a modo grfico 796 MB

As que de lo anterior concluimos que:


Debemos arrancar el servidor sin Escritorio con KVM
No tiene sentido iniciar el escritorio grfico para realizar alguna configuracin o tarea (por ejemplo Yast,
Firefox, etc.) y luego regresar al modo texto.
Si se desea realizar alguna configuracin o tarea grfica se deber utilizar Xming + Putty en Equipos
Windows o ssh X en equipos Linux.
Uno de los cambios significativos que ha tenido Opensuse es ya no utilizar el archivo /etc/inittab para definir el
arranque, anteriormente con definir el valor 3 el sistema operativo iniciaba en texto y con definir 5 arrancaba con el
escritorio grfico. En el siguiente cuadro se puede observar lo ms relevante de los runlevel
Nivel de
ejecucin

Nombre o
denominacin

Alto

Modo de usuario
nico
(Monousuario)

Multiusuario

Multiusuario
con soporte de
red.
Multiusuario
con soporte de
red.

Multiusuario
grfico (X11)

Reinicio

Archivo utilizado
en Opensuse 13.X

Comando

poweroff.target

init 0,
poweroff

rescue.target

init 2

Multiusuario sin soporte de red.

multi-user.target

init 2

Inicia el sistema normalmente.

multi-user.target

init 3

Igual que el 3. Pero casi no se utiliza. En


algunos Linux no tiene accin asociada

multi-user.target

El runlevel predefinido en las distribuciones


orientadas a Escritorio,
Es similar al nivel de ejecucin 3 ms el
entorno grfico Display manager,
Escrotorio.

graphical.target

init 5,
startx

reboot.target

init 6,
reboot

Descripcin
Cierre del sistema (Apagado).
No se configura la interfaz de red o los
servicios de inicio, ni permite que ingresen
otros usuarios que no sean el usuario root,
sin contrasea.
Este nivel de ejecucin permite reparar
problemas, o hacer pruebas en el sistema.

Se reinicia el sistema.

Pgina 10 de 34

2.2 Pasos para configurar el arranque en modo texto.


En Linux podemos cambiar de runlvel con digitar con permisos de root el comando:
runlevel Nmero
Nos interesa el runlevel 3, ya que con ello utilizaremos menos RAM. Para cambiar el runlevel predeterminado antes
se editaba el archivo inittab, mientras que ahora en opensuse 13.X se crea un enlace al archivo que tiene las
instrucciones para el arranque.

Paso 1. Visualice el archivo de arranque


hipervisor1:/home/localadmin # ls -l /etc/systemd/system/
total 24
lrwxrwxrwx 1 root root
44 nov 25 16:58 dbus-org.freedesktop.Avahi.service ->
/usr/lib/systemd/system/avahi-daemon.service
lrwxrwxrwx 1 root root
44 nov 25 16:59 dbus-org.freedesktop.ModemManager1.service > /usr/lib/systemd/system/ModemManager.service
lrwxrwxrwx 1 root root
40 nov 25 17:03 default.target ->
/usr/lib/systemd/system/runlevel5.target
drwxr-xr-x 2 root root 4096 nov 25 17:02 default.target.wants
drwxr-xr-x 2 root root 4096 nov 6 13:52 getty.target.wants
drwxr-xr-x 2 root root 4096 nov 6 13:52 graphical.target.wants
drwxr-xr-x 2 root root 4096 nov 29 20:27 multi-user.target.wants
drwxr-xr-x 2 root root 4096 nov 25 16:58 sockets.target.wants
lrwxrwxrwx 1 root root
45 nov 26 08:04 SuSEfirewall2_setup.service ->
/usr/lib/systemd/system/SuSEfirewall2.service
lrwxrwxrwx 1 root root
39 nov 6 13:52 syslog.service ->
/usr/lib/systemd/system/rsyslog.service
drwxr-xr-x 2 root root 4096 nov 6 13:52 system-update.target.wants

Nota: el indicador l se utiliza para links (shortcuts) enlace suave


Visualice los archivos con las instrucciones del runlevel (esto es nuevo en la versin 13.1 de opensuse)
hipervisor1:/home/localadmin #
lrwxrwxrwx 1 root root 15 nov
poweroff.target
lrwxrwxrwx 1 root root 13 nov
rescue.target
lrwxrwxrwx 1 root root 17 nov
multi-user.target
lrwxrwxrwx 1 root root 17 nov
multi-user.target
lrwxrwxrwx 1 root root 17 nov
multi-user.target
lrwxrwxrwx 1 root root 16 nov
graphical.target
lrwxrwxrwx 1 root root 13 nov
reboot.target

ls -l /usr/lib/systemd/system/runlevel*.target
6 13:52 /usr/lib/systemd/system/runlevel0.target ->
6 13:52 /usr/lib/systemd/system/runlevel1.target ->
6 13:52 /usr/lib/systemd/system/runlevel2.target ->
6 13:52 /usr/lib/systemd/system/runlevel3.target ->
6 13:52 /usr/lib/systemd/system/runlevel4.target ->
6 13:52 /usr/lib/systemd/system/runlevel5.target ->
6 13:52 /usr/lib/systemd/system/runlevel6.target ->

Pgina 11 de 34

Paso 2. Saque copia del archivo de configuracin del tipo de arranque


2.1 Haga copia del archivo default.target (comando en una sola lnea)
hipervisor1:/home/localadmin # mv /etc/systemd/system/default.target

/etc/systemd/system/default.target.ori
2.2 Verifique que haya creado el archivo de respaldo
hipervisor1:/home/localadmin # ls -l /etc/systemd/system/default.target.ori
lrwxrwxrwx 1 root root 40 nov 25 17:03 /etc/systemd/system/default.target.ori ->
/usr/lib/systemd/system/runlevel5.target

Paso 3. Cree el nuevo acceso (enlace suave)


3.1 Cree el enlace suave (comando en una sola lnea)
hipervisor1:/home/localadmin # ln -s /usr/lib/systemd/system/runlevel3.target

/etc/systemd/system/default.target
3.2 Verifique que haya creado correctamente el enlace.

Nota: Si no crea correctamente este enlace, tendr problemas para iniciar el sistema operativo.
hipervisor1:/home/localadmin # ls -l /etc/systemd/system/default.target
lrwxrwxrwx 1 root root 40 nov 29 21:22 /etc/systemd/system/default.target ->
/usr/lib/systemd/system/runlevel3.target

Paso 4 Reinicie el sistema operativo


Digite:
hipervisor1:/home/localadmin # reboot

Puede digitar el comando init 6, ya que reboot es un enlace suave


hipervisor1:/home/localadmin # init 6

Paso 5. Verifique la cantidad de RAM utilizada


hipervisor1:/home/localadmin # free -m
total
used
free
Mem:
996
266
730
-/+ buffers/cache:
65
930
Swap:
1496
0
1496

shared
0

buffers
15

cached
185

Pgina 12 de 34

Paso A. Comandos recomendados para optimizar RAM


A.1 Limpie la RAM (procesos utilizados en el arranque)
hipervisor1:/home/localadmin # sysctl -w vm.drop_caches=3
vm.drop_caches = 3

A.2 Compruebe la cantidad de memoria


hipervisor1:/home/localadmin # free -m
total
used
free
Mem:
996
93
902
-/+ buffers/cache:
65
931
Swap:
1496
0
1496

shared
0

buffers
1

cached
27

Paso B. Comandos para iniciar entre runlevel 3 y runlevel 5


Nota: Si desea cambiarse de un arranque de texto a un arranque con escritorio o viceversa los comandos a utilizar
son:
Comando para iniciar el escritorio grfico desde el modo texto

init 5

Comando para iniciar el modo texto desde el escritorio grfico


init 3

Utilice un cliente SSH para Windows (PuTTY o KiTTY) y un serviror X para Windows (Xming o VcXsrv)

Pgina 13 de 34

III. Creacin de MV en KVM


El objetivo de esta seccin es verificar que el hipervisor 1 (Opensuse con KVM) est funcionando correctamente.
Posteriormente se crear una nube privada y se utilizar opennebula para la administracin de las MV

3.1 Mtodo grafico utilizando el asistente virt-manager

Paso 0 Pasos previos


0.1 Verifique que el br0 tenga direccin para comunicarse en la red.

En esta prueba puede ser dinmica pero en prximas guas ser direccin IP esttica.
hipervisor1:/ # ifconfig
br0
Link encap:Ethernet HWaddr 08:00:27:22:11:31
inet addr:192.168.2.103 Bcast:192.168.2.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe22:1131/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:235 errors:0 dropped:0 overruns:0 frame:0
TX packets:178 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:18351 (17.9 Kb) TX bytes:27543 (26.8 Kb)
eth0

Link encap:Ethernet HWaddr 08:00:27:22:11:31


inet6 addr: fe80::a00:27ff:fe22:1131/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:324 errors:0 dropped:0 overruns:0 frame:0
TX packets:212 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:37656 (36.7 Kb) TX bytes:36643 (35.7 Kb)

eth0:avah Link encap:Ethernet HWaddr 08:00:27:22:11:31


inet addr:169.254.2.238 Bcast:169.254.255.255 Mask:255.255.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
lo

Link encap:Local Loopback


inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

0.2 Verifique los archivos de configuracin de red

Para la configuracin del br0: /etc/sysconfig/network/ifcfg-br0


Para la configuracin de la eth0: /etc/sysconfig/network/ifcfg-eth0
Para la configuracin de la IP del DNS:
LA tarjeta de red se puede configurar con Yast en entorno grfico (cliente ssh + servidor X) o con la herramienta
yast2 en modo consola

Pgina 14 de 34

Digite los siguientes comandos y cuando tenga un problema para configurar el bridge, puede editarlos con el
programa mcedit o nano
hipervisor1:/ # cat /etc/sysconfig/network/ifcfg-eth0
BOOTPROTO='static'
BROADCAST=''
ETHTOOL_OPTIONS=''
IPADDR='0.0.0.0/32'
MTU=''
NAME='82540EM Gigabit Ethernet Controller'
NETWORK=''
REMOTE_IPADDR=''
STARTMODE='auto'
USERCONTROL='no'
PREFIXLEN=''
hipervisor1:/ # cat /etc/sysconfig/network/ifcfg-br0
BOOTPROTO='dhcp'
BRIDGE='yes'
BRIDGE_FORWARDDELAY='0'
BRIDGE_PORTS='eth0'
BRIDGE_STP='off'
BROADCAST=''
ETHTOOL_OPTIONS=''
IPADDR=''
MTU=''
NETWORK=''
PREFIXLEN='32'
REMOTE_IPADDR=''
STARTMODE='auto'
USERCONTROL='no'
hipervisor1:/ # cat /etc/resolv.conf
. . .
. . .
### Please remove (at least) this line when you modify the file!
nameserver 192.168.2.1

Comando para verificar el Gateway por default


hipervisor1:/ # route -n
Kernel IP routing table
Destination
Gateway
0.0.0.0
192.168.2.1
0.0.0.0
0.0.0.0
127.0.0.0
0.0.0.0
169.254.0.0
0.0.0.0
192.168.2.0
0.0.0.0

Genmask
0.0.0.0
0.0.0.0
255.0.0.0
255.255.0.0
255.255.255.0

Flags
UG
U
U
U
U

Metric
0
1002
0
0
0

Ref
0
0
0
0
0

Use
0
0
0
0
0

Iface
br0
eth0
lo
eth0
br0

Comando para verificar resolucin dns


hipervisor1:/ # nslookup cuchillac.net
Server:
192.168.2.1
Address:
192.168.2.1#53
Non-authoritative answer:
Name:
cuchillac.net
Address: 50.87.152.212

Pgina 15 de 34

Paso 1 Copie la imagen iso de la MV al hipervisor1


1.1 Descargue e instale un cliente scp en Windows

Puede utilizar FileZilla o WinSCP


1.2 Utilice las credenciales del usuario localadmin

Servidor = IP del hipervidor1


Usuario = localadmin
Contrasea = 123456
Puerto = 22

1.3 Copie el archivo iso al directorio /home/localadmin/Descargas

Utilice la iso TinyCore-current_5.1.iso


http://www.tinycorelinux.net/downloads.html )
Arrastre la iso al directorio de destino

(puede

descargar

la

iso

TyniCore

15MB

de

Este procedimiento se ha utilizado para explicar cmo se pueden subir archivos al hipervisor1 utilizando ssh

Pgina 16 de 34

Paso 2 Cre una mquina virtual


La iso del sistema TyniCore es booteable y tiene un escritorio grfico sencillo.
2.1 Ejecute en el cliente Windows el servidor X

Puede utilizar Xming o VcXsrv


2.2 Ejecute desde el cliente ssh la herramienta grfica

hipervisor1:/ # virt-manager &

2.3 Conctese al hipervisor1


D un doble clic en localhost

Si no se lograra la conexin, vaya a Editar / Detalles de la conexin / Redes Virtuales /


Seleccione default y d un clic en el botn play.
Nota: Para facilitar el proceso de instalacin se utilizar la opcin por default = NAT,

Pgina 17 de 34

Paso 3 Complete los pasos del asistente.

3.1 Defina el nombre de la mquina virtual


Escriba mv1_tinycore51
Seleccione: Medio de instalacin ISO o CDROM
D un clic en el botn Adelante

3.2 Defina el tipo de SO


Seleccione la ruta donde est la imagen iso = /home/localadmin/Descargas/TinyCore-current_5.1.iso
Tipo de SO = Linux
Versin = Generic 2.6.25 later kernel with virtio
D un clic en el botn Adelante

Pgina 18 de 34

Paso 3.3 Defina la RAM y los CPU


Asigne 128 MB
Asigne 1 CPU

D un clic en el botn Adelante

3.4 Defina el espacio del disco duro.


Asigne de 1.0 GB a 2.0 GB (la MV ser muy pequea)
No utilice alojar en este momento la totalidad del disco
D un clic en el botn Adelante

Pgina 19 de 34

3.5 Definir opciones avanzadas


Habilite la opcin Personalizar configuracin antes de instalar
Opciones avanzadas
o Seleccione default: NAT (no use Puente br0)
o Definir direccin MAC esttica
o Tipo de virtualizacin = qemu
o Arquitectura = x86_64

D un clic en el botn Finalizar

Paso 4 Opciones avanzadas

Una de las caractersticas de la virtualizacin en equipos Linux es que se pueden realizar ajustes de manera que las
MV corran ms eficientemente.
Ficha: Overview
Nombre MV = mv1_tinycore51

Pgina 20 de 34

Ficha: Processor
Asignacin Actual = 1
Asignacin mxima = 1

Ficha: Memoria
Asignacin Actual = 128 MB
Asignacin mxima = 128 MB

Ficha: Boot Options


Habilite men de arranque
Seleccione CDROM como el primer dispositivo
D un clic en botn Aplicar

Pgina 21 de 34

Ficha: CD-ROM
Asocie la iso del TinyCore con el CDROM de la MV = /home/localadmin/Descargas/TinyCorecurrent_5.1.iso
D un clic en botn Aplicar

Ficha: NIC
Tipo de conexin = Red virtual default : NAT
Modelo de NIC = rtl8139
D un clic en botn Aplicar

Ficha: Vdeo
Modelo = seleccione Cirrus

Si llegara a tener problemas con la sincronizacin del ratn, Agregue como hardware Tablet, Esto es conveniente en
las computadoras porttiles.

Pgina 22 de 34

Paso 5 Ejecutar mquina virtual

5.1 D un clic en el botn Iniciar la instalacin


5.2 Seleccione Boot TinyCore

Al finalizar deber tener una pantalla como la siguiente:

Ambintese con las aplicaciones que trae Tinycore, para mayor informacin vea los enlaces sugeridos al final de la
gua. Cuando haya finalizado apague la mquina (comando # poweroff)

Pgina 23 de 34

3.2 Instalacin y configuracin de TinyCore

Paso 1 Abra la aplicacin de virt-manager

Paso 2 Conctese al hipervisor1


Como estamos trabajando en el hipervidor1 la direccin que aparecer es 127.0.0.1
Al conectarnos aparecern las MV que tenga el hipervisor1

Paso 3 Verifique que est activa la conexin de red


3.1 Digite el siguiente comando
hipervisor1:/home/localadmin # ifconfig
br0
Link encap:Ethernet HWaddr 08:00:27:22:11:31
inet addr:192.168.2.103 Bcast:192.168.2.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe22:1131/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

...
eth0

Link encap:Ethernet HWaddr 08:00:27:22:11:31


inet6 addr: fe80::a00:27ff:fe22:1131/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

...
eth0:avah Link encap:Ethernet HWaddr 08:00:27:22:11:31
inet addr:169.254.2.238 Bcast:169.254.255.255 Mask:255.255.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
lo

Link encap:Local Loopback


inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host

Pgina 24 de 34

Para que funcione la red NAT la interfaz virbr0 deber estar activa, tome en cuenta lo siguiente:
virbr0 es la interfaz que se encarga de la NAT (una especia de sw con redirecionamiento)
La direccin IPv4 para la red 192.168.122.0
La MV recibir una IPv4 dinmicamente por DHCP (dnsmasq)
El hipervisor1 se encargar de la traduccin y los dems equipos en la LAN no podrn ver a la MV.
Las MV podrn conectarse a Internet y conectarse a otros equipos por medio del hipervisor1
3.2 Seleccione Editar
3.3 D un clic en Detalles de la conexin

3.4 Seleccione default (Conexin por NAT)


3.5 D un clic en el botn iniciar
3.6 Verifique que el estado de virbr0 sea activo
3.7 D un clic en el botn Aplicar

3.8 Cierre la ventana hipervisor1 Detalles de conexin

Pgina 25 de 34

3.9 Verifique que se haya activado la interfaz y que tenga una IPv4 del rango 192.168.122.0
hipervisor1:/home/localadmin # ifconfig
br0
Link encap:Ethernet HWaddr 08:00:27:22:11:31
inet addr:192.168.2.103 Bcast:192.168.2.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe22:1131/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:171542 errors:0 dropped:0 overruns:0 frame:0
TX packets:107498 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:11750563 (11.2 Mb) TX bytes:317689025 (302.9 Mb)
eth0

Link encap:Ethernet HWaddr 08:00:27:22:11:31


inet6 addr: fe80::a00:27ff:fe22:1131/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:171615 errors:0 dropped:0 overruns:0 frame:0
TX packets:274760 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:14877699 (14.1 Mb) TX bytes:484306723 (461.8 Mb)

eth0:avah Link encap:Ethernet HWaddr 08:00:27:22:11:31


inet addr:169.254.2.238 Bcast:169.254.255.255 Mask:255.255.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
lo

Link encap:Local Loopback


inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:162482 errors:0 dropped:0 overruns:0 frame:0
TX packets:162482 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:324494143 (309.4 Mb) TX bytes:324494143 (309.4 Mb)

virbr0

Link encap:Ethernet HWaddr 52:09:96:75:64:94


inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

Paso 4 Inicie la MV
D un clic en el botn Ejecutar

Pgina 26 de 34

Paso 5 Active la vista consola


D un doble clic en la MV

Paso 6 Establezca comunicacin desde la MV


Abra una consola de texto y digite los siguientes comandos:
6.1 Verifique la direccin IPv4 de la MV1
tc@box:~# ifconfig
eth0
Link encap:Ethernet HWaddr 52:54:00:8A:92:68
inet addr:192.168.122.100 Bcast:192.168.122.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2484 errors:0 dropped:0 overruns:0 frame:0
TX packets:1891 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3173341 (3.0 MiB) TX bytes:135017 (131.8 KiB)
lo

Link encap:Local Loopback


inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:4 errors:0 dropped:0 overruns:0 frame:0
TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:200 (200.0 B) TX bytes:200 (200.0 B)

6.2 Verifique que el router sea el correcto


tc@box:~# route -n
Kernel IP routing table
Destination
Gateway
0.0.0.0
192.168.122.1
127.0.0.1
0.0.0.0
192.168.122.0
0.0.0.0

Genmask
0.0.0.0
255.255.255.255
255.255.255.0

Flags
UG
UH
U

Metric
0
0
0

Ref
0
0
0

Use
0
0
0

Iface
eth0
lo
eth0

6.3 Verifique la direccin IPv4 del DNS


tc@box:~# cat /etc/resolv.conf
nameserver 192.168.122.1

Paso 7 Instale la herramienta para la instalacin en disco duro.


Utilice el proceso para instalar Tinycore que se encuentra en la siguiente direccin web:
http://distro.ibiblio.org/tinycorelinux/install.html
Tome en cuenta la resolucin de su pantalla y la resolucin de TinyCore
Colores

640480

800600

1024768

12801024

16001200

8 bits

vga=769

vga=771

vga=773

vga=775

vga=796

Preguntar al
inicio
vga=ask

16 bits

vga=785

vga=788

vga=791

vga=794

vga=798

vga=ask

32 bits

vga=786

vga=789

vga=792

vga=795

vga=799

vga=ask

Pgina 27 de 34

Paso 8 Agregue los siguientes paquetes


Enlace para instalar paquetes.
http://www.linuceum.com/Desktop/installingAppsInTinyCore.php
Cuando haya finalizado de instalar tinycore en el disco duro, Instale los siguientes paquetes.

tc-install = aplicacin para instalar tinycore al disco duro


kmaps.tcz = para agregar teclado en espaol
getlocale.tcz = para instalar idioma en espaol
mc = administrador de archivos
openssh = servidor y cliente ssh
apache (apache2-doc, apache2-dev, apache-mod-php5) = servidor web
opera = navegador web

Tareas.

Investigue como se puede instalar TinyCore en KVM


Investigue como instalar opera o Firefox en TinyCore (TC)
Investigue como crear un servidor web sencillo en TinyCore.

Instalacin de Tinycore
Pgina principal: http://wiki.tinycorelinux.net/wiki:start#installing

Instalar aplicaciones
http://www.boche.net/blog/index.php/2011/02/28/tiny-core-linux-and-operational-readiness/
http://www.linuceum.com/Desktop/installingAppsInTinyCore.php
Para crear MV
https://sites.google.com/site/learnembeddedlinuxnow/home/create-domu-in-3-min-onramdisk

Pgina 28 de 34

Paso 7 Crear las particiones en el disco duro


Para todo sistema operativo Linux, Unix y FreeBSD se debe tener al menos dos particiones
Una para la swap -> para este caso 512MB
Una particin para el sistema operativo -> El resto del disco duro. +/-1.5 GB
7.1 Visualice los discos que ha reconocido la MV
tc@box:~# fdisk -l
Disk /dev/sda: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sda doesn't contain a valid partition table

7.2 Ingrese al disco duro /dev/sda (primer disco duro)


tc@box:~$ fdisk /dev/sda
Device contains neither a valid DOS partition table, nor Sun, SGI, OSF or GPT
disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that the previous content
won't be recoverable.

7.3 Cree una particin nueva. Presione la tecla n


Command (m for help): n
Command action
e
extended
p
primary partition (1-4)

7.5 Defina el tipo de particin. Presione la tecla p


p

7.6 Defina la primera particin primaria. Presione 1


Partition number (1-4): 1

7.7 Defina el primer cilindro. Presione 1


First cylinder (1-261, default 1): 1

7.8 Defina el ltimo cilindro o tamao mximo. Digite +512M y enter


Last cylinder or +size or +sizeM or +sizeK (1-261, default 261): +512M

7.9 Cree una particin nueva. Presione la tecla n


Command (m for help): n
Command action
e
extended
p
primary partition (1-4)

Pgina 29 de 34

7.10 Defina el tipo de particin. Presione la tecla p


p

7.11 Defina la segunda particin primaria. Presione 2


Partition number (1-4): 2

7.12 Defina el primer cilindro de la segunda particin. Digite 64 y enter


First cylinder (64-261, default 64): 64

7.13 Defina el ltimo cilindro o tamao mximo. Digite 261 y enter


Last cylinder or +size or +sizeM or +sizeK (64-261, default 261): 261

7.14 Escriba los cambios en el disco duro. Presione w


Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table
fdisk: WARNING: rereading partition table failed, kernel still uses old table:
Permission denied

7.15 Verifique que se hayan creado las dos particiones


tc@box:~# fdisk -l
Disk /dev/sda: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot
/dev/sda1
/dev/sda2

Start
1
64

End
63
261

Blocks
506016
1590435

Id System
83 Linux
83 Linux

Pgina 30 de 34

Pgina 31 de 34

Pgina 32 de 34

Pgina 33 de 34

Para el uso de TC (TinyCore)


En consola puede cambiar la contrasea del root, para ello digite
$sudo passwd root
$ 123456
$ 123456
$ su root
$ 123456
#

Recursos para TinyCore

IV. Configuracin de servicio http en TinyCore


root@box:~# history
cp /usr/local/etc/ssh/sshd_config.example /usr/local/etc/ssh/sshd_config
ls -l /usr/local/etc/ssh/sshd_config*
chmod g+w /usr/local/etc/ssh/sshd_config
ls -l /usr/local/etc/ssh/sshd_config*
/usr/local/etc/init.d/openssh
/usr/local/etc/init.d/openssh start
/usr/local/sbin/sshd status
/usr/local/sbin/sshd start
/usr/local/sbin/sshd
passwd root
history
root@box:~#

qemu-system-x86_64:
-drive
file=/var/lib/libvirt/images/mv1_tinycore51.img,if=none,id=drive-ide0-00,format=qcow2,cache=off: could not open disk image /var/lib/libvirt/images/mv1_tinycore51.img: not in qcow2
format

Pgina 34 de 34

También podría gustarte