Sunteți pe pagina 1din 17

ADMINISTRACIN DE SISTEMAS GNU/LINUX

PEC 1

Por:
EDUARDO ALEJANDRO GALLO

Universidad Autnoma de Bucaramanga


Universitat Oberta de Catalunya

MAESTRA SOFTWARE LIBRE

Armenia Colombia
2015
Contenido
Pregunta 1 El Ncleo ..................................................................................................... 3
Ejercicio a - Actualizacin automtica Kernel ................................................................ 3
Ejercicio b Anlisis mdulos kernel ............................................................................ 3
Anlisis de los mdulos .............................................................................................. 3
Anlisis de los aspectos vinculados a los mdulos ..................................................... 5
Ejercicio c Anlisis - Udev .............................................................................................. 6
Mecanismo de reconocimiento y gestin de dispositivos udev ................................. 6
Creando un nombre predeterminado para un disco USB........................................... 7
Ejercicio d Configuracin personalizada del Kernel. ...................................................... 8
Ejercicio e - Informe configuracin ncleo .................................................................... 9
Ejercicio f comparacin ncleo antiguo y nuevo ......................................................... 10
Pregunta 2 -Virtualizacin .............................................................................................. 11
Ejercicio a- mquina virtual KVM ................................................................................ 11
Ejercicio b - mquina virtual qemu.............................................................................. 13
Ejercicio c - Rendimiento mquinas virtuales .............................................................. 14
Ejercicio d - Benchmark Phoronix ............................................................................... 15
Ejercicio e - Tunning mquinas virtuales ..................................................................... 16
PEC 1 - Administracin Avanzada del S.O. GNU/Linux

Pregunta 1 El Ncleo
En este ejercicio se trabajar con el ncleo de GNU/Linux, haciendo algunas comprobaciones y
compilando/instalando un ncleo nuevo.

Ejercicio a - Actualizacin automtica Kernel

Determinar la versin actual del ncleo instalada en la distribucin de trabajo y obtener informacin sobre si
existe alguna nueva versin del mismo (ltima estable 4.2.1) con las herramientas de gestin de paquetes. En caso
que exista en la distribucin utilizada realizar la actualizacin correspondiente.

Los ejercicios se realizaran en la distribucin deban 8 jessie, instalada como mquina virtual.

Comprobamos la versin actual del kernel instalada, usamos el


comando uname r, en la captura de pantalla observamos que es la
versin 3.16.0
Verificamos si hay versiones actualizadas del kernel
disponibles para esta distribucin usamos el
comando apt-cache search Linux-image o el
comando aptitude search Linux-image.
Se puede observar que la versin instalada es la
ms actualizada que ofrece el sistema operativo
3.16.0

En ese caso de que se encontrara una versin actualizada se podra instalar usando cualquiera de los comandos:
apt-get install nombre-kernel o aptitude install nombre-kernel.

https://www.reddit.com/r/debian/comments/365tha/upgrading_to_kernel316_on_jessie/

Ejercicio b Anlisis mdulos kernel

Analizar todos los mdulos cargados y generar una tabla donde indique el mdulo, que dispositivo controla o qu
servicio presta, exporta cada mdulo (en caso que sean muchos de deber poner un resumen de los ms
importantes explicando la metodologa para obtener esta informacin). Analizar todos los aspectos vinculados a
los mdulos haciendo ejemplos de verificacin, insercin, eliminacin y configuracin (p.e. alias).

Anlisis de los mdulos


Para realizar este anlisis podemos realizar una exploracin de los archivos /proc/modules- mdulos cargados,
/proc/kallsyms- smbolos exportados por los mdulos, usando las herramientas grep y/o awk entre otras.
A continuacin podramos usar el comando modinfo para obtener informacin ms detallada de cada mdulo.
Puesto que el resultado de estos comandos nos da un volumen de informacin muy grande, es algo difcil
consolidarlo y manejarlo por lo que una mejor alternativa es usar un script que lo haga automticamente lo cual
permitir revisar la informacin resumida y organizada fcilmente.
Creamos el script modsummary.bash el cual a partir de la lista de mdulos cargados obtenida del archivo
/proc/modules, ejecuta un ciclo y obtiene para cada mdulo la informacin resumida con el comando modinfo
y un filtro, y posteriormente la informacin de los smbolos filtrndola del archivo /proc/kallsyms.
PEC 1 - Administracin Avanzada del S.O. GNU/Linux

En la imagen a continuacin se presenta el srcipt realizado.

Esta es la informacin resumida de algunos de los mdulos con mayor nmero de cargas en el sistema.
-Modulo: evdev -Modulo: snd
filename: /lib/modules/3.16.0-4-amd64/kernel/drivers/input/evdev.ko filename:
description: Input driver event char devices /lib/modules/3.16.0-4-amd64/kernel/sound/core/snd.ko
depends: description: Advanced Linux Sound Architecture driver for soundcards.
-Resumen smbolos exportados evdev description: Jack detection support for ALSA
Nmero total de smbolos exportados: 26 depends: soundcore
evdev_poll -Resumen simbolos exportados snd
evdev_cleanup Numero total de simbolos exportados: 775
evdev_disconnect compat_SyS_msgsnd
evdev_fasync compat_sys_msgsnd
evdev_free do_msgsnd
evdev_flush SyS_msgsnd
------------------------------------ sys_msgsnd
security_msg_queue_msgsnd
------------------------------------
-Modulo: sunrpc -Modulo: usbcore
filename: /lib/modules/3.16.0-4-amd64/kernel/net/sunrpc/sunrpc.ko filename: /lib/modules/3.16.0-4-amd64/kernel/drivers/usb/core/usbcore.ko
depends: depends: usb-common
-Resumen simbolos exportados sunrpc -Resumen simbolos exportados usbcore
Numero total de simbolos exportados: 669 Numero total de simbolos exportados: 447
rpc_default_callback usb_dev_prepare
call_start __find_interface
rpcproc_encode_null __each_dev
rpcproc_decode_null usb_dev_restore
rpc_setup_pipedir_sb usb_dev_thaw
call_reserve usb_dev_resume

-Modulo: libata -Modulo: scsi_mod


filename: /lib/modules/3.16.0-4-amd64/kernel/drivers/ata/libata.ko filename: /lib/modules/3.16.0-4-amd64/kernel/drivers/scsi/scsi_mod.ko
description: Library module for ATA devices description: SCSI core
depends: scsi_mod depends:
-Resumen simbolos exportados libata -Resumen simbolos exportados scsi_mod
Numero total de simbolos exportados: 412 Numero total de simbolos exportados: 338
ata_rwcmd_protocol ata_scsi_mode_select_xlat
__sata_set_spd_needed trace_scsi_dispatch_cmd_done
glob_match perf_trace_scsi_dispatch_cmd_error
ata_dummy_qc_issue ftrace_raw_event_scsi_dispatch_cmd_error
ata_dummy_error_handler ftrace_raw_output_scsi_dispatch_cmd_start
ata_port_runtime_idle ftrace_raw_output_scsi_dispatch_cmd_error
PEC 1 - Administracin Avanzada del S.O. GNU/Linux

Anlisis de los aspectos vinculados a los mdulos

Eliminaremos algunos mdulos usando el


comando rmmod o tambin podemos usar
modprobe -r".

Usamos el comando lsmod para verificar


que el mdulos estn cargados y
posteriormente lo eliminamos usando
alguno de los comandos mencionados,
ejecutamos nuevamente el comando
lsmod para verificar que el modulo ya no se
encuentra cargado.

Usamos los siguientes mdulos para las pruebas:


-Modulo: pcspkr -Modulo: psmouse
description: PC Speakpcspkrer beeper driver description: PS/2 mouse driver

Ahora insertaremos los mdulos,


para ello usamos el comando
modprobe -v el cual muestra el
uso implcito del comando
insmod.

Con el comando lsmod


verificamos que los mdulos se
encuentran cargados.

Con el comando modprobe nv


podemos probar la carga del
mdulo y sus dependencias sin que
esta se lleve a cabo.
Como observamos en la imagen probamos el modulo bluetooth, se cargan correctamente el modulo y las
dependencias, en caso de que esto no suceda correctamente abra un mensaje de error.
Configuracin de alias, son un nombre opcional para un mdulo, se configuran creando un archivo con la siguiente
lnea para cada alias que se quiera crear, alias nombre-opcional nombre-modulo el archivo se llamara
mialias.conf ubicado en la carpeta /etc/modprobe.d/
Creamos un alias para el mdulo pcspkr
Probamos el alias descargando y cargando el
modulo con la instruccin modprobe -v
Observamos que se ejecuta correctamente.

http://docencia.ac.upc.edu/FIB/grau/SO2/documents/tema7.pdf
http://www.fing.edu.uy/inco/cursos/tso/teorico/TSO-Modulos.pdf
https://wiki.archlinux.org/index.php/Kernel_modules_%28Espa%C3%B1ol%29
PEC 1 - Administracin Avanzada del S.O. GNU/Linux

Ejercicio c Anlisis - Udev

Analizar el mecanismo de reconocimiento y gestin de dispositivos udev (se deber analizar cmo funcionan,
cmo coexisten y cmo se configuran). Mostrar cmo se gestionan las reglas y demostrarlo creando un nombre
predeterminado para un disco USB (p.e. Para que cuando se inserte el usb en particular se mapee como
/dev/usb_disc i no como /dev/sdx).
Mecanismo de reconocimiento y gestin de dispositivos udev
Udev gestiona los nodos de dispositivo en el directorio /dev y tambin todos las acciones en espacio de usuario
cuando se aaden o eliminan dispositivos, cada vez que se produce un cambio en la estructura de los dispositivos,
el ncleo emite un uevent que se detecta mediante el demonio udevd, a continuacin sigue las reglas declaradas
en los directorios /etc/udev/rules.d, /run/udev/rules.d y /lib/udev/rules.d. Basndose en la informacin contenida
en el evento (subsistema del kernel, conector fsico usado, nombre dado por el kernel, nmero de serie,
fabricante, entre otros) busca la regla o reglas que necesita ejecutar y realiza las acciones requeridas. Estas
acciones pueden consistir en la creacin o eliminacin de ficheros de dispositivo, pero pueden suponer tambin
la carga de ficheros de firmware particulares en la memoria del ncleo.
Las definiciones de las reglas se almacenan en dos localizaciones:
/lib/udev/rules.d/. Las reglas en este directorio son instaladas por determinados paquetes, normalmente los
usuarios no deberan cambiarlas.
/etc/udev/rules.d/. Este directorio es para las reglas especificadas por los usuarios finales. Cualquier nueva regla
se debe aadir en este directorio
En estos directorios se recorren en orden alfabtico mltiples ficheros de reglas (con el sufijo .rules), udev buscar
expresiones que concuerden con un uevent, el estado definido y la orden a ejecutar.
La concordancia del evento se basa en informacin como:

El SUBSYSTEM del uevent (para qu tipo de dispositivo se dispara el uevent).


La ACTION que se realiza (aadir, cambiar o eliminar).
Uno o ms atributos (a travs de ATTR o ATTRS), tales como la clase del dispositivo, el fabricante u otra
informacin del dispositivo.
El nombre que ofrece el ncleo (a travs de KERNEL), como sd* (para los discos SCSI/SATA) o input* (para
dispositivos de entrada como ratones y teclados)
Uno o ms ajustes de entorno (a travs de ENV), utilizados para enviar informacin entre mltiples reglas.
Basndose en esta informacin, la regla puede entonces comprobar s:
1. Se necesita compartir alguna informacin con eventos posteriores (a travs de variables de entorno)
2. Se necesita crear enlaces en /dev
3. Se necesita lanzar alguna orden
Udev realiza esto para cada regla que concuerda (por lo que no se detiene en la primera concordancia) para
permitir un enfoque flexible de gestin de los dispositivos.
Una gran ventaja de Udev es poder crear nodos persistentes por medio de las reglas, cada dispositivo recibe le
mismo nombre cada vez que se conecte, por ejemplo /dev/cmara.
https://wiki.archlinux.org/index.php/Udev_%28Espa%C3%B1ol%29
https://wiki.debian.org/udev
PEC 1 - Administracin Avanzada del S.O. GNU/Linux

Creando un nombre predeterminado para un disco USB


Para lograr este objetivo se debe crear un fichero con la regla correspondiente, para ello debemos conectar la
memoria al puerto usb y observar como la reconoce el sistema, usando el comando dmesg, obtenemos las
siguientes lneas.

Verificamos que tenemos una memoria Sandisk Cruzer Blade de 8.00 GB. En /dev/sdb1
Usamos el comando udevadm info a /dev/sdb1 para extraer alguna informacin particular que permita
identificar al dispositivo, puesto que la salida del comando es muy extensa solo se presenta la primera parte, de
donde extraemos ATTR{size}=15633408 como atributo para identificar esta memoria en particular.

Ahora procedemos a crear la regla usando esta informacin, para ello creamos el fichero alejousb.rules en la
carpeta /etc/udev/rules.d/ con la siguiente regla.

Recargamos las reglas usando los comandos


Verificamos el funcionamiento de la regla para ello se conectan dos memorias diferentes la segunda ser la
memoria que acabamos de configurar comprobamos los ficheros de la carpeta /dev buscando nuestro dispositivo.

La memoria se identific como sdc pues haba ya una memoria conectada a la cual se le asignno sdb, el nombre
usb_disc se vincul correctamente como se esperaba.
http://www.reactivated.net/writing_udev_rules.html#example-usbhdd
http://www.vicente-navarro.com/blog/2007/03/29/creacion-de-reglas-udev-para-personalizar-el-nombre-de-los-ficheros-
de-dispositivo-de-las-memorias-usb/
https://wiki.gentoo.org/wiki/Udev/es#Configuraci.C3.B3n
PEC 1 - Administracin Avanzada del S.O. GNU/Linux

Ejercicio d Configuracin personalizada del Kernel.

Instalar el cdigo fuente del ncleo de la versin estable ms nueva disponible (en Kernel.org la 4.2.1), configurarla
para seleccionar nicamente el hardware disponible en la mquina de trabajo prestando atencin al procesador
(32-64 bits) y dispositivos hardware (red, discos, audio, tarjeta grfica, etc) -drivers- y considerar que opciones de
seguridad se deben configurar (AppArmor, SELinux, Smack, Tomoyo, ) -justificar el porqu de la seleccin y
recordar que solo se puede configurar uno de estos mdulo- .
Consultando en Kernel.org la
versin ms actualizada es la 4.2.3
la descargamos en la carpeta
/usr/src , luego la
descomprimimos para realizar la
compilacin e instalacin.
Descomprimimos el paquete e ingresamos al directorio
donde iniciaremos con el proceso de configuracin,
limpiamos con
make mrproper.
Para configurar usamos make xconfig, prefer esta opcin pues es ms usable permite buscar y visualizar
rpidamente la ayuda de cada opcin a configurar, al ejecutar el comando automticamente carga la
configuracin del kernel anterior lo que facilita en gran medida la configuracin.
Puesto que hay una gran cantidad de opciones
por configurar no centramos en eliminar lo
que no se encuentra en el sistema y lo que no
se va a usar para ello exploramos el hardware
instalado con el fin de tener una idea de lo que
se debe dejar en el kernel.
Usamos la utilidad lshw short que nos da un
resumen de los dispositivos configurados
actualmente, tambin revisamos los mdulos
cargados verificando aquellos que no son
usados y que podemos eliminar.
Como modulo e seguridad se eligi Apparmor,
este es efectivo, fcil de configurar y
administrar, protege el sistema proactivamente de amenazas externas e internas, las polticas definen que
recursos del sistema y privilegios pueden acceder las aplicaciones.
Algunas ventajas de Apparmor son: polticas de fcil auditoria, disponibilidad de herramientas y GUI, rpida curva
de aprendizaje, fcil de usar, proporciona un nivel de seguridad suficiente.
Continuamos con el proceso de compilacin, se ejecuta el comando make deb-pkg clean -j8 se inicia con el
proceso de compilacin en este comando se indica que para el proceso se pueden usar los 8 ncleos del
procesador. Finalizado se procede a instalar el kernel compilado nos ubicamos en la carpeta superior /usr/0. y
ejecutamos el comando dpkg i Linux-image 4.2.3_4.2.3-1_amd64.deb Linux-headers-4.2.3-1.deb, con esto
finalizamos la instalacin y solo debemos reiniciar.
PEC 1 - Administracin Avanzada del S.O. GNU/Linux

Verificamos la nueva
versin del ncleo
https://operativoslinux.wordpress.com/2015/04/16/instalar-el-kernel-4-0-debian-style/
http://users.wowway.com/~zlinuxman/Kernel.htm
http://man.chinaunix.net/linux/debian/reference/ch-kernel.es.html
https://en.wikipedia.org/wiki/Linux_Security_Modules
https://es.wikipedia.org/wiki/AppArmor
https://es.opensuse.org/AppArmor

Ejercicio e - Informe configuracin ncleo

En el informe se deber indicar qu


opciones se han incluido quitado y
porqu. Decidir que ser configurado con
el ncleo y que ser cargado como
mdulo en el momento del boot. No
olvidarse de compilar los mdulos.
Finalmente realizar una instalacin y
arrancar el nuevo ncleo.
Puesto que se carga la configuracin del
ncleo instalado, el proceso de
configuracin se centra en eliminar las
opciones que no se usaran, se realiza la
configuracin siguiendo los siguientes
parmetros:
Las opciones en las cuales no se tiene
seguridad de que servicio prestan se dejaran como modulo sin desactivarlas, se desactivan la mayor cantidad de
driver posibles que no corresponden al hardware de la mquina, se desactivan algunos mdulos que no prestan
funcionalidad alguna de acuerdo a la informacin de lsmod y modinfo.

En general se desactivan el soporte para Wireless, bluetooth, wimax, pcmcia, infrared, algunos sistemas
de fichero no usados , soporte puerto paralelo, misc device.
En Network device suport desactivamos HIIPI, FDDI, surfboard1000, virtualizacin net opcin, fiber
chanel, Eql, atm drivers, solo se dejan driver Intel, Ethernet driver support.
Se deshabilita usb network adapters, wireles lan, wimax, ieee802.15, isdn.
Input device suport, se desactiva todo menos mouse y teclado, (toushcrens, miselaneous, joystics)
Se desactivan drivers de sonido que no se usaran solo se dejan los intel ac97, driver de red que no se
usaran solo se dejan Intel, se desactiva usb sound devices, firewire, pcmcia, Pci soud devices, entre otros.
Se desactiva usb dsl modems, accesibility suport, imnfniband suport, todo el soporte para virtualizacin,
plataform suport for chorme hardware, Disable industrial i/o support.
Se deshabilitan la mayora de las opciones para procesadores AMD, se deshabilitan drivers de video no
usados.
Este proceso se repiti varias veces puesto que algunas de las configuraciones realizadas no permitieron que
iniciara el sistema operativo, seguramente por desactivar algn modulo necesario para el funcionamiento del
mismo, se fue puliendo hasta lograr el objetivo.
http://www.makelinux.net/ldd3/
PEC 1 - Administracin Avanzada del S.O. GNU/Linux

Ejercicio f comparacin ncleo antiguo y nuevo

Sobre el nuevo ncleo analizar los mdulos cargados y sus diferencias con el anterior y verificar aspectos bsicos
de funcionamiento (red, dispositivos hw, y comandos como time ls -R / que consuman gran cantidad de tiempo y
recursos) y que mejoras ha aportado esta nueva compilacin del ncleo (medida del mismo, adecuacin al HW
disponible, inclusin/no inclusin de aspectos de seguridad, tiempo de arranque, etc.).
Inicialmente se percibe que el sistema inicia un poco ms
rpido no es una gran diferencia es solo cuestin de unos
4 segundos en comparacin con el kernel anterior
Todos los dispositivo de hardware se reconocen
correctamente lo cual se verifica con el comando lshw
obteniendo un resultado muy similar al del kernel
anterior, un pequeo cambio en los puertos scsi lo cual
no modifica en nada el funcionamiento.
Con respecto a los mdulos podemos verificar que no se
cargan aquellos que no se necesitan ejemplos pcskr,
joydeb, entre otros.
La red funciona correctamente, la navegacin por las distintas partes del sistema se percibe un poco ms fluida.
En cuanto a el tamao del kernel al desactivar gran cantidad de opciones que non se utilizan es menor incluso
teniendo en cuenta que por ser un kernel ms actualizado tiene ms lneas de cdigo, su tamao es menor que el
kernel anterior, esto lo verifique ejecutando el comando para desinstalarlo all se puede ver el espacio que ser
liberado para cada versin.

Se ejecut el comando time ls R / para verificar el rendimiento, obteniendo los siguientes resultado,
verificamos que el rendimiento es muy similar con diferencia de unos pocos segundos ms rpido el kernel 4.2.

Kernel 3.16 Kernel 4.2


Para un equipo de trabajo las mejoras en la actualizacin del kernel son casi imperceptibles salvo por un aumento
muy poco notorio en el rendimiento del sistema, si se habla de equipos con uso especficos esto s que trae
ventajas pues se puede optimizar el ncleo ajustado a las necesidades particulares y reducir as la carga del sistema
para aumentar el rendimiento, tambin se hace mas fcil la administracin al no tener un montn de mdulos
que nunca se utilizaran.
http://mogaal.com/articulos/kernel-a-la-debian.html
http://sopa.dis.ulpgc.es/adminso/material-didactico-practico/grado/practica10_Nucleo_MaterialApoyo.pdf
http://www.binarytides.com/linux-commands-hardware-info/
PEC 1 - Administracin Avanzada del S.O. GNU/Linux

Pregunta 2 -Virtualizacin

Ejercicio a- mquina virtual KVM


Construir una mquina virtual basada en KVM, que tenga como guest otra distribucin GNU/Linux diferente a la
del sistema host, a partir de su instalacin va cdrom-DVD o va imagen ISO de la distribucin. Demostrar su
funcionamiento dando indicios tanto del host como del guest que es la mquina del alumno y que funciona (p.e.
a travs de comandos como el ping, dig, top, uname -a, etc).
El ejercicio se desarrollara sobre un equipo porttil con deban 8, verificamos la versin del kernel.

Puesto que trabajaremos con kvm Instalamos todas las herramientas necesarias usamos el comando
apt-get install kvm qemu-kvm libvirt-bin virt-viewer virt-manger, con las siguientes instrucciones permitimos el
uso de mquinas virtuales al usuario adduser alejo libvirt, adduser alejo kvm.
Verificamos que los mdulos correspondientes para el funcionamiento de las maquinas se encuentren cargados.

Comprobamos la configuracin de red, se usara


la que est configurada por defecto. Con el
comando virsh net-list --all vemos el estado
de las redes configuradas, vemos que la red
default se encuentra inactiva, los siguientes
comando permiten definir que inicie
automticamente y ponerla en marcha.
Finalmente verificamos el estado nuevamente.

Ahora podemos crear la mquina virtual, usaremos un sistema operativo Ubuntu versin 12.04, mediante la
utilidad virt-install, la cual permite elegir varios parmetros de la mquina virtual y crear el disco imagen
automticamente.

Se crea una mquina virtual llamada ubuntu con 1024mb de ram, 1 ncleo cpu activado, virtualizacin kvm,
conexin por consola grfica, video qxl (fue necesario pues en la configuracin por defecto se presentaban
problemas con la carga de la interfaz grfica), la imagen del disco se guardara en
/home/alejo/driverimag/ubuntua.img de 8gb, reservada dinmicamente, la imagen de instalacin se encuentra
en /home/alejo/descargas/ubuntu-12.04-desktop-i386.iso
PEC 1 - Administracin Avanzada del S.O. GNU/Linux

Este comando crea la mquina y abre el virt-viewer donde se puede continuar con el proceso de instalacin,
finalizado el proceso se carga el sistema, para configuraciones adicionales utilizamos el virt-manager.
Se realizaron pruebas con varios sistemas operativos encontrando problemas en la carga de la interfaz grfica por
lo que se debi configurar el controlador de grficos por QXL, lo cual soluciono los inconvenientes.
Se muestra capturas de pantalla de la mquina virtual y la ejecucin de algunos comandos en ella, al igual que en
el host.
uname a en el host y en la mquina virtual

Comando top en ambas maquinas primero el host y despus la mquina virtual.


PEC 1 - Administracin Avanzada del S.O. GNU/Linux

Comando ping en ambas maquinas host y mquina virtual.

https://wiki.debian.org/es/KVM
http://proyectosbeta.net/2015/06/instalar-kvm-en-debian-jessie/
http://wiki.libvirt.org/page/Networking

Ejercicio b - mquina virtual qemu

Repetir el ejercicio anterior de construir una mquina virtual utilizando Quemu en modo emulacin (es decir sin
utilizar la interfaz hardware especfico del procesador).
En este modo de emulacin se presenta un rendimiento muy bajo su funcionamiento es extremadamente lento
al punto de no poder cargar la mayora de los instaladores con los que se prob, se logr completar la instalacin
de una imagen de Linux-mint de 32 bits.

Crea una mquina virtual llamada mintqemu con 1024mb de ram, 4 ncleos cpu activados, virtualizacin qemu
conexin por consola grfica, video qxl, la imagen del disco se guardara en
/home/alejo/driverimag/mintqemu.img de 8gb, reservada dinmicamente, la imagen de instalacin se encuentra
en /home/alejo/descargas/linuxmint-17-cinnamon-32bit-v2.iso
El proceso de instalacin en comparacin con el punto anterior es muy lento tardo varias horas, la interfaz grfica
fue difcil de manejar por lo que para las pruebas se us la consola.
Comando uname -a

Comando ping
PEC 1 - Administracin Avanzada del S.O. GNU/Linux

Comando top

http://manpages.ubuntu.com/manpages/lucid/man1/virsh.1.html

Ejercicio c - Rendimiento mquinas virtuales

Realizar pruebas de rendimiento ejecutado diferentes comandos (p.e ls -R /, find / -name * -print, reproduccin
de streaming de vdeo) sobre las dos mquinas virtuales y sobre la mquina host.
(Utilizar el comando time para determinar el tiempo utilizado en ejecutar el comando y realizar las comparaciones
entre las dos instalaciones indicando las prestaciones y comparativa de rendimiento sobre los tres sistemas (sobre
los dos sistemas virtualizados y sobre el sistema host)).
Se realizaron las pruebas correspondientes en cada una de las maquinas obtenido los resultados mostrados en la
tabla
Comando time Host Guest kvm Guest qemu

Ls R /

find / -name * -
print -.-
El resultado de la ejecucin de estos comandos nos muestra
que la maquina basada en kvm, muestra un rendimiento
similar a la maquina Host al ejecutar estas instrucciones, no
siendo as la maquina basada en qemu la cual debido a la
emulacin del hardware funciona muy lento.
Pruebas de reproduccin de streaming de video, se realiz la
prueba en la mquina virtual basada en kvm, se consigui
reproducir el video con resultados aceptables con algo de
lag, presenta un rendimiento mucho menor que la maquina
host en la cual se reproducen los videos sin problemas.
PEC 1 - Administracin Avanzada del S.O. GNU/Linux

Ejercicio d - Benchmark Phoronix

Repetir las pruebas de rendimiento (como mnimo sobre la


mquina KVM) utilizando algunos de los test o benchmarging
que existen para Linux como por ejemplo Phoronix Test Suite
(http://www.phoronix-test-suite.com/). Download:
http://www.phoronix-test-suite.com/?k=downloads
Descargamos e instalamos la herramienta desde la pgina. Al
iniciar la herramienta nos muestra una lista de opiones donde
elegimos el test que se va a aplicar a la mquina, basta con
escogerlo de una amplia lista y esperar a que la herramienta
cumpla su tarea, y nos presente el informe, para este ejercicio
primero se realiza un test de compresin 7 zip, se realiza un
grupo de test - full test que realiza en un solo proceso un
anlisis completo de la mquina.
Se obtiene el siguiente resultado donde vemos un resumen del
sistema y la informacin que dice que el procesador se
encuentra por debajo de la media, la cual que se marca en la
grfica como 6500 y se obtuvo solo 6034.

Durante la ejecucin del test podemos ver el uso del procesador


usando el virt-manager nos muestra una pequea grafica al lado
derecho de la mquina virtual se muestra el uso de cpu de la
mquina virtual y del equipo host.
Los resultados del test-full se presentan como archivo anexo,
todos los resultados muestran un desempeo muy por debajo
de la media.
PEC 1 - Administracin Avanzada del S.O. GNU/Linux

Ejercicio e - Tunning mquinas virtuales

Realizar un anlisis de las medidas aplicables en la posible optimizacin o tunning asociado al rendimiento de la
mquina virtual a nivel de CPU y operaciones de E/S (disco principalmente). Aplicar las optimizaciones (si es
posible) y realizar un anlisis comparativo sobre la ejecucin de una carga intensiva de trabajo en la mquina fsica
y en la mquina virtual y con/sin la optimizacin.
Es posible realizar configuraciones para
mejorar el rendimiento usando la aplicacin
virt-manager que nos muestra todas las
mquinas virtuales y se pueden configurar sus
caractersticas, all podemos modificar la
configuracin del procesador, para empezar
podemos ampliar el nmero de ncleos que se
van a usar, el tipo de procesador, la topologa
y el conexionado, la mejor alternativa es que la
mquina virtual use todas las caractersticas
del cpu host,
Con respecto a las operaciones de E/S, la mejor
alternativa es que el disco duro del sistema
host sea pasado directamente a la mquina
virtual esto proporciona el mejor rendimiento,
en su defecto usar el formato raw de tamao
fijo, nos da el mejor rendimiento de los backends basados en fichero, algunas configuraciones adicionales como
el modo E/S y la cache tambin pueden mejorar el rendimiento dependiendo del escenario en el que se est
trabajando, indispensable habilitar VT-x/AMD-V (si nuestro procesador as lo permite).
Algo que tambin puede mejorar el rendimiento si se va a usar interfaz grfica es cambiar la configuracin del
video para activar la aceleracion2d y 3d y asignar una mayor cantidad de memoria de video a la mquina virtual,
lo cual se puede hacer modificando el archivo xml de la mquina virtual de la siguiente manera.
virsh edit ubuntu
se elige el editor nano y se cambia la configuracin de video como se muestra a continuacin

Lo cual cambia los grficos por vmvga y ampla la memoria a 128mb activa la aceleracin 2d y 3d.
Para optimizar modificamos las operaciones E/SI por la opcin native, asignamos los 4 ncleos al procesador y
ampliamos la memoria de video y activamos la aceleracin y si inicia nuevamente la mquina para ejecutar
PEC 1 - Administracin Avanzada del S.O. GNU/Linux

algunas instrucciones para verificar el rendimiento, de entrada se puede ver que la interfaz grfica va muy rpido,
se ve mejor.
Comando time ls R / se obtiene menores tiempos que en la ejecucin anterior donde el tiempo fue mayor a 1
minuto ahora fue menor.

El comando find / -name * print tambin arroja mejores tiempos.

El rendimiento de la mquina mejoro , en cuanto a reproduccin de videos se sigue presentando lags , se realiz
una carga intensa abriendo varias aplicaciones y pestaas en el navegador, los resultados fueron que sin el proceso
de tuneado el equipo fue muy lento rpidamente no soporto ms de tres pestaas de pginas como youtube,
vimeo, speedteest al abrir otra aplicacin se torn demasiado lento para usarlo, con las mejoras el sistema
soporto abrir varias aplicaciones, navegar con 5 o 6 pestaas antes de ponerse demasiado lento, definitivamente
se ve una mejora sustancial en el rendimiento.
http://www.makeinstall.es/2011/04/virtualizar-con-la-maquina-virtual-del.html
http://blog.flexvdi.com/2014/05/23/optimizar-el-rendimiento-de-disco-en-una-maquina-virtual/
http://serverfault.com/questions/425607/kvm-guest-io-is-much-slower-than-host-io-is-that-normal
http://hackurbano.net/2012/06/28/crear-convertir-o-clonar-un-disco-virtual-para-usar-con-kvm/

S-ar putea să vă placă și