Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
DEPARTAMENTO DE ELECTRNICA
VALPARASO CHILE
MAYO 2011
Al Padre, su Hijo y su Espritu,
por estar siempre junto a m.
2
RESUMEN
3
ABSTRACT
In the last decade, virtualization has become one of the main techniques used in organizations
offering different types of informatics services. This trend is envisaged to continue in the coming
years.
Virtualization allows the execution of different virtual machines (each in charge of a determined
service) in a single physical host. As a result, significant advantages in terms of hardware
savings, electricity consumption and management efficiency are achieved. The main drawback
lies in the increase of the response time of virtualized services. However, the benefits of
implementing virtualization seems to compensate the downside of the increased delay, given the
widely adoption of such techniques in many organization.
Currently, the marked offers many virtualization software kits. They can be classified between
proprietary and open source kits. In both cases, most of them allow benefiting from the main
advantages of virtualization. The selection of the proper virtualization software kit will be
determined by the requirements and constraints imposed by the user on the characteristics of the
virtualized services.
In this work a brief description of the virtualization technique is given as well as a comparative
study of the main proprietary and open source software kits. Then, a case of study with the aim
of evaluate the technical feasibility of implementing virtualization for 3 services offered by the
Computational Services Unit (DCSC, Direccin Central de Servicios Computacionales) at
Universidad Tcnica Federico Santa Mara. The study takes into account the requirements and
constraints imposed by the DCSC to its virtualized services as well as the benefits expected after
implementing virtualization. A preliminary implementation is reported, where the services of
web, DNS and LDAP are virtualized. Finally, this work ends with the drawing of the main
conclusions and the proposal of further work.
4
ndice
Captulo 1
1. INTRODUCCIN .................................................................................................................... 11
2. REFERENCIAS ........................................................................................................................ 15
Captulo 2
VIRTUALIZACIN..................................................................................................................... 16
5
Captulo 3
Captulo 4
1. HERRAMIENTAS. .............................................................................................................. 41
1.1. HERRAMIENTAS PROPIETARIAS. .......................................................................... 41
1.1.1. VMWARE VSPHERE............................................................................................ 42
1.1.2. CITRIX XENSERVER. .......................................................................................... 48
1.2. HERRAMIENTAS DE CDIGO ABIERTO. .............................................................. 52
1.2.1. XEN. ....................................................................................................................... 52
1.2.2. KVM. ...................................................................................................................... 54
1.2.3. PROXMOX VIRTUAL ENVIRONMENT. ........................................................... 56
2. ANLISIS Y SOLUCIN. .................................................................................................. 58
3. RESUMEN. .......................................................................................................................... 59
6
4. BIBLIOGRAFA. ................................................................................................................. 60
Captulo 5
1. BENEFICIOS. ...................................................................................................................... 65
1.1. CANTIDAD DE SERVIDORES VIRTUALES. ........................................................... 66
1.2. AHORRO ENERGTICO ............................................................................................. 67
2. DESVENTAJAS POR TIPO DE SERVICIO VIRTUALIZADO ....................................... 69
2.1. SERVICIO WEB............................................................................................................ 70
2.2. DNS. ............................................................................................................................... 76
2.3. LDAP ............................................................................................................................. 79
3. RESUMEN. .......................................................................................................................... 84
4. BIBLIOGRAFA. ................................................................................................................. 85
Captulo 6
1. CONCLUSIONES ................................................................................................................ 87
2. TRABAJO FUTURO............................................................................................................ 88
Anexos
7
ndice de figuras
8
Figura A.15: Datos evaluacin DNS, escenario 5 ........................................................................ 98
Figura A.16: Datos evaluacin LDAP, escenario 1 ...................................................................... 99
Figura A.17: Datos evaluacin LDAP, escenario 2 ...................................................................... 99
Figura A.18: Datos evaluacin LDAP, escenario 3 .................................................................... 100
Figura A.19: Datos evaluacin LDAP, escenario 4 .................................................................... 100
Figura A.20: Datos evaluacin LDAP, escenario 5 .................................................................... 101
Figura A.21: Datos evaluacin LDAP, escenario 6 .................................................................... 101
Figura A.22: Datos evaluacin LDAP, escenario 7 .................................................................... 102
Figura A.23: Datos evaluacin LDAP, escenario 8 .................................................................... 102
Figura A.24: Datos evaluacin LDAP, escenario 9 .................................................................... 103
Figura A.25: Datos evaluacin LDAP, escenario 10 .................................................................. 103
9
ndice de tablas
Tabla 3.1: Tabla de requerimientos y restricciones para las herramientas a analizar. .................. 37
Tabla 4.1: Detalle de cada una de las distintas versiones de VMware vSphere. .......................... 44
Tabla 4.2: Detalle de las versiones de VMware vSphere para pequeas y medianas empresas... 46
Tabla 4.3: Anlisis de funcionalidades de VMware vSphere segn requerimientos y
restricciones de la DCSC .............................................................................................................. 47
Tabla 4.4: Detalle de las distintas versiones de Citrix XenServer ................................................ 50
Tabla 4.5: Anlisis de funcionalidades de Citrix XenServer segn requerimientos y restricciones
de la DCSC ................................................................................................................................... 51
Tabla 4.6: Anlisis de funcionalidades de Xen segn los requerimientos y restricciones de la
DCSC. ........................................................................................................................................... 54
Tabla 4.6: Anlisis de funcionalidades de KVM segn los requerimientos y restricciones de la
DCSC. ........................................................................................................................................... 56
Tabla 4.8: Anlisis de Proxmox Virtual Environment segn las especificaciones de la DCSC .. 58
Tabla 5.1: Especificaciones de hardware y sistema operativo de los equipos utilizados para las
pruebas .......................................................................................................................................... 70
Tabla 5.2: Resumen de las pruebas con Apache Benchmark. ...................................................... 71
Tabla 5.3: Tiempos promedio y total de cada escenario............................................................... 74
Tabla 5.4: Resumen de pruebas con Namebench ......................................................................... 76
Tabla 5.5: Tiempos promedio y total para cada escenario ............................................................ 79
Tabla 5.6: Escenarios de prueba para LDAP. ............................................................................... 80
Tabla 5.7: Tiempos promedio y total para cada escenario ............................................................ 83
10
Captulo 1
1. INTRODUCCIN
Dentro de las empresas e instituciones como las universidades, es comn que se ofrezcan
servicios de red tales como sitios web, directorio de personas, nombres de dominio, entre otros.
Adicionalmente, se encuentran muchas aplicaciones de carcter interno que tambin estn
basadas en la red, como sitios de control de versiones para documentos, sistemas de gestin, etc.
Todos estos servicios y aplicaciones requieren de un servidor para ejecutarse. Segn la cantidad
de servicios y aplicaciones, la cantidad y variedad de servidores dentro de las empresas o
instituciones suele ser considerable, generndose as problemas importantes en trminos de su
administracin y mantencin.
Existen casos reportados de empresas [4], [5] y [6], que se vieron enfrentadas a al menos una de
las situaciones planteadas anteriormente. Las soluciones implementadas apuntaron a tener una
11
infraestructura que permitiera integrar una gran variedad de sistemas operativos dentro de ella y
que fuera fcil de administrar y mantener en el tiempo, lo cual se pudo lograr mediante la tcnica
de virtualizacin.
La virtualizacin es una tcnica mediante la cual, los recursos de un computador (CPU, RAM,
almacenamiento y tarjetas de red) se asignan, de manera dinmica, a distintos procesos. Estos
procesos tienen la cualidad de representar una mquina virtual, con las mismas funcionalidades
de un computador. Cada mquina virtual tiene su propio sistema operativo y tiene acceso a todos
los recursos de la mquina fsica, adems de ser independiente del resto de las mquinas
virtuales.
El proceso maestro encargado de asignar los recursos entre las mquinas virtuales se conoce
como el Administrador de Mquinas Virtuales (Virtual Machine Monitor o VMM), que crea una
capa de abstraccin entre el hardware de la mquina fsica (conocida tambin como host) y el
sistema operativo de cada mquina virtual. Este administrador es el encargado de asignar los
recursos entre las mquinas virtuales (tambin conocidas como guests), permitiendo ejecutar
distintos sistemas operativos, dentro de una sola mquina fsica.
12
El objetivo de este trabajo de ttulo es el anlisis y la implementacin de virtualizacin dentro de
la Direccin Central de Servicios Computacionales de la Universidad Tcnica Federico Santa
Mara. Para conseguir este objetivo, el trabajo consistir en las siguientes etapas:
13
Finalmente, en el captulo 6 se presentarn las conclusiones obtenidas y los futuros trabajos que
se podrn realizar tras esta memoria.
14
2. REFERENCIAS
[1] Domain Name System Wikipedia, the free encyclopedia [en lnea]
<http://en.wikipedia.org/wiki/Domain_Name_System> [consulta: 31 de marzo de 2011]
[3] ALBITZ, Paul y LIU, Cricket. DNS and BIND. 5ta Ed. 1005 Gravenstein Highway North,
Sebastopol, CA 95472, Estados Unidos, OReilly & Associates, 2006.
[8] Reduce Energy Cost and Go Green With VMware Green IT Solutions - VMware. [en lnea]
<http://www.vmware.com/files/pdf/VMware-GREEN-IT-OVERVIEW-SB-EN.pdf> [consulta:
11 de octubre de 2010]
15
Captulo 2
VIRTUALIZACIN
En este captulo se describir en mayor detalle la tcnica de virtualizacin y cul ha sido su
evolucin en el tiempo. Tambin se presentarn los distintos tipos de virtualizacin existentes
actualmente y por ltimo, se abordarn las ventajas y desventajas que presenta esta tcnica.
Como primera parte, se realizar una definicin de lo que trata la de virtualizacin, describiendo
otros trminos que ayudarn a comprenderla. Adems de esto, se realizar una resea histrica
respecto de ella, desde sus inicios hasta nuestros das, la cual ayudar a comprender su evolucin
histrica.
1.1. DEFINICIN.
Tal como se present en la introduccin, la virtualizacin es una tcnica que permite ejecutar
diversos procesos que simulan una mquina real, conocidos como mquinas virtuales (guests),
dentro de una mquina fsica (host). Cada una de estas mquinas virtuales tendr asignada
instancias de cada uno de los recursos de hardware (CPU, memoria RAM, almacenamiento y
dispositivos de red) que posea la mquina fsica y operar de manera independiente del resto de
las mquinas virtuales instaladas en el mismo host.
La asignacin de recursos por parte del VMM, se lleva a cabo mediante algoritmos de
planificacin o de scheduling. Dentro de los distintos tipos de algoritmos utilizados, se encuentra
el Planificador Basado en Crditos [1] (Credit-Based Scheduler).Este algoritmo considera dos
valores, el primero es weight, que indica la porcin de CPU fsica que le corresponde a cada
CPU de mquina virtual o CPU virtual y el cap, que indica el tiempo de utilizacin de la CPU
fsica por parte de la CPU virtual. Estos valores son los encargados de asignar prioridad de uso
16
de CPU a cada mquina virtual. Adems, cada CPU virtual tiene una variable llamada crdito, la
cual puede tomar dos valores over, si la CPU fsica ya fue utilizada y under, si an no. El
algoritmo funciona de la siguiente forma:
Se inicializan todas las variables de crdito de las CPUs virtuales, en estado under.
Se atiende a la CPU virtual con mayor weight, por el periodo de tiempo indicado por cap.
Una vez finalizado el uso de CPU fsica, se cambia la variable de crdito de la CPU
virtual a estado over y se atiende a la CPU con mayor weight y que se encuentre con
variable crdito en estado under.
Este algoritmo es utilizado en Xen, un VMM cdigo abierto y en el que se ahondar en detalle en
la seccin 1.2.1 del captulo 4.
1.2. HISTORIA.
Otra empresa precursora de la virtualizacin fue IBM, que a mediados de la dcada de 1960
trabaj en el proyecto M44/44X [5] que constaba de una mquina base (M44) modelo 7044, y el
resto eran mquinas virtuales de la mquina 7044 (44X). El objetivo tras esto era el aprovechar
al mximo el hardware disponible en los grandes y costosos computadores de la poca
(mainframes) de manera de ejecutar mltiples tareas (multitasking) en este computador.
17
Para finales de la dcada de 1960 y comienzos de la dcada de 1970, IBM desarroll otros
proyectos tales como el sistema operativo CP-40 [6], desarrollado para el sistema S360/40 y que
permita ejecutar multiples instancias de sistemas operativos clientes, adems es considerado
como el primer sistema operativo en implementar virtualizacin completa. Luego, se desarroll
el CP-67 [7], basado en CP-40, para el sistema S360/67, entre otros [8].
Para finales de la dcada de 1970 y la dcada de 1980, la virtualizacin perdi terreno con la
aparicin de los computadores de escritorio y los servidores con arquitectura x86. Pero el inters
por tener plataformas fciles de administrar y los intentos por abaratar costos en la
infraestructura de tecnologas de la informacin en las empresas, reimpulsaron la investigacin y
el desarrollo de esta tcnica, lo cual se refleja en el hecho de que para la segunda mitad de la
dcada de 1990, empresas como VMware [9] comenzaran a explotar este nicho, ofreciendo
soluciones para servidores y computadores de escritorio.
Para la primera dcada del siglo XXI, la virtualizacin ha tenido un gran auge, de la mano de
soluciones propietarias ofrecidas por empresas como Microsoft [10], VMware, Citrix [11], entre
otras. Adems de estas, existe una importante cantidad de soluciones de tipo cdigo abierto, tales
como Xen [12], KVM [13], OpenVZ [14], entre otras. Adems de esto, las empresas
desarrolladoras de procesadores como Intel y AMD han contribuido a este auge desarrollando
tecnologa compatible con virtualizacin, como Intel VT [15] y AMD-V [16], las cuales han
facilitado la implementacin de esta tcnica tanto en computadores de escritorio como en
servidores.
2. TIPOS DE VIRTUALIZACIN.
Esta tipo de virtualizacin permite al ncleo del sistema operativo tener mltiples copias o
instancias de un mismo sistema operativo, tal como se puede apreciar en la figura 1. Cada una de
18
estas copias es independiente de la otra, es decir, un proceso que se encuentra ejecutndose en
una copia A no afectar directamente a otro proceso que se encuentra en la copia B.
Para conseguir esta independencia, el ncleo del sistema operativo es quien maneja la asignacin
de los recursos a fin de que no existan problemas entre las copias.
Sistema Operativo
Hardware
Dentro de las ventajas de este tipo de virtualizacin se cuenta el no introducir mayor sobrecarga
en el sistema, ya que al ser copias del mismo sistema operativo, no se necesita hardware
emulado, a diferencia de la tcnica de virtualizacin asistida por hardware, que si lo necesitan.
La desventaja de este tipo de virtualizacin consiste en que slo permite copias del mismo
sistema operativo, dado que el ncleo es el mismo para todas estas copias. Por lo tanto, en el
caso de que necesitaran mquinas virtuales con sistemas operativos de distinto ncleo (por
ejemplo, una mquina con Microsoft Windows y otra con FreeBSD), este tipo de virtualizacin
no servir.
Ejemplos de herramientas que usan este tipo de virtualizacin son: FreeBSD jails [17], Solaris
Zones [18] y OpenVZ [14].
La virtualizacin de hardware permite ejecutar diversos sistemas operativos dentro de una misma
mquina fsica, lo cual marca una diferencia con lo visto anteriormente.
Dentro de esta modalidad existen dos subtipos de virtualizacin, los cuales son: full-
virtualizacin y para-virtualizacin.
19
2.2.1. FULL-VIRTUALIZACIN.
Guest 1 Guest 2
Admin.
Tools
VMM
Hardware
Esta tcnica tiene como principal desventaja que el acceso a hardware mediante algoritmos de
scheduling introduce cierta sobrecarga en el sistema, ya que por cada mquina virtual que
requiere acceso a los recursos de hardware, el administrador de mquinas virtuales debe ejecutar
dicho algoritimo. Sin embargo, en la actualidad esto se ha visto mejorado de cierta forma,
especialmente con la aparicin de las tecnologas de virtualizacin desarrolladas por los distintos
fabricantes de hardware, como lo es en el caso de Intel y AMD, quienes han desarrollado
procesadores con tecnologa Intel VT-x [15] y AMD-V [16] respectivamente, tecnologas que
permiten un mejor desempeo en la asignacin de CPU a las mquinas virtuales.
Ejemplos de herramientas de virtualizacin que utilizan esta subclase de tcnica son: VMware
ESXi [20], Citrix Xenserver [21] y KVM [13].
20
2.2.2. PARAVIRTUALIZACIN.
Esta subclase se caracteriza por proveer una API (Application Programming Interface o Interfaz
de Programacin de Aplicaciones) [22] especial, la cual busca optimizar el acceso a los recursos
de hardware, agilizndolo. Para utilizar esta API, tanto el sistema operativo que reside en la
mquina fsica o host, como el sistema operativo a virtualizar o guest, deben modificarse. La
figura 3 presenta un esquema de este tipo de virtualizacin, destacndose la API que debe tener
cada sistema operativo guest. Los roles del VMM y de las herramientas de administracin
(Admin. Tools) son iguales a los expuestos en full-virtualizacin
Modif. Modif.
Guest 1 Guest 2
Admin.
API API Tools
VMM
Hardware
La principal ventaja que tiene esta subclase es que provee de tiempos de respuesta mejores que
en el caso de las mquinas virtuales que se encuentran full-virtualizadas especialmente en
aquellas mquinas fsicas que no cuentan con tecnologas que apoyan la virtualizacin. La
principal desventaja es que slo admiten la ejecucin de sistemas operativos de cdigo abierto,
ya que solo estos pueden ser modificados a fin de tener la API de paravirtualizacin. Ejemplos
de herramientas de virtualizacin que pertenecen a esta subclase son: Xen [12] y Denali [23].
3. VENTAJAS DE LA VIRTUALIZACIN.
21
3.1. CONSOLIDACIN DE SEVIDORES.
Este concepto nace a raz de estudios realizados por especialistas, tales como Tony Iams, quien
en [24] declara que tpicamente, los servidores trabajan entre un 15 a un 20% de su
capacidad. Un ejemplo de esta situacin se encuentra en [26], donde se reporta que la
utilizacin de CPU que puede llegar a tener un servicio como BIND DNS [25], es apenas del
10% [26]. Siendo esta una situacin comn, es fundamental utilizar herramientas que permitan
aprovechar los recursos de hardware disponibles.
Al permitir la ejecucin de mltiples mquinas virtuales dentro de una mquina fsica, la tcnica
de virtualizacin aporta a la reduccin de servidores fsicos necesarios para satisfacer los
requerimientos de servicios de informacin de las instituciones. Adems de lo anterior, la
virtualizacin permite una mejor utilizacin de los recursos de hardware en los servidores, ya
que segn estudios de empresas como VMware, la utilizacin de servidores puede aumentar del
rango entre 5 al 15% al rango de entre 60 al 80% [27], lo cual depender de la cantidad de
mquinas virtuales que se ejecuten dentro del servidor y de los servicios que estas mquinas
virtuales entreguen.
3.2. AHORROS
Otra de las ventajas que presenta la virtualizacin, son los ahorros econmicos, de infraestructura
y de consumo de electricidad que se pueden generar tras su implementacin.
Uno de los ahorros generados es el de hardware, ya que como se pudo entender del punto de
consolidacin de servidores, uno de los fines es la reduccin del hardware existente, lo que
conduce a una disminucin en la adquisicin de hardware por parte de las empresas e
instituciones. Segn anlisis tras los casos de estudios de empresas como VMware [27] y Citrix
[28], el ahorro en este tem puede llegar a ser de un 50%, lo cual depende del tamao del
proyecto.
22
Otro ahorro a considerar es el de infraestructura, el cual se desprende del ahorro en hardware
dado que al disminuir la cantidad de servidores en el datacenter de una empresa, se logra
disminuir el espacio necesario para tener estos servidores. Como resultado, disminuye el costo de
elementos relacionados con la infraestructura, como por ejemplo racks para mantener dichos
servidores y cableado necesario tanto para proporcionar electricidad a los servidores, como el
cableado de red.
Por otra parte, el ahorro de servidores implica tambin un ahorro en consumo de electricidad.
Segn estimaciones obtenidas tras casos de estudios, empresas como VMware [27] aseguran que
el ahorro que se puede alcanzar en cuanto a consumo elctrico puede llegar a ser de un 80%, lo
cual depende del tamao del proyecto.
3.3. ADMINISTRACIN
La facilitacin de la creacin de las mquinas virtuales radica en la rapidez con que puede
llevarse a cabo esta tarea, ya que no tan solo se permite crear una mquina de la manera
convencional, es decir, instalando el sistema operativo y luego configurarlo, a fin de que preste
23
sus servicios, sino que tambin se permite manejar mquinas con configuracin por omisin, las
que pueden ser utilizadas como modelo estndar para la creacin de mquinas de manera ms
rpida. La creacin de mquinas en base a esta especie de mquina estndar se puede realizar
mediante tcnicas de clonacin de mquinas, las cuales en la actualidad son ofrecidas por gran
parte de las herramientas de virtualizacin existentes.
Algunas de las herramientas de virtualizacin cuentan con interfaz grfica, como Citrix
XenCenter [29] en XenServer, VMware vSphere [30] en VMware ESXi y Virtual Machine
Manager [32] en el caso de herramientas como Xen y KVM, o mediante lnea de comando, como
virsh [31] en Xen y KVM.
Hasta este punto el enfoque parece considerar solamente un servidor y sus mquinas virtuales,
pero qu sucede en el caso de que exista ms de un servidor fsico con mquinas virtuales? La
respuesta a esta pregunta es que la virtualizacin tambin permite integrar distintos servidores
fsicos a fin de realizar tareas que permitan un mejor uso del hardware existente. Muchas
herramientas, tanto comerciales como cdigo abierto, permiten integrar servidores, a fin de que
estos conformen una plataforma unificada, donde los recursos de cada servidor se encuentren
disponibles para las mquinas virtuales existentes dentro del sistema.
24
de un servidor a otro, lo cual puede ser necesario en caso de requerir una mantencin del servidor
fsico que involucre desconectarlo, asegurando que los servicios seguirn en funcionamiento.
Gran parte de las herramientas de virtualizacin actuales, tanto las comerciales como XenServer
[33] y VMware ESXi [34], como las de cdigo abierto como Xen [35] y KVM [36], ofrecen esta
funcionalidad.
Segn estimaciones de firmas como IDC [38], citadas en muchos estudios de impacto de la
virtualizacin en el medio ambiente [39], dice que cada servidor emite aproximadamente 4
toneladas de dixido de carbono anuales al ambiente, lo cual es considerable al momento de
analizar si dentro de la empresa o institucin existen servidores que se encuentran funcionando a
niveles menores del 20%, tal como se vio anteriormente, ya que se tienen potenciales
contaminantes, los cuales podran ser reducidos tomando las medidas adecuadas. Es por esto que
tecnologas como la virtualizacin se hacen necesarias de implementar, ya sea en las empresas o
instituciones.
4. DESVENTAJAS DE LA VIRTUALIZACIN.
Como toda tecnologa, la virtualizacin posee ciertas desventajas, las cuales apuntan a la
degradacin de los servicios que una mquina virtual ofrece, comparado con los mismos
servicios que ofrecera una mquina fsica, la necesidad de redundancia y la necesidad de
hardware que permita llevar a cabo las tareas de virtualizacin.
25
4.1. DEGRADACIN DE SERVICIOS.
Se han hecho muchos estudios respecto a este tema [40] [41] y todos dan cuenta de que existe
una cierta demora en la realizacin de algunas tareas, como por ejemplo, escritura en disco.
Si bien existen soluciones que buscan mitigar este problema, como por ejemplo, hardware que
cuente con tecnologa que facilite la virtualizacin, o la paravirtualizacin (recomendada en
casos de hardware sin soporte para virtualizacin), siempre existir cierto nivel de degradacin
en las mquinas virtuales.
5. RESUMEN.
Adems de esto, se han discutido tanto las ventajas como desventajas de esta tcnica, las cuales
deben ser consideradas al momento de iniciar un proyecto de virtualizacin, lo cual ser el tema
principal del prximo captulo.
26
6. BIBLIOGRAFA.
[2] Completely Fair Scheduler Wikipedia, the free encyclopedia. [en lnea]
<http://en.wikipedia.org/wiki/Completely_Fair_Scheduler> [consulta: 27 de diciembre de 2010].
27
[13] Kernel-Based Virtual Machine Site [en lnea] <http://www.linux-kvm.org/> [consulta: 29 de
diciembre de 2010].
[20] VMware vSphere Hypervisor (Based on VMware ESXi) VMware [en lnea]
<http://www.vmware.com/products/vsphere-hypervisor/> [consulta: 30 de enero de 2010].
[22] Application programming interface - Wikipedia, the free encyclopedia [en lnea]
<http://en.wikipedia.org/wiki/Application_programming_interface> [consulta 30 de diciembre
de 2010]
28
[25] INTERNET SYSTEM CONSORTIUM. BIND DNS. [en lnea]
<http://www.isc.org/software/bind> [consulta: 3 de enero de 2011].
[26] ALBITZ, Paul y LIU, Cricket. DNS and BIND. 5ta Ed. 1005 Gravenstein Highway North,
Sebastopol, CA 95472, Estados Unidos, OReilly & Associates, 2006.
[27] How to WMware Right-size IT Infrastructure to Reduce Power Consumption VMware [en
lnea] <http://www.vmware.com/files/pdf/WhitePaper_ReducePowerConsumption.pdf>
[consulta: 4 de enero de 2011].
[33] VMware vMotion for Live Migration of Virtual Machines VMware [en lnea]
<http://www.vmware.com/products/vmotion/> [consulta: 5 de enero de 2011].
[34] Everything you always wanted to know about XenMotion Citrix Community [en lnea]
<http://community.citrix.com/pages/viewpage.action?pageId=18481296> [consulta: 5 de enero
de 2011].
[35] Live Migration of Virtual Machine System Research Group, Computer Laboratory,
University of Cambridge [en lnea] <http://www.cl.cam.ac.uk/research/srg/netos/papers/2005-
migration-nsdi-pre.pdf> [consulta: 5 de enero de 2011].
29
[36] Migration KVM [en lnea] <http://www.linux-kvm.org/page/Migration> [consulta: 5 de
enero de 2011].
30
Captulo 3
Uno de los problemas reportados dentro de esta unidad se encuentra el de la baja utilizacin por
parte de algunos servidores, especialmente los que ejecutan servicios LDAP, DNS y web. En la
actualidad, algunos de estos servicios se ejecutan en computadores Dell OptiPlex GX280 [6], los
cuales no son aprovechados en su totalidad respecto de su poder de cmputo. Adems, estos
computadores ocupan recursos, tales como las UPS (Uninterruptible Power Supply) [7], las
cuales podran ofrecer una mayor autonoma a los servidores, frente a cortes de electricidad, si se
pudiera eliminar estos computadores.
Dadas las ventajas que ofrece la virtualizacin (analizadas en el captulo anterior), la DCSC ha
decidido realizar un estudio de factibilidad de implementacin de dicha tcnica. Para esto, en el
31
marco de este trabajo de ttulo se investigar y evaluar, mediante pruebas experimentales, la
factibilidad y beneficios de implementar virtualizacin. Para las investigaciones se evaluarn
varias herramientas disponibles en la actualidad, tanto de cdigo abierto como licenciadas, a fin
de elegir una solucin que satisfaga los requerimientos planteados por esta unidad.
Los objetivos que la DCSC busca alcanzar con la virtualizacin son los siguientes:
Ejecutar diversos sistemas operativos (Windows, Unix y Linux) dentro de una misma
mquina. A fin de ofrecer servicios que consuman pocos recursos de hardware (no mayor
a 20%), independiente del sistema operativo en el cual se ejecute.
Facilitar la administracin de los servidores. A fin de que tareas como retiro de servidores
para actualizacin, creacin y modificacin de nuevos servidores sean tareas ms
simples, tal como se expuso en la seccin 3.3 del captulo 2.
Como primer requerimiento se tiene que la solucin propuesta debe permitir la ejecucin de
varias mquinas virtuales dentro de una misma mquina fsica. En este caso, cada mquina
virtual ser considerada como un servidor virtual. Cada servidor virtual podr contar con su
sistema operativo, el cual podr ser Microsoft Windows [8] (XP, Server 2003 y Server 2008),
sistemas operativos basados en BSD Unix como FreeBSD [9] y/o distribuciones Linux tales
como CentOS [10] y Ubuntu [11], a fin de ejecutar servicios independiente del sistema operativo
que se requiera. Es por esta razn que se requiere una plataforma que permita ejecutar servidores
virtuales con alguno estos sistemas operativos.
32
Dentro de los tipos de virtualizacin analizados en el captulo anterior, se hizo mencin tanto a la
virtualizacin tanto a nivel de sistema operativo como la virtualizacin a nivel de hardware. La
primera es una buena solucin cuando se tiene una plataforma conformada con mquinas que
utilicen sistemas operativos con un mismo ncleo, como lo sera el caso de que se utilizaran
mquinas con distribuciones Linux. La segunda, permite crear mquinas independientes, cada
una con su propio hardware. Este enfoque hace posible la ejecucin de mquinas con sistemas
operativos independientes del sistema operativo base del sistema, por ende, la solucin debe
considerar este tipo de virtualizacin (virtualizacin a nivel de hardware).
Por otra parte, la full-virtualizacin cuenta con el hecho de que no necesita modificar el sistema
operativo del servidor virtual. Esto presenta una ventaja al momento de desarrollar una
plataforma con sistemas operativos distintos. Adicionalmente, el hecho de contar con hardware
que ofrece soporte para virtualizacin (En este caso se cuenta con un procesador Intel modelo
E5310 [12], con tecnologa Intel VT-x [13]), lo cual hace considerar herramientas que contengan
full-virtualizacin como una solucin.
33
Actualmente, la DCSC debe poner a punto los equipos dentro del datacenter o en la oficina de
quien se encuentra a cargo, para luego instalarlos en el datacenter. Una situacin similar sucede
cuando se deben actualizar el sistema operativo o el servicio ejecutado en un servidor, donde
adems de realizar esta operacin, se debe considerar configurar la redundancia del servicio en
caso de que se trate de uno crtico. En resumen, se tornan tareas engorrosas, las cuales requieren
de solucin.
Tal como se present en el punto 3.3 del captulo 2, una de las ventajas de la virtualizacin es la
simplificacin de la administracin de las mquinas virtuales, dado que la mayora de las
herramientas disponibles poseen programas, ya sean con interfaz grfica o mediante lnea de
comando, que hacen ms sencilla las tareas de creacin, monitoreo, modificacin, inicio y
migracin de las distintas mquinas virtuales alojadas en una mquina fsica. De esta manera, es
importante que una futura solucin considere la inclusin de herramientas de virtualizacin que
cuente con este tipo de programas, teniendo en cuenta cuntas de las tareas descritas
anteriormente son posibles de realizar y cun sencilla es la realizacin de estas tareas.
34
Es fundamental que la herramienta de administracin permita el inicio automtico de mquinas
virtuales al iniciar el servidor o mquina fsica, ya que esto disminuye los tiempos en los que las
mquinas virtuales pueden recuperar su funcionalidad.
En resumen, la solucin propuesta debe contar con una herramienta de administracin que
incluya las funcionalidades que permitan realizar las tareas recin descritas, con la posible
excepcin de la migracin de mquina fsica a virtual, para la cual se buscarn alternativas si es
que la herramienta de administracin seleccionada no la considerara.
Una ventaja adicional de la redundancia que se obtiene con la integracin de servidores es que al
contar con una granja (i.e. al menos dos servidores fsicos) la tarea de migrar mquinas virtuales
entre mquinas fsicas, as como las tareas de actualizacin, reparacin, o modificacin de
servicios y servidores fsicos pueden realizarse sin necesidad de detener la operacin de los
servicios.
Ms que una problemtica, lo que busca la DSCS es aprovechar el hecho de que se cuenta con
servidores que poseen hardware compatible con estos fines, de manera de utilizar sus
capacidades de una mejor forma que la actual.
35
3. REQUERIMIENTOS Y RESTRICCIONES.
Descritas las necesidades funcionales por parte de la DCSC, en esta seccin se crear una tabla
resumen con los requerimientos base y las restricciones presupuestarias y de tecnologas que
deben considerarse en la generacin de la solucin final.
1
Corresponde al sistema operativo base que necesita el administrador de mquinas virtuales (VMM) para su
funcionamiento (Ver cap. 2 punto 1.1)
2
Sistemas operativos para las mquinas virtuales (Ver cap.2 punto 1.1)
36
3.3. INTEGRACIN DE HARDWARE.
3.4. RESTRICCIONES.
Adems de los requerimientos recin listados, la DCSC tiene restricciones respecto del
equipamiento de hardware disponible para implementar la virtualizacin as como el presupuesto
a disposicin. Estas restricciones son:
Mxima RAM soportada para el host. Que la herramienta permita trabajar con la mayor
cantidad de RAM posible (de preferencia sobre 32 GB)
Mxima cantidad de ncleos que se pueden asignar a los guest. Que la herramienta
permita asignar la mayor cantidad de ncleos a las mquinas virtuales.
Precio (en el caso de herramientas pagadas). Si bien no existe un presupuesto formal en
este caso, el fin es encontrar una herramienta que ofrezca la mayor cantidad de
funcionalidades al menor costo posible
Precio.
Tabla 3.1: Tabla de requerimientos y restricciones para las herramientas a analizar.
37
4. RESUMEN.
38
5. BIBLIOGRAFA.
[5] Universidad Tcnica Federico Santa Mara [en lnea] <http://www.usm.cl/> [consulta: 02 de
abril de 2011]
[9] The FreeBSD Project [en lnea] <http://www.freebsd.org/> [consulta: 02 de abril de 2011]
39
[13] Virtualization Technologies from Intel [en linea]
<http://www.intel.com/technology/virtualization/> [consulta: 02 de abril de 2011].
40
Captulo 4
1. HERRAMIENTAS.
41
costo que se pague por la licencia, estas herramientas ofrecen funcionalidades adicionales a las
de la versin gratuita.
Adems de este cliente, VMware vSphere ofrece una interfaz web de monitoreo del servidor, el
cul se ejecuta dentro del servidor fsico y se acede via navegador web. Cabe destacar que en
este caso se considerar el cliente remoto, dada las razones expuestas anteriormente.
3
Hecho en base a referencia: http://www.101datasolutions.co.uk/wp-content/uploads/2008/07/vmware-esxi.gif
42
En la figura se distinguen los siguientes componentes:
La tabla 1 resume las funcionalidades de las distintas licencias de VMware vSphere. La tabla se
construy en base a la informacin que la empresa desarrolladora tiene disponible en [6] y [7].
43
Versin Versin Versin Versin Versin
Gratuita Estndar Avanzada Empresarial Empr. Plus
Hardware
Memoria mxima No hay
256 [GB] 256 [GB] 256 [GB] 256 [GB]
para el servidor fsico limite
Ncleos por
6 6 12 6 12
procesador
No hay lmite
Licencia por servidor 1 CPU 1 CPU 1 CPU 1 CPU
fsico
Funcionalidad
Thin Provisioning X X X X X
Update Manager X X X X
Data Recovery X X X X
High Availability X X X X
vMotion X X X X
vStorage APIs for
X X X X
Data Production
Virtual Serial Port
X X X
Concentrator
Hot Add X X X
vSheld Zones X X X
Fault Tolerance X X X
vStorage APIs for
X X
Array Integration
vStorage APIs for
X X
Multipathing
Storage vMotion X X
Distributed Resources
Scheduler (DRS),
X X
Distributed Power
Management (DPM)
Storage I/O Control X
Network I/O Control X
Distributed Switch X
Host Profiles X
Costo de la Licencia Desde 1268 Desde 2717 Desde 3479 Desde 4229
0
(USD) a 1818,65 a 3675,55 a 4708,45 a 5723,70
Tabla 4.1: Detalle de cada una de las distintas versiones de VMware vSphere.
A modo de aclaracin, se considera el valor memoria RAM mxima por servidor a modo de
dimensionar una cantidad mxima de mquinas virtuales a ejecutar dentro del servidor. Por su
parte, el licenciamiento de las versiones de vSphere se considera por CPU fsica, indistinto de la
44
cantidad de ncleos que posea, a diferencia de la versin gratuita, donde la licencia se entrega
por servidor. Finalmente, los valores de licencias estn en el rango desde la de menor precio (con
1 ao de soporte bsico) y la de mayor precio (con 3 aos de soporte en produccin)
Update Manager [9] se encarga de las actualizaciones de software, tanto de los hosts
como de los guests
Data Recovery [10] y vStorage APIs for Data Protection [11], son funcionalidades para
respaldos de informacin
High Availability [12] y Fault Tolerance [13] permiten el monitoreo y deteccin de fallas
en servidores fsicos para ofrecer alta disponibilidad
vMotion [14] y Storage vMotion [15] permiten migracin de mquinas y discos virtuales
mientras estn en funcionamiento
Virtual Serial Port Concentrator para monitoreo de los servidores va puerto serial
Hot Add que da la posibilidad de agregar hardware a las mquinas virtuales mientras
estn en funcionamiento
vStorage APIs for Array Integration [17] y vStorage APIs for Multipathing que mejoran
el rendimiento de los arreglos de discos
45
Distributed Switch [21] y Host Profiles [22] ayudan en la administracin de los
servidores
Adems de las licencias presentadas anteriormente, existe otro tipo de licenciamiento [6], el cual
est orientado a empresas pequeas. La tabla 2 resume estas opciones.
46
Criterio/Versin Gratuita Essential Plus Estndar Empresarial
Sistema Operativo
Propio Propio Propio Propio
Host soportados
Sist. Operativos Guest
soportados
FreeBSD X X X X
Linux X X X X
Windows
X X X X
(XP/Vista/7)
Windows Server
X X X X
(2003, 2008)
Migracin de M.V. sin
No Si Si Si
detener operacin
Migracin de mquina
fsica a mquina Si Si Si Si
virtual (P2V)
SW de monitoreo y vSphere
vSphere Client vSphere Client vSphere Client
gestin Client
Clonacin de M.V. Si (detenida) Si Si Si
Asignacin de recursos
Si (detenida) Si (detenida) Si (detenida) Si
de hardware a M.V.
Mxima RAM del
256 [GB] 256 [GB] 256 [GB] Ilimitado
Host
Depende del Depende del Depende del Depende del
Mxima RAM del
S.O. (32 o 64 S.O. (32 o 64 S.O. (32 o 64 S.O. (32 o 64
Guest
bits) bits) bits) bits)
No hay lmite 64 Procesadores
Ncleos Soportados 2 procesadores 1 procesadores
por servidor de hasta 6
para el Host con 6 ncleos con 6 ncleos
fsico ncleos
Ncleos asignables al
6 6 6 6
Guest
Iniciar M.V. al iniciar
Si Si Si Si
host
Desde 4229 a Desde 1268 a Desde 4229 a
Precio (USD) 0
5723,70 1818,65 5723,70
Tabla 4.3: Anlisis de funcionalidades de VMware vSphere segn requerimientos y restricciones de la DCSC
Para aclarar la tabla 3, en primer lugar que el sistema operativo host sea propio est relacionado
con que no es necesario instalar un sistema operativo base, ya que la herramienta viene sobre uno
(ver inicio del tema), a diferencia de otras herramientas que se vern ms adelante. Por otra
parte, la casilla de mxima RAM asignable al guest depender del sistema operativo que se
utilice, si es uno de 32 bits como mximo se podrn asignar 4 GB de RAM y en el caso de
47
sistemas operativos de 64 bits, la asignacin ser mayor, pero depender del sistema operativo
que instalado.
De la tabla 3 es posible apreciar que todas las opciones, exceptuando a la gratuita, satisfacen lo
requerimientos y restricciones planteados, por lo que representan opciones para la unidad, siendo
la versin estndar y la Essential Plus las que ms se acomodan, dadas las funcionalidades
ofrecidas, que son iguales. La limitante es respecto del costo de licencias, ya que al ser una etapa
de prueba inicial, no se tiene mucha nocin de la cantidad de servidores a involucrar en el
proyecto final, lo cual sera interesante, sobre todo si se considera que la versin Essential Plus y
la estndar tienen diferencias de precio, considerando los servidores y las CPU a utilizar.
Esta herramienta est basada en la herramienta de cdigo abierto Xen [23] (la cual se ver en la
seccin 1.2.1, de herramientas de cdigo abierto). Sus orgenes se remontan al ao 2007, cuando
la empresa Citrix Systems [24] adquiere XenSource, Inc., y comienza el desarrollo de una lnea
de herramientas propietarias, las cuales se han masificado a tal punto que en la actualidad Citrix
XenServer se encuentra posicionada como la tercera herramienta de virtualizacin en el mercado
[4].
Al igual que vSphere, Citrix XenServer consta de un sistema operativo liviano, basado en una
versin de Linux y de un software de monitoreo y gestin, llamado Citrix XenCenter [25]. Este
ltimo al igual que vSphere Client, se instala en un computador remoto, el cual hace las veces de
cliente. Esta herramienta de monitoreo y gestin cumple adems la funcin de realizar la
migracin de mquina fsica a virtual.
En cuanto a arquitectura, esta herramienta posee una estructura igual a la de vSphere, la que se
muestra en la figura 2.
48
MV1 MV2 XenCenter
4
Hecho en base a referencia: http://www.cyberco.net/1/index.php?option=com_content&view=article&id=91:citrix-
xen-server&catid=47:virtualisation&Itemid=75
49
Ver. Ver. Ver. Ver.
Funcionalidad
Gratuita Avanzada Empresarial Platino
XenServer Hypervisor X X X X
IntelliCache X X X X
Resilient distributed management
X X X X
architecture.
VM disk snapshot and revert X X X X
XenCenter management X X X X
Conversion tools X X X X
XenMotion live migration X X X X
Distributed virtual switching X X X
Heterogeneous pools X X X
High availability X X X
Memory optimization X X X
Performance alerting & reporting X X X
Dynamic workload balance X X
Host power management X X
Live memory snapshot and revert X X
Provisioning services (virtual) X X
Role-based administration X X
StorageLink X X
Web self-service with delegated
X X
administration
Automated VM protection and recovery X
Lab manager with self-service portal X
Provisioning services (physical) X
Site recovery X
Costo por servidor (USD) 0.- 1000.- 2500.- 5000.-
Tabla 4.4: Detalle de las distintas versiones de Citrix XenServer
50
De manera anloga a la tabla 3, la tabla 5 muestra qu versiones cumplen con cules de los
requerimientos y restricciones planteados en el Captulo 3.
Se aprecia que todas las versiones de XenServer cumplen con los requerimientos y restricciones
propuestas por la DCSC. De estas versiones, la versin gratuita es la que ms conviene en este
caso, dado que las funcionalidades ofrecidas son suficientes.
5
Distinto a ncleo, ya que este ltimo puede tener ms de un procesador lgico. En la version 5.5 de Citrix
XenServer, se especifican, como mximo 32 un procesador con ncleos
51
1.2. HERRAMIENTAS DE CDIGO ABIERTO.
De la misma forma que se present en el caso de las herramientas propietarias, en esta seccin se
analizarn herramientas de cdigo abierto. Estas herramientas se encuentran disponibles de
manera gratuita, ya sea para utilizarlas en ambientes donde se requiera de herramientas con
buenas funcionalidades y sin la necesidad de invertir en licencias o bien para investigar y
desarrollar nuevas funcionalidades mediante la intervencin directa del cdigo.
Se analizarn 3 herramientas: Xen [23], que es una de las pioneras en el mbito de herramientas
de virtualizacin de cdigo abierto, KVM [28], que es una de las herramientas de virtualizacin
que est tomando ms fuerza y Proxmox Virtual Environment [29], una herramienta reciente que
est basada en KVM y OpenVZ [30]. El ltimo caso es un muy buen ejemplo del desarrollo de
nuevas funcionalidades en el mbito de cdigo abierto.
1.2.1. XEN.
A diferencia de las herramientas propietarias analizadas anteriormente, las cuales slo trabajan
con arquitecturas de procesadores x86 de 64 bits, esta herramienta funciona adems con
arquitecturas de procesadores x86 de 32 bits, Itanium [34] y ARM [35] entre otras.
El sistema operativo base que utiliza Xen puede ser cualquiera de las distribuciones de Linux
descritas en [36]. A diferencia de otras herramientas basadas en Linux (como KVM, que se
describe en la seccin 1.2.2), la instalacin de Xen requiere de un kernel de Linux modificado, el
cual posee la API de paravirtualizacin. La herramienta tambin permite full-virtualizacin.
52
Herramienta de
MV1 MV2 SO Host
administracin
Xen Sistema operativo
Dentro de las funcionalidades ofrecidas por Xen se encuentran: ejecucin en modo full-
virtualizacin o paravirtualizacin, migracin de mquinas virtuales sin detener su operacin y
migracin de mquina fsica a virtual (P2V). En este ltimo caso, si bien existen opciones
formales para realizar esta tarea, como la herramienta virt-p2v [41], estas ya se encuentran
descontinuadas, por lo que se sugiere opciones externas o no oficiales, tales como tomar
imgenes del servidor a virtualizar y montar dicha imagen en una mquina virtual [42].
En [43] se encuentra una lista ms exhaustiva de las funcionalidades ofrecidas por Xen.
6
Hecho en base a referencia: http://thecamels.org/wp-content/uploads/XEN-schema.png
53
Criterio Xen
Sistema operativo host Sistemas operativos Linux
Sist. operativos guest soportados
FreeBSD X
Linux X
Windows (XP/Vista/7) X
Windows Server (2003, 2008) X
Migracin de M.V. mientras est en funcionamiento Si
Migracin de mquina fsica a mquina virtual (P2V) Si
SW de monitoreo y gestin Lnea de comando o aplicacin grfica
Clonacin de M.V. Si (maquina detenida)
Asignacin de recursos de hardware a M.V. Si (detenida)
Mxima RAM host 1 [TB]
Mxima RAM guest Depende del S.O. (32 o 64 bits)
Ncleos soportados host 16
Ncleos asignables al guest 16
Iniciar M.V. al iniciar host Si
Precio (USD) 0
Tabla 4.6: Anlisis de funcionalidades de Xen segn los requerimientos y restricciones de la DCSC.
1.2.2. KVM.
Su primera versin se remonta a febrero de 2007, como parte oficial de la versin 2.6.20 del
ncleo de Linux [46] y hasta la fecha se encuentra en constante desarrollo por una comunidad de
programadores, distribuyndose bajo licencias GPLv2, LGPLv2, LGPL y GPL [33]. Adems, el
hecho de que sea parte oficial del ncleo de Linux, hace que esta sea la herramienta de
virtualizacin oficial de Linux, a diferencia de Xen que, como se vio anteriormente, utiliza una
versin modificada del ncleo de Linux.
KVM est especialmente desarrollada para procesadores con arquitectura x86 que tengan soporte
para instrucciones Intel VT-x [47] y AMD-V [48], pero tambin se han hecho desarrollos para
otras arquitecturas como PowerPC [49], Itanium [34] y ARM [35].
Respecto a los tipos de virtualizacin, al igual que Xen, KVM permite tanto paravirtualizacin
como full-virtualizacin.
54
Herramienta de
MV1 MV2 SO Host
administracin
KVM Sistema operativo
Respecto a los sistemas operativos host y dada la calidad de herramienta oficial del ncleo de
Linux, KVM se puede instalar en cualquier distribucin de Linux.
Las funcionalidades que KVM ofrece son similares a Xen, dentro de las que se destacan:
migracin de mquinas virtuales mientras estn en funcionamiento [50], clonacin de mquinas
virtuales, y otras, que se encuentran ms detalladas en [51]. En lo que respecta a migracin de
mquina fsica a virtual (P2V), al igual que para Xen, se sugiere considerar opciones no oficiales
[42].
7
Hecho en base a referencia: http://southbrain.com/south/virtualization/virtualization-kvm-60.png
55
Criterio Kernel-based Virtual Machine
Sistema operativo host Sistemas operativos Linux
Sist. operativos guest soportados
FreeBSD X
Linux X
Windows (XP/Vista/7) X
Windows Server (2003, 2008) X
Migrar M.V. mientras est en funcionamiento Si
Migracin de mquina fsica a mquina virtual (P2V) Si
SW de monitoreo y gestin Lnea de comando o aplicacin grfica
Clonacin de M.V. Si (maquina detenida)
Asignacin de recursos de hardware a M.V Si (detenida)
Mxima RAM host Depende del S.O.3
Mxima RAM guest Depende del S.O. (32 o 64 bits)
Ncleos soportados host Depende del S.O.8
Ncleos asignables al guest 16
Iniciar M.V. al iniciar host Si
Precio (USD) 0
Tabla 4.6: Anlisis de funcionalidades de KVM segn los requerimientos y restricciones de la DCSC.
Al igual que KVM, Proxmox Virtual Environment est enfocada principalmente a servidores con
procesadores de arquitectura de 64 bits que tengan instrucciones Intel VT-x o AMD-V.
En cuanto al sistema operativo base que utiliza, Proxmox Virtual Environment est desarrollado
en Debian Lenny de 64 bits [54]. Adems esta herramienta permite virtualizacin tanto a nivel
8
Al ser parte del ncleo del sistema operativo, este parmetro depender de las limitaciones de hardware de la
distribucin que se utilice.
56
de sistema operativo con OpenVZ, la cual es til con sistemas operativos Linux y full-
virtualizacin con KVM tanto para sistemas operativos Linux como para otros (Unix-BSD,
Microsoft Windows).
57
Criterio Proxmox Virtual Environment
Sistema operativo host Propio
Sist. operativos guest soportados
FreeBSD X
Linux X
Windows (XP/Vista/7) X
Windows Server (2003, 2008) X
Migrar M.V. mientras est en funcionamiento Si
Migracin de mquina fsica a mquina virtual (P2V) Si
SW de monitoreo y gestin Interfaz web
Clonacin de M.V. Si (maquina detenida)
Asignacin de recursos de hardware a M.V. Si (detenida)
Mxima RAM host 256 [GB]
Mxima RAM guest Depende del S.O. (32 o 64 bits)
Ncleos soportados host 16
Ncleos asignables al guest 16
Iniciar M.V. al iniciar host Si
Precio (USD) 0
Tabla 4.8: Anlisis de Proxmox Virtual Environment segn las especificaciones de la DCSC
2. ANLISIS Y SOLUCIN.
En lo que respecta a las herramientas propietarias, la versin gratuita de VMware vSphere (tabla
3) no cumple con uno de los requerimientos: migracin de mquinas virtuales mientras se
encuentran en ejecucin. En cambio, esta funcionalidad s es ofrecida por la versin gratuita de
Citrix XenServer (tabla 5), lo cual hace considerarla como una opcin. Por su parte, analizando
tanto las funcionalidades como los servicios adicionales de las distintas licencias (tablas 1 y 2 en
vSphere y 4 en XenServer) de VMware vSphere y Citrix Xenserver, ambas consideran soporte
tcnico mnimo de un ao (ver [6] y [7] para VMware y [56] para Citrix XenServer) y en cuanto
a funcionalidades, Citrix XenServer ofrece ms funcionalidades con licencias menos costosas,
adems de entregar licencias por servidor, a diferencia de VMware, quin entrega licencias solo
por CPU.
58
En el caso de las herramientas de cdigo abierto, comparando las tablas 6, 7 y 8 se puede
concluir que todas ofrecen las mismas funcionalidades, lo cual deja abierta la opcin de elegir
cualquiera. Sin embargo, en trminos de permanencia en el mercado, respaldo oficial del sistema
operativo y plataforma de la herramienta de administracin, existen diferencias.
Xen es la herramienta que lleva ms tiempo en el mercado. Sin embargo, no es una herramienta
oficial de virtualizacin en Linux, a diferencia de KVM. Desde este punto de vista, KVM es una
opcin ms segura.
Al comparar KVM con la edicin gratuita de Citrix XenServer, sta ltima requiere renovar
anualmente la licencia gratuita [57], lo cual es un trmite engorroso y algo lento (es necesario
solicitar dicha licencia, la cual demora un tiempo en ser generada). Esto no es necesario con
KVM.
3. RESUMEN.
En el siguiente captulo se realizar un anlisis y proyeccin de los beneficios esperados tras una
implementacin formal de virtualizacin y tambin de los costos que se debern asumir.
59
4. BIBLIOGRAFA.
[1] Free VMware vSphere Hypervisor: Bare Metal Hypervisor (based on VMware ESXi) [en
lnea] <http://www.vmware.com/products/vsphere-hypervisor/> [consulta: 21 de febrero de
2011].
[6] VMware Store - Small and Mid-Size Business Options [en lnea]
<http://www.vmware.com/vmwarestore/vsphere_smbpurchaseoptions.html> [consulta: 21 de
febrero de 2011]
60
[12] VMware High Availability (HA) [en lnea] <http://www.vmware.com/products/high-
availability/> [consulta: 21 de febrero de 2011].
[18] Distributed Resources Scheduler (DRS), Distributed Power Management (DPM) [en lnea]
< http://www.vmware.com/products/drs/> [consulta: 21 de febrero de 2011].
61
[24] Citrix Systems [en lnea] <www.citrix.com> [consulta: 21 de febrero de 2011]
[33] GNU General Public License Wikipedia, the free encyclopedia [en lnea]
<http://en.wikipedia.org/wiki/GNU_General_Public_License> [consulta: 23 de febrero de 2011]
62
[37] Secure Shell - Wikipedia, the free encyclopedia [en lnea]
<http://en.wikipedia.org/wiki/Secure_Shell> [consulta: 23 de febrero de 2011]
[42] P2V Conversion when using KVM. << Axelillys Ponderings [en lnea]
<http://axelilly.wordpress.com/2010/05/11/p2v-conversion-when-using-kvm/> [consulta: 24 de
febrero de 2011].
63
[49] PowerPC Wikipedia, the free enciclopedia [en lnea]
<http://en.wikipedia.org/wiki/PowerPC> [consulta: 25 de febrero de 2011].
64
Captulo 5
Estas interrogantes sern las bases de este captulo. Para responderlas, en este captulo se
analizarn los beneficios y los costos asociados, de manera cuantitativa y se reportarn las
pruebas a la implementacin.
1. BENEFICIOS.
Uno de los beneficios que produce el uso de virtualizacin, mencionado en la seccin 3.2 del
captulo 2, es el ahorro en hardware, ya que en un servidor fsico se pueden ejecutar un nmero
determinado de servidores virtuales. Este hecho derivar en otros ahorros, tales como consumo
de energa elctrica por servidor y consumo en sistemas de climatizacin en la sala de servidores,
tal como se expuso en los captulos 1 y 2.
65
1.1. CANTIDAD DE SERVIDORES VIRTUALES.
Tal como se mencion al principio de este captulo, se desea virtualizar servicios de pginas web
de contenido esttico, LDAP y DNS. Segn estimaciones propias y otras obtenidas de la
literatura [1], la utilizacin promedio de CPU de estos servicios no supera el 20% de la
capacidad de procesadores Intel Pentium 4 de 2 [GHz]. Por lo tanto, la utilizacin del servidor
virtual , CPUv , es de 400 [MHz] como mximo.
El servidor fsico en el que se realizar la virtualizacin posee un procesador Intel Xeon modelo
E5310 [2] de 4 ncleos que funcionan a una velocidad de 1,6 [GHz] cada uno, lo cual entrega
una velocidad de procesamiento total de CPU f.=6,4 [GHz]. Con los valores de CPUf de 6400
[MHz] y de CPUv de 400 [MHz], el servidor fsico permitira hasta 16 servidores virtuales.
En lo que respecta a almacenamiento en disco duro, en este trabajo no se considera una gran
limitante: el servidor 500[GB] en disco duro, lo que es ms que suficiente para atender la
66
demanda de los servidores virtuales (ya que en promedio no utilizarn discos duros virtuales
mayores a 10 [GB], segn lo estimado por la DCSC para estos servicios).
Dado que los servicios que se ejecutarn en los servidores virtuales utilizan el recurso de red, es
tambin necesario considerar las restricciones que impone el nmero de tarjetas de red del
servidor fsico en los servicios a virtualizar. El servidor fsico de la DCSC posee 2 interfaces de
red, cada una operando una velocidad de 1000[Mbps]. Dados los servicios a virtualizar (Web,
DNS y LDAP), se considera que en el peor de los casos, cada servidor virtual genera un trfico
de 300 [kbps] por conexin (segn datos de la DCSC 9), por lo tanto, se podra atender
aproximadamente 6660 conexiones simultaneas (3330 por interfaz de red). Esto implicara que
los 16 servidores virtuales atenderan hasta 415 conexiones simultneas cada uno.
En las estimaciones anteriores no se ha incluido el uso de CPU, RAM y tarjetas de red que
necesita el sistema operativo base y el administrador de mquinas virtuales (VMM). Para los
servicios del caso de estudio de esta memoria, se ha determinado, en base a las observaciones
propias, que el sistema operativo y el VMM tienen un requerimiento promedio de 450 [MHz] de
CPU (aproximadamente el 25% de uno de los ncleos de CPU del servidor fsico). En cuanto a
RAM desde 2 [GB] en RAM es suficiente para cubrir las necesidades del VMM, segn
estimaciones realizadas tras esta implementacin primaria.
9
Tanto esta como otras estimaciones realizadas durante este captulo estn basadas en informacin de monitoreo
obtenida de http://redes2.dcsc.utfsm.cl/mrtg/
67
un computador que genera un consumo mximo de 300 [W] de potencia. Este tipo de servidor se
usa actualmente para alojar el servicio que requieren pocos recursos de hardware, como LDAP,
DNS y webs estticas. El segundo tipo, corresponde a un servidor que genera un consumo
mximo de 750 [W] de potencia y en el que actualmente se aloja el servicio con mayores
requerimientos de hardware, como el servidor de sitios web de alumnos.
Se supone que la Universidad se encuentra en una zona tarifaria de alta tensin, que
corresponde a la tarifa aplicada a empresas e instituciones. El costo del kilowatt hora para
esta zona tarifaria es de $69,281 (pesos chilenos). Los valores se encuentran disponibles
en [3].
Adems del ahorro de consumo energtico directo de los servidores virtualizados, existe un
ahorro debido a la disminucin de carga del sistema de climatizacin, el cual est encargado de
mantener la temperatura a un nivel apropiado para el correcto funcionamiento de los equipos.
10
Considerando un mes de 30 das.
68
En cuanto al ahorro monetario, al solo cambiar las unidades (de [kWh] a [BTU/h]), se debe notar
que es el mismo que el expuesto anteriormente, por lo que los ahorros mensuales en esta materia
son del orden de los $15.000 (30 [USD]) para el computador de 300 [W] y de $37.000 (77
[USD]) para el servidor de 750 [W].
Para estimar el nivel de degradacin del servicio que prestara un servidor virtual, comparado
con el mismo servicio alojado en un servidor fsico, en este trabajo de ttulo se disearon una
serie de pruebas de rendimiento. Estas pruebas se realizaron para los tres servicios a virtualizar:
servicios web de contenido esttico, DNS y LDAP.
Firewall
Cliente: Computador personal Compaq Presario modelo F505LA, desde donde el cliente
solicita la prestacin del servicio de red. Las especificaciones de hardware y sistema
operativo de este computador se encuentran en la columna derecha de la Tabla 1.
69
Firewall: Es el componente que separa la red oficina de la red servidores, por razones de
seguridad.
Red servidores: Es la red donde se encuentran los servidores que administra la DCSC.
Esta red es distinta a la red oficina.
Servidor fsico: Dell PowerEdge 2950 [6], con las especificaciones de hardware y sistema
operativo que se listan en la segunda columna de la Tabla 1. La herramienta de
virtualizacin instalada fue KVM, la cual se instal sobre el sistema operativo Ubuntu
Server 10.10 [7]. Cada uno de los 3 servidores virtuales instalado en el servidor fsico
utiliz el sistema operativo FreeBSD 8.1.
Note que la configuracin de prueba no involucr el paso de datos por la red externa. Todas las
transferencias se efectuaron entre servidores/computadores dentro de la Universidad.
Apache es un software de cdigo abierto, distribuido bajo licencia Apache License [12]. Se
encuentra disponible para plataformas BSD, Linux, MacOS y Windows. Dentro de sus ventajas
destaca las de ser un servidor modular compuesto por un mdulo central y otros mdulos, que
agregan funcionalidades adicionales, tales como soporte para otros lenguajes de programacin
70
(Perl, PHP, Python) y control de acceso. Ms detalles de las funcionalidades adicionales se
encuentran en [13].
Los valores de conexiones simultneas como totales, se han seleccionado para lograr un mximo
de estrs, tanto en los servidores fsicos como en los virtuales.
Conexiones totales
500 1000 1500 2000 2500
Conexiones 50 E1 E3 E5 E7 E9
simultneas 100 E2 E4 E6 E8 E10
Tabla 5.2: Resumen de las pruebas con Apache Benchmark.
Cabe destacar que en promedio estas pruebas duran entre 3 y 5 segundos, dependiendo la
cantidad de conexiones totales
Para medir el rendimiento del servicio web virtualizado, se midieron sus tiempos de respuesta.
En el establecimiento y operacin de una conexin HTTP, Apache Becnhmark distingue 4
tiempos: el tiempo de conexin o ctime, el tiempo de espera o wait, el tiempo de transaccin o
dtime y el tiempo total o ttime.
71
Cliente Servidor
ctime
ttime ttime Bsqueda por
parte del
cliente
ctime wait dtime wait
tiempo [ms]
dtime
Transferencia
del sitio web
Figura 5.2: Ilustracin de los tiempos involucrados en una transaccin HTTP de Apache Benchmark.
La figura 2 ilustra los instantes de inicio y trmino de cada uno de estos tiempos. El tiempo de
conexin o ctime es el tiempo que transcurre desde que el cliente enva la solicitud de conexin
al servidor hasta que la conexin se establece. El tiempo de espera o wait, corresponde al instante
desde que se establece la conexin hasta que el servidor inicia la transferencia de datos al cliente.
El tiempo de transaccin o dtime, es el que transcurre desde que se inicia la transferencia de
datos, hasta que se cierra la conexin con el servidor. Finalmente el tiempo total o ttime es la
suma del tiempo de conexin y el tiempo de transaccin.
A continuacin se presenta un grfico que resume los tiempos totales (ttime) obtenidos durante
esta evaluacin, tanto para el caso en que el servicio residen directamente en un servidor fsico
(terminados en fis en la grfica), como para el caso en que el servicio ha sido virtualizado
(terminados en vir en la grfica). Los grficios con los todos los tiempos (ctime, ditme, ttime y
wait), correspondientes a los resultados obtenidos para cada escenario se presentan en la seccin
1 de A.1 en Anexos.
72
Figura 5.3: Grficas de los escenarios obtenidas con Apache Benchmark.
73
Es posible apreciar que, como era de esperar, los tiempos totales correspondientes a los casos
donde el servicio se ejecuta en servidores virtuales (EX_vir), son mayores a los tiempos totales
de los casos donde el servicio se ejecuta en servidores fsicos (EX_fis).
La tabla 3 presenta el valor promedio de ttime y el valor del tiempo total para cada escenario.
Cabe destacar que los escenarios han sido ordenados segn el nmero de conexiones simultneas
por conexin, con esto, los escenarios impares corresponden a 50 conexiones simultneas y los
pares a 100 conexiones simultneas.
Es posible apreciar en la tabla que las razones de tiempo promedio y de tiempo total en los
distintos escenarios difieren en su comportamiento. En el caso de los escenarios impares (50
conexiones simultneas), si bien en los tiempos promedios de atencin existe una tendencia a
aumentar la razn de diferencia, en el caso total se da un efecto de alcanzar un valor mximo
(E5) y luego disminuir. Esto se debe a, a medida que existen ms solicitudes totales, la mayor
cantidad de estas se atienden dentro del tiempo promedio, lo cual se puede apreciar al observar
que la curva se mantiene ms plana en el centro de la grfica, a medida que se aumentan las
solicitudes totales. Esto provoca que las solicitudes que se atienden al final sean menos, lo cual
se puede apreciar al ver que la curva se ve ms pronunciada al final, a medida que hay mayor
cantidad de solicitudes totales.
74
El caso de los escenarios pares es diferente, ya que en los tiempos promedio se alcanza un valor
mnimo (E4), para luego ir aumentando, a diferencia de los tiempos totales, donde la tendencia es
claramente a disminuir. Sin embargo, se puede ver grficamente, que se observa el mismo
comportamiento descrito para los escenarios impares, ya que al aumentar las solicitudes totales,
se atiende una mayor cantidad cerca del centro y al final el nmero de solicitudes es menor.
Para concluir con el anlisis de web, se puede decir que existe una diferencia notoria, la cual
pude llegar a ser el doble de tiempo en el caso de una solicitud promedio, lo cual invita a pensar
muy bien el tipo de sitios web a alojar en un servidor virtual.
En este caso especfico, los sitios que se pretenden alojar en los servidores virtuales, son sitios
que no tienen una gran cantidad de trfico diario (entre 500 y 1000 solicitudes diarias, segn
estimaciones propias). Este hecho nos deja cercanos a los parmetros de los escenarios 1 y 3, los
cual podran suceder en el peor de los casos (tener todas esas conexiones en un instante de
tiempo). Con esto se asegura que en el peor de los casos se tendr una razn de diferencia
promedio de 1,84 veces, es decir, el tiempo de respuesta del servidor virtual ser un 84% mayor
que el servidor fsico.
Finalmente es necesario considerar que estas pruebas han sido realizadas internamente, es decir,
con una red con pocos saltos (hop) y sin transferencia de datos hacia/desde la red externa. La
influencia de la red externa debiera apreciarse en conexiones desde el hogar, y considerando que
pueden existir entre 6 y 15 saltos11, los cuales pueden agregar entre 15 y 30 [ms] de retardo en la
respuesta. Esta adicin har que los tiempos promedio, en el caso de los escenarios 1 y 3, tiendan
a valores de tiempo total obtenidos en el escenario 9. Pese a esto la razn en el peor caso se hace
11
Esta informacin puede obtenerse mediante la ejecucin del comando traceroute en sistemas operativos
Linux/Unix y con el comando tracert en Windows.
75
cercana entre 1,86, lo cual aumenta en un 2% la diferencia obtenida en el caso de acceder de
manera local.
2.2. DNS.
La aplicacin servidora utilizada ser BIND DNS [15], la que por su uso extendido (sobre todo
en sistemas operativos Unix) cuenta con una amplia documentacin y soporte.
Namebench se ejecut sobre el sistema operativo Windows XP, pero con el mismo laptop de la
figura 1. Cada prueba dura entre 3 y 5 segundos, dependiendo de la cantidad de solicitudes
totales.
Los escenarios para esta prueba son los que se presentan en la tabla 4.
Los valores de carga seleccionados se han estimado considerando las estadsticas de uso del
servicio de DNS por parte de la DCSC.
76
Figura 5.4: Grficas de los escenarios obtenidas con NameBench.
77
En el grfico se aprecian los resultados obtenidos en el caso del servidor fsico (escenarios
terminados en fis) y de los obtenidos en el caso del servidor virtual (terminados en vir).
De los grficos se puede inferir que existe una demora en los tiempos de respuesta de las
consultas en el caso del servidor virtual, comparado con el servidor fsico, aunque al parecer esta
diferencia se hace menos notoria a medida que se aumentan las respuestas.
Otro hecho interesante es que, a medida que se aumentan el nmero de consultas totales,
aumenta la cantidad de respuestas que son atendidas antes de los 200 [ms]. Una causa de este
comportamiento puede ser que, considerando que existe una cantidad determinada de URLs en
el historial de navegacin del navegador de internet del cliente, a mayor cantidad de consultas
totales, existe una mayor probabilidad de que consultas a una URL se repita. Dado que el
servidor DNS tiene cach (es decir, se guardan un registro de consultas, a fin de obtener una
respuesta ms rpida), los tiempos de respuesta a las consultas repetidas son menores. Otra causa
puede ser que dos o ms de las consultas pueden ir a un mismo dominio. Un ejemplo de ello
sera el de una consulta a la URL www.ejemplo.com y otra a eventos.ejemplo.com. Dado que
ambas URL pertenecen al domino ejemplo.com y que el servidor DNS posee cach, la obtencin
de una respuesta, tanto para www.ejemplo.com como para eventos.ejemplo.com ser ms rpida,
ya que el servidor DNS ya tiene informacin de la perteneca de ambas URLs al mismo dominio
(ejemplo.com).
La Tabla 5 muestra los resultados de los tiempos totales (hasta que se atiende la ltima solicitud)
y de los tiempos promedios de respuesta, tanto para el caso del servidor fsico como del servidor
virtual.
78
Tiempo
Tiempo Tiempo Tiempo Razn de
Razn de Total
Escenario Promedio Promedio Total diferencia
Diferencia Virtual
Fsico (ms) Virtual (ms) Fsico (ms) (ms)
(ms)
E1 349,091 379,893 1,088 1795,451 1839,769 1,024
E2 304,729 315,391 1,034 1838,216 2023,525 1,101
E3 258,973 264,68 1,022 2244,692 2503,087 1,115
E4 213,823 219,528 1,026 2429,784 2695,024 1,109
E5 185,568 190,132 1,024 2705,03 3110,825 1,15
Tabla 5.5: Tiempos promedio y total para cada escenario
Si bien se cumplen las diferencias entre los valores de tiempo obtenidos entre el servidor virtual
y el servidor fsico, se observa que la diferencia promedio tiende a disminuir y que la diferencia
total tiende a aumentar y la explicacin est en lo mencionado anteriormente, es decir que
dependiendo de la URL, especficamente si es una ya previamente visitada, la diferencia entre
los tiempos de respuesta ser menor que en el caso de una que no sea muy visitada.
Segn datos de la DCSC, en la prctica DNS tiene cerca de 1000 consultas por minuto en
promedio, lo cual es cercano a lo que sucede en los escenario 2, donde la razn es de 1,034 en
promedio y de 1,1 para la ltima consulta. Es por esto que, la diferencia entre el tiempo de una
consulta a un servidor virtual, comparada con la respuesta de un servidor fsico puede llegar a ser
de un 3,4% mayor en promedio y de un 10% para la ltima consulta.
Cabe mencionar que los valores en un escenario ms real no diferiran en gran manera, ya que se
debe considerar que este servicio se utiliza dentro de la universidad. Se hace esta salvedad, dada
la proyeccin de diferencia entre los tiempos de respuesta entre un servidor virtual y un servidor
fsico hecha para el caso de web, ya que en este caso no debera variar demasiado, haciendo que
en el peor de los casos sea cercano a un 10% mayor, en el caso del servidor virtual.
2.3. LDAP
El ltimo de los servicios analizados fue LDAP. Este servicio se ejecut con el software
OpenLDAP [18], desarrollado por The OpenLDAPProject. OpenLDAP es una de las
aplicaciones servidoras ms utilizadas al momento de implementar este servicio y se encuentra
disponible para mltiples sistemas operativos, tales como Unix-BSD, Mac OS, Linux y
Windows. OpenLDAP se distribuye bajo su propia licencia, OpenLDAP Public License [19].
79
Debido a que las herramientas disponibles para evaluacin de rendimiento de LDAP no
contaban con una documentacin precisa [20], en este trabajo de ttulo se desarroll una
herramienta ad-hoc para realizar esta tarea. Dicha herramienta se desarroll en lenguaje Bash
[21], dada la facilidad con la que se pueden manejar las rdenes hechas por lnea de comando,
como por ejemplo, las consultas al servidor LDAP.
Otra similitud con el caso de Apache es el sistema operativo que se utiliz para las pruebas en el
cliente, el cual ser la distribucin de Linux ArchLinux.
Conexiones totales
500 1000 1500 2000 2500
Conexiones 10 E1 E3 E5 E7 E9
simultneas 25 E2 E4 E6 E8 E10
Tabla 5.6: Escenarios de prueba para LDAP.
80
Figura 5.5: Grficas de los escenarios impares obtenidas con el script.
81
Figura 5.6: Grficas de los escenarios pares obtenidas con el script
82
A simple vista, se observa que se cumple que el servicio ejecutado en servidor virtual demora
ms tiempo que en el caso del servidor fsico, aunque en el ltimo escenario esta tendencia no es
tan marcada como en los otros escenarios, esto puede ser debido al nivel de trfico en la red al
momento de realizar las pruebas en el caso del servidor fsico, comparado con el nivel existente
en el caso del servidor virtual.
Respecto a los datos de los tiempos, tanto promedio como tiempo total, los valores obtenidos se
muestran en la tabla 7, a fin de hacer un anlisis ms cuantitativo. Al igual que para el caso de
Apache, se han dividido el anlisis de los escenarios considerando el nmero de conexiones
simultneas que se ejecutan.
Analizando los valores de los tiempos obtenidos, se aprecia que se cumple una tendencia, la cual
muestra que los valores de los tiempos si bien disminuyen entre los primeros escenarios (E1 con
E3, en el caso de 10 y E2 con E4 en el caso de 25) los valores aumentan, salvo lo que ocurre con
el escenario 10, donde la diferencia de los tiempos promedio y total se hace es menor, haciendo
que esta tendencia no se cumpla para el caso de 25 consultas simultneas.
Segn las estimaciones de uso por parte de la DCSC, el servicio LDAP tiene una utilizacin de
2000 usuarios por cada 12 horas, lo cual encaja con los escenarios 7 y 8, los cuales tienen en
promedio una razn de diferencia de entre 1,125 y de 1,163 veces y de entre un 1,223 y 1,163 en
el peor de los casos, haciendo que el tiempo de respuesta en el caso virtual sea cercano a un de
entre un 12% (promedio) a un 22% (peor caso) mayor.
83
Considerando una consulta externa, se considera el mismo retardo considerado en el anlisis de
Web, (entre 15 y 30 [ms]), lo cual no influye mucho en el tiempo de respuesta promedio
obtenido en los escenarios 7 y 8, por lo que la diferencia promedio no debera variar en gran
manera, pudiendo llegar a ser hasta un 22% mayor en el caso del servidor virtual
3. RESUMEN.
Los resultados obtenidos mostraron que si bien existen diferencias, estas son mayores en el caso
de web, donde se reportan diferencias de entre un 60% y un 80% de aumento en los tiempos de
repuesta. En el caso de los servicios de DNS y LDAP son menores, llegando a ser del orden de
un 10% en el caso de DNS y de un 20% en el caso de LDAP.
84
4. BIBLIOGRAFA.
[1] [26] ALBITZ, Paul y LIU, Cricket. DNS and BIND. 5ta Ed. 1005 Gravenstein Highway
North, Sebastopol, CA 95472, Estados Unidos, OReilly & Associates, 2006.
[4] British termal unit Wikipedia, the free encyclopedia [en lnea]
<http://en.wikipedia.org/wiki/British_thermal_unit> [consulta: 16 de marzo de 2011].
[10] The Apache HTTP Server Project [en lnea] <http://httpd.apache.org/> [consulta: 20 de
marzo de 2011]
85
[12] Licenses - Apache [en lnea] <http://www.apache.org/licenses/> [consulta: 20 de marzo de
2011].
[16] Namebench Open-source DNS Benchmark Utility Google Project Hosting [en lnea]
<http://code.google.com/p/namebench/> [consulta: 23 de marzo de 2011].
[17] Uniform Resource Locator Wikipedia, the free enciclopedia [en lnea]
<http://en.wikipedia.org/wiki/URL> [consulta: 23 de marzo de 2011].
[21] Bash (Unix shell) - Wikipedia, the free enciclopedia [en lnea]
<http://en.wikipedia.org/wiki/Bash_%28Unix_shell%29> [consulta: 25 de marzo de 2011].
86
Captulo 6
1. CONCLUSIONES
En este trabajo de ttulo se logr una implementacin primaria de virtualizacin dentro de la
Direccin Central de Servicios Computacionales (DCSC). Esta implementacin result en un
servidor de pruebas, actualmente operativo y que se encuentra ejecutando la herramienta de
cdigo abierto KVM. En dicho servidor se realizaron las pruebas con los servicios de Web, DNS
y LDAP. Este conjunto de servicios virtualizados permiti satisfacer todas las necesidades
planteadas por la entidad. Actualmente, en el servidor se han realizado implementaciones
definitivas de algunos servicios, los cuales se ejecutan dentro de mquinas virtuales con sistemas
operativos Linux (CentOS), Windows (Server 2003) y FreeBSD. Ejemplo de esto, es el caso de
cPanel12, una herramienta de administracin de sitios web, adems de servidores de archivo para
otras unidades dentro de la universidad y servidores de prueba para desarrollo de aplicaciones.
En total, se contabilizan hasta este instante, 6 mquinas virtuales en ejecucin en el mismo
servidor fsico utilizado en las pruebas.
87
datacenter, ya sea de servidor o de computador. Depender de las unidades que realmente se
logren retirar, la cuantificacin total de dichos ahorros.
Los resultados obtenidos en trminos de beneficios y desventajas permitieron apreciar que para
muchos servicios, las desventajas en trminos de retardo no son significativas, mientras que los
ahorros econmicos pueden ser importantes. Esta tendencia parece ser la dominante en las
empresas hoy en da, lo cual se refleja en el hecho que virtualizacin de servicios se est
masificando en el mercado de las tecnologas de informacin y comunicaciones.
2. TRABAJO FUTURO.
Dentro de las extensiones que pueden abordarse a partir de este trabajo, se pueden destacar las
siguientes:
13
Como en este caso de estudio: http://www.excellencegateway.org.uk/page.aspx?o=239359
88
servicios, considerando una plataforma con un mayor nmero de mquinas fsicas y
virtuales en ejecucin.
89
Anexos
1. WEB.
90
Figura A.2: Datos evaluacin web, escenario 2
91
Figura A.4: Datos evaluacin web, escenario 4.
92
Figura A.6: Datos evaluacin web, escenario 6
93
Figura A.8: Datos evaluacin web, escenario 8
94
Figura A.10: Datos evaluacin web, escenario 10
95
2. DNS
96
Figura A.13: Datos evaluacin DNS, escenario 3
97
Figura A.15: Datos evaluacin DNS, escenario 5
98
3. LDAP.
99
Figura A.18: Datos evaluacin LDAP, escenario 3
100
Figura A.20: Datos evaluacin LDAP, escenario 5
101
Figura A.22: Datos evaluacin LDAP, escenario 7
102
Figura A.24: Datos evaluacin LDAP, escenario 9
103
A2: Cdigos de programas para mediciones
Se incluyen los cdigos desarrollados para las pruebas, los cuales estn escritos en lenguaje
Bash.
1. WEB
#!/bin/bash
for i in {1..5}
do
for j in {1..2}
do
l=$(($i*500))
m=$(($j*50))
#Se muestra el comando a ejecutar
echo "ab -n $l -c $m -g n$l""_c$m http://200.1.30.230 > n$l""_c$m"".txt
#Ejecucin del comando ab (apache benchmark)
ab -n $l -c $m -g n$l""_c$m http://200.1.30.230/ > n$l""_c$m"".txt
#Pausa entre mediciones
sleep 30
done
done
2. DNS
Recordar que para en este caso se utiliz el software Namebench (ver seccin 1.3.2 del captulo
5).
3. LDAP
3.1. ldap_test.sh
#!/bin/bash
#$1=consultas totals / $2=consultas totales agrupadas (ie 500 en grupos de 10 = 50) /
$3=cantidad de consultas totales (10 25)
i=$2
for j in {1..i}
do
#se llama al script que hace las consultas de grupo
time ./ldap_test_2.sh $1 $3>> data_$1/ldap_time_$j.txt
done
104
3.2. ldap_test_2.sh
#!/bin/bash
#$1=consultas totals / $2= cantidad de consultas totales (10 25)
k=$(($2-1))
for l in {1..k}
do
# se arma el comando con las consultas en paralelo
command=$commandldapsearch -H ldap://200.1.30.230 -x -D
\"cn=alara,dc=example,dc=com\" -b \"dc=example,dc=com\" -w 123456 \"cn=Alejandro
Lara\" cn >> data_$1/file$k &
done
# se agrega el la ltima linea al comando (sin & al final)
command=$commandldapsearch -H ldap://200.1.30.230 -x -D
\"cn=alara,dc=example,dc=com\" -b \"dc=example,dc=com\" -w 123456 \"cn=Alejandro
Lara\" cn >> data_$1/file$2
$command
105