Sei sulla pagina 1di 105

UNIVERSIDAD TCNICA FEDERICO SANTA MARA

DEPARTAMENTO DE ELECTRNICA
VALPARASO CHILE

ESTUDIO E IMPLEMENTACIN DE LA TCNICA


DE VIRTUALIZACIN EN LA DIRECCIN
CENTRAL DE SERVICIOS COMPUTACIONALES,
UTFSM

ALEJANDRO ESTEBAN LARA MOLINA

MEMORIA DE TITULACIN PARA OPTAR AL TTULO DE


INGENIERO CIVIL TELEMTICO

PROFESOR GUA: DRA. ALEJANDRA BEGHELLI Z.


PROFESOR CORREFERENTE MSC. MARCELO MARABOLI R.

MAYO 2011
Al Padre, su Hijo y su Espritu,
por estar siempre junto a m.

A mis padres y hermana,


por las oraciones, el apoyo y los sacrificios que hoy tienen respuesta.

A mis abuelas, ti@s, prim@s e hij@s,


por el apoyo, las preocupaciones y las fuerzas.

A los profesores que guiaron este trabajo,


por las oportunidades, sus consejos y el apoyo bridado en este ltimo tramo.

A Telemtica y a todos quienes la conforman,


por su acogida y por permitir mi pleno desarrollo.

2
RESUMEN

Durante la dcada recin pasada, la virtualizacin se ha transformado en una de las tcnicas ms


utilizadas en grandes instituciones que necesitan ofrecer servicios informticos de distinta ndole.
Sin duda esta tendencia se mantendr durante los aos venideros.

La virtualizacin permite la ejecucin de distintas mquinas virtuales (cada una a cargo de un


servicio distinto) en una misma mquina fsica. Esto conlleva ventajas significativas en trminos
de ahorros de hardware, disminucin en el consumo de electricidad y eficiencia en la
administracin tanto de las mquinas virtuales como de los recursos de hardware reales
existentes. La principal desventaja consiste en el aumento del tiempo de respuesta de los
servicios virtualizados. Sin embargo, el beneficio de implementar virtualizacin parece
compensar con creces la desventaja asociada, dada la adopcin masiva de la virtualizacin por
parte de diversas instituciones.

En la actualidad el mercado ofrece varias herramientas que permiten implementar virtualizacin.


Entre ellas se distinguen herramientas propietarias y de cdigo fuente abierto. En ambos casos, la
mayora de las herramientas permite explotar las principales ventajas de esta tcnica. La
seleccin de la mejor alternativa estar determinada por los requerimientos y restricciones que
plantee el usuario para los servicios virtualizados.

En esta memoria se presenta una descripcin de la tcnica de virtualizacin as como un estudio


comparativo de las principales herramientas de virtualizacin disponibles en el mercado
(propietarias y de cdigo abierto). Posteriormente, se presenta un caso de estudio que analiza la
factibilidad tcnica de implementar la tcnica de virtualizacin para 3 servicios de la Direccin
Central de Servicios Computacionales (DCSC) de la Universidad Tcnica Federico Santa Mara.
Este anlisis considera los requerimientos y restricciones de la DCSC y los beneficios que se
esperan obtener tras una implementacin formal. Adems de esto se reporta una implementacin
primaria de virtualizacin, la cual consta de una serie de pruebas a los servicios de Web, DNS y
LDA. Finalmente, la memoria finaliza con las conclusiones obtenidas a partir del trabajo
realizado y con la propuesta de algunos trabajos futuros en esta misma lnea.

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

1. ASPECTOS DE LA TCNICA DE VIRTUALIZACIN. ................................................. 16


1.1. DEFINICIN. ................................................................................................................ 16
1.2. HISTORIA. .................................................................................................................... 17
2. TIPOS DE VIRTUALIZACIN. ......................................................................................... 18
2.1. VIRTUALIZACIN A NIVEL DE SISTEMA OPERATIVO. .................................... 18
2.2. VIRTUALIZACIN A NIVEL DE HARDWARE....................................................... 19
2.2.1. FULL-VIRTUALIZACIN. .................................................................................. 20
2.2.2. PARAVIRTUALIZACIN. ................................................................................... 21
3. VENTAJAS DE LA VIRTUALIZACIN. .......................................................................... 21
3.1. CONSOLIDACIN DE SEVIDORES. ......................................................................... 22
3.2. AHORROS ..................................................................................................................... 22
3.3. ADMINISTRACIN ..................................................................................................... 23
3.4. INTEGRACIN DE HARDWARE. ............................................................................. 24
3.5. TECNOLOGA VERDE. ............................................................................................... 25
4. DESVENTAJAS DE LA VIRTUALIZACIN. .................................................................. 25
4.1. DEGRADACIN DE SERVICIOS............................................................................... 26
5. RESUMEN. .......................................................................................................................... 26
6. BIBLIOGRAFA. ................................................................................................................. 27

5
Captulo 3

ANLISIS DENTRO DE LA DIRECCIN CENTRAL DE SERVICIOS


COMPUTACIONALES (DCSC) ................................................................................................. 31

1. CONTEXTO ACTUAL DE LA DCSC. ............................................................................... 31


2. OBJETIVOS TRAS LA IMPLEMENTACIN DE VIRTUALIZACIN. ........................ 32
2.1. EJECUCCIN DE DIVERSOS SISTEMAS OPERATIVOS DENTRO DE UNA
MISMA MQUINA. ................................................................................................................ 32
2.2. ADMINISTRACIN DE SERVIDORES. .................................................................... 33
2.3. INTEGRACIN DE HARDWARE. ............................................................................. 35
3. REQUERIMIENTOS Y RESTRICCIONES. ....................................................................... 36
3.1. EJECUCIN DE DIVERSOS SISTEMAS OPERATIVOS DENTRO DE UNA
MISMA MQUINA. ................................................................................................................ 36
3.2. ADMINISTRACIN DE SERVIDORES. .................................................................... 36
3.3. INTEGRACIN DE HARDWARE. ............................................................................. 37
3.4. RESTRICCIONES. ........................................................................................................ 37
4. RESUMEN. .......................................................................................................................... 38
5. BIBLIOGRAFA. ................................................................................................................. 39

Captulo 4

ANLISIS DE HERRAMIENTAS DE VIRTUALIZACIN .................................................... 41

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

IMPLEMENTACIN Y ANLISIS DE LA SOLUCIN.......................................................... 65

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

CONCLUSIONES Y TRABAJO FUTURO ................................................................................ 87

1. CONCLUSIONES ................................................................................................................ 87
2. TRABAJO FUTURO............................................................................................................ 88

Anexos

A1: Grficos detallados de las pruebas realizadas. ....................................................................... 90


1. WEB. ..................................................................................................................................... 90
2. DNS....................................................................................................................................... 96
3. LDAP. ................................................................................................................................... 99
A2: Cdigos de programas para mediciones .............................................................................. 104
1. WEB .................................................................................................................................... 104
3. LDAP .................................................................................................................................. 104
3.1. ldap_test.sh ................................................................................................................... 104
3.2. ldap_test_2.sh ............................................................................................................... 105

7
ndice de figuras

Figura 2.1: Esquema de virtualizacin a nivel de sistema operativo ............................................ 19


Figura 2.2: Esquema de full-virtualizacin ................................................................................... 20
Figura 2.3: Esquema de paravirtualizacin ................................................................................... 21
Figura 4.1: Arquitectura de funcionamiento de VMware vSphere ............................................... 42
Figura 4.2: Arquitectura de funcionamiento de Citrix XenServer. ............................................... 49
Figura 4.3: Arquitectura de Xen ................................................................................................... 53
Figura 4.4: Arquitectura de KVM. ................................................................................................ 55
Figura 4.5: Arquitectura de Proxmox Virtual Environment. ........................................................ 57
Figura 5.1: Configuracin de red y dispositivos utilizados para las pruebas. ............................... 69
Figura 5.2: Ilustracin de los tiempos involucrados en una transaccin HTTP de Apache
Benchmark. ................................................................................................................................... 72
Figura 5.3: Grficas de los escenarios obtenidas con Apache Benchmark. .................................. 73
Figura 5.4: Grficas de los escenarios obtenidas con NameBench. ............................................. 77
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
Figura A.1: Datos evaluacin web, escenario 1 ............................................................................ 90
Figura A.2: Datos evaluacin web, escenario 2 ............................................................................ 91
Figura A.3: Datos evaluacin web, escenario 3. ........................................................................... 91
Figura A.4: Datos evaluacin web, escenario 4. ........................................................................... 92
Figura A.5: Datos evaluacin web, escenario 5 ............................................................................ 92
Figura A.6: Datos evaluacin web, escenario 6 ............................................................................ 93
Figura A.7: Datos evaluacin web, escenario 7 ............................................................................ 93
Figura A.8: Datos evaluacin web, escenario 8 ............................................................................ 94
Figura A.9: Datos evaluacin web, escenario 9 ............................................................................ 94
Figura A.10: Datos evaluacin web, escenario 10 ........................................................................ 95
Figura A.11: Datos evaluacin DNS, escenario 1 ........................................................................ 96
Figura A.12: Datos evaluacin DNS, escenario 2 ........................................................................ 96
Figura A.13: Datos evaluacin DNS, escenario 3 ........................................................................ 97
Figura A.14: Datos evaluacin DNS, escenario 4 ........................................................................ 97

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.

Entre los problemas ms comnmente observados destacan los siguientes:

La necesidad de ejecutar diversos sistemas operativos (Windows, Solaris, Unix, Linux,


etc.) requiere de servidores dedicados por cada sistema operativo. Esto implica costos en
la adquisicin de servidores, ya que cada plataforma debe tener su o sus propios
servidores dedicados. Adicionalmente, para plataformas que no son de cdigo abierto, se
requiere la adquisicin de licencias, lo que impacta el manejo del presupuesto.

La subutilizacin de los recursos de hardware, en el caso de servidores dedicados. Como


ejemplo, un servidor que ejecuta el servicio de Domain Name System o DNS [1]
mediante la aplicacin BIND DNS [2], no tendr una utilizacin de CPU mayor al 15%
[3].

Ante la inexistencia de una herramienta de software que administre centralizadamente los


recursos, la administracin y mantencin de estos servidores puede volverse
problemtica. Por ejemplo, el retiro de servidores para mantencin o actualizacin de
software o hardware, requiere la activacin de un servidor de respaldo al que se deben
migrar los servicios ofrecidos por el servidor original, de manera transparente al usuario.

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.

Entre los beneficios reportados de la tcnica de virtualizacin [7], destacan el ahorro de


mquinas fsicas, estimado en una razn de hasta 20:1 [8], la reduccin en consumo elctrico, el
que se estima cercano a los 7000 [kW/h] anuales por servidor virtualizado, y la mejora en los
porcentajes de utilizacin de servidores (de un rango de 5-15% a 60-80%).

La principal desventaja de la tcnica de virtualizacin consiste en la poca tolerancia a fallas, ya


que si falla la plataforma fsica, fallan tambin todas mquinas virtuales que se ejecutan sobre
ella. Otra desventaja que presenta la virtualizacin es la degradacin de servicio, ya que si un
servidor tiene muchas mquinas virtuales, estas deben compartir los recursos fsicos del servidor
host, lo cual introduce retardos en las respuestas de las mquinas virtuales.

Dados los beneficios y desventajas de la tcnica de virtualizacin, antes de implementarla en


cualquier institucin es necesario un anlisis previo de requerimientos ya que no todos los
servicios se benefician de su puesta en marcha. Por ejemplo, una aplicacin masiva como un
sitio web que tiene un alto nmero de visitas, no se ejecutara dentro de una mquina virtual,
dadas las limitaciones en tiempos de respuesta.

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:

Anlisis de la necesidad de implementar virtualizacin dentro de la institucin. Esta etapa


incluir un anlisis de los servicios requeridos por la institucin y sus requerimientos de
hardware.

Anlisis y estudio de las diversas herramientas de virtualizacin disponibles en la


actualidad, tomando en cuenta lo que cada una de ellas ofrece en comparacin a los
requerimientos anteriormente sealados,

Implementacin primaria de la herramienta seleccionada, a fin de estudiar su


comportamiento

Evaluacin de desempeo de la implementacin, en cuanto a beneficios y a prdidas o


costos que podran repostarse tras una implementacin definitiva.

El resto de esta memoria se ordena de la siguiente forma:

El captulo 2 abordar el tema de virtualizacin, con su definicin y evolucin histrica. Adems


se presentarn de los tipos de virtualizacin existentes, finalizando con sus ventajas y
desventajas.

Por su parte, en el captulo 3 se analizar la situacin dentro de la Direccin Central de Servicios


Computacionales, desde donde se obtendrn los requerimientos base para la bsqueda de una
solucin.

En el captulo 4 se presentar el estudio de las herramientas de virtualizacin existentes en la


actualidad, analizndolas segn los requerimientos del captulo 3 para as encontrar una solucin
final.

Por otra parte, en el captulo 5 se presentar el anlisis posterior a la implementacin primaria de


la herramienta elegida anteriormente. Se realizar una proyeccin de los beneficios que se
obtendrn y de los costos que se debern asumir.

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]

[2] BIND Wikipedia, the free encyclopedia [en lnea] <http://en.wikipedia.org/wiki/BIND>


[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.

[4] VMware customer story, KAZ Computing - VMware. [en lnea]


<http://www.vmware.com/files/pdf/customers/apac_au_07Q4_cs_vmw_kaz_computing_english.
pdf> [consulta: 10 de octubre de 2010]
[5] Microsoft case of study, Accenture - Microsoft. [en lnea]
<http://www.microsoft.com/casestudies/Case_Study_Detail.aspx?CaseStudyID=1000004028>
[consulta: 10 de octubre de 2010]
[6] VMware customer story, nworks VMware. [en lnea].
<http://www.vmware.com/files/pdf/customers/07Q3_ss_vmw_Nworks_English.pdf> [consulta:
10 de octubre de 2010]

[7] LPEZ-VALLEJO M., HUEDO E., GARBAJOSA J. Informe de Vigilancia Tecnolgica


madri+d Green IT: tecnologas para la eficiencia energtica de los sistemas TI. [en lnea]
Fundacin madri+d para el Conocimiento. Madrid (Espaa). 2008.
<http://www.madrimasd.org/informacionidi/biblioteca/publicacion/doc/VT/VT19_green_IT_tec
nologias_eficiencia_energetica_sistemas_TI.pdf> [consulta: 11 de octubre de 2010]

[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.

1. ASPECTOS DE LA TCNICA DE VIRTUALIZACIN.

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.

El Administrador de Mquinas Virtuales (Virtual Machine Monitor o VMM), es el proceso


encargado de administrar los recursos de hardware de la mquina fsica, asignndolos de manera
dinmica y transparente a cada una de las mquinas virtuales. Adems de esto, el VMM es el
encargado de proveer la independencia a cada una de las mquinas virtuales.

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.

Adems de este algoritmo, algunos VMM utilizan algoritmos de planificacin incorporados en el


ncleo (kernel) del sistema operativo, como es el caso del Planificador Completamente Justo [2]
(CFS: Completely Fair Scheduler). Este algoritmo busca minimizar los tiempos de espera, sobre
todo para los procesos que, por prioridad, se atienden al final. Este algoritmo se utiliza en las
ltimas versiones de ncleo de Linux, lo cual es aprovechado por el VMM de cdigo abierto
KVM, del cual se profundizar con mayor detalle en la seccin 1.2.2 del captulo 4

1.2. HISTORIA.

El concepto de virtualizacin no es reciente, ya a comienzo de la dcada de 1960 el proyecto


Atlas [3] desarrollado entre la Universidad de Manchester y Ferranti Ltd., constaba en un
computador que, entre otras caractersticas, ejecutaba un programa supervisor de rutinas de extra
cdigo (Supervisor Extracode Routines o S.E.R.), que se ejecutaba en una especie de mquina
virtual y otra de estas mquinas virtuales era utilizada para ejecutar programas de usuario [4].

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.

En esta seccin se describirn los tipos de virtualizacin existentes: la virtualizacin a nivel de


sistema operativo y la virtualizacin a asistida por hardware. Se detallan las caractersticas
principales y los principales exponentes de cada uno de estos tipos.

2.1. VIRTUALIZACIN A NIVEL DE SISTEMA OPERATIVO.

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.

Copia A Copia B Copia N

Sistema Operativo

Hardware

Figura 2.1: Esquema de virtualizacin a nivel de sistema operativo

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].

2.2. VIRTUALIZACIN A NIVEL DE HARDWARE.

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.

En este subtipo, el administrador de mquinas virtuales o VMM, es el encargado de permitir el


acceso de cada mquina virtual a los recursos de hardware fsico existentes en la mquina fsica,
entregando un acceso transparente a los recursos de hardware a cada una de las mquinas
virtuales existentes. Como se explic en un comienzo, el acceso al hardware se realiza mediante
algoritmos de planificacin o de scheduling, los cuales asignan los recursos de hardware entre las
mquinas virtuales. La figura 2 presenta un esquema de cmo funciona este subtipo de
virtualizacin. Dentro de los componentes se destaca el administrador de mquinas virtuales
(VMM), compuesto generalmente por un sistema operativo base y alguna herramienta de
virtualizacin (como Xen o KVM) y las herramientas de administracin, que brindan utilidades
extra, las cuales dependern de la herramienta de virtualizacin (ver Cap. 4).

Guest 1 Guest 2
Admin.
Tools

VMM

Hardware

Figura 2.2: Esquema de full-virtualizacin

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

Figura 2.3: Esquema de paravirtualizacin

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.

A continuacin se abordarn las principales ventajas que ofrece la virtualizacin, profundizando


en cada una de ellas.

21
3.1. CONSOLIDACIN DE SEVIDORES.

El concepto de consolidacin de servidores [24] hace referencia a la utilizacin eficiente de los


recursos que ofrecen los servidores, apuntando a la disminucin de la cantidad de servidores con
los que se ofrece un determinado conjunto de servicios.

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 administracin de plataformas tambin se ve beneficiada con la virtualizacin, ya que tal


como se mencion en la introduccin, una de las claves de esta tcnica es que facilita la
administracin de servidores.

Todas las herramientas de virtualizacin existentes, ya sean comerciales o de cdigo abierto,


poseen programas especiales que facilitan la administracin de las mquinas virtuales mediante
la administracin de los recursos de hardware que se asignan a cada una de las mquinas
virtuales, la creacin mquinas virtuales y el monitoreo de cada una de las mquinas virtuales
dentro de los servidores.

La administracin de recursos de hardware determina cmo se asignan de los recursos de la


mquina fsica a cada una de las mquinas virtuales existentes dentro de un servidor. Esto es
importante al momento de la creacin de cada mquina virtual, ya que se permite establecer los
requerimientos de hardware como cantidad de memoria RAM y cantidad de ncleos de CPU.
Adems de esto, los parmetros pueden ser modificados, a fin de agregar ms recursos a una
mquina virtual en particular.

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.

Finalmente, el monitoreo de mquinas virtuales comprende tareas como la actualizacin de


software y hardware de mquinas virtuales y el remplazo de mquinas virtuales. En el ltimo
caso, sobre todo las mquinas que presten servicios crticos que no pueden dejar de ejecutarse.
En esta situacin, el reemplazo puede realizarse de manera simple, dado que si se requiere retirar
alguna mquina virtual de funcionamiento, ya sea para actualizacin o revisin, basta con crear
otra mquina virtual con la misma configuracin y dejarla en funcionamiento, reemplazando a la
que se actualizar o retirar. Esto evita problemas de continuidad de servicio, lo cual ser crtico
en la medida de la importancia del servicio que la mquina virtual ofrezca.

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.

3.4. INTEGRACIN DE HARDWARE.

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.

La principal funcionalidad que se destaca en el caso de la integracin de servidores es la de la


migracin de mquinas virtuales mientras se encuentran ejecutando. Esto es, cambiar una
mquina virtual de un servidor a otro mientras cumple sus funciones. Esta funcionalidad es muy
til al momento de que sea necesario cambiar mquinas virtuales que ofrezcan servicios crticos,

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.

3.5. TECNOLOGA VERDE.

Adems de beneficios desde el punto de vista de tecnologas de la informacin, las implicancias


de la virtualizacin llegan a otras reas, como por ejemplo el medio ambiente. Se reconoce a la
virtualizacin como una Tecnologa Verde [37] (Green Computing o Green IT) dadas sus
caractersticas, que aportan a la eficiencia en la utilizacin de los recursos, lo cual minimiza el
impacto que pueden producir en el medio ambiente, a la reduccin en el consumo de
electricidad, como se pudo apreciar anteriormente, lo cual tambin conduce a una reduccin en la
emisin de dixido de carbono al medio ambiente.

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.

Esto se produce especialmente cuando se usa virtualizacin en servidores que no poseen


hardware con soporte para virtualizacin, tal como se mencion en el punto de full-
virtualizacin. En este caso, se produce una gran sobrecarga en el administrador de mquinas
virtuales, dado que este proceso es el encargado de emular el hardware de cada mquina virtual.
Este problema se acenta a medida que existan ms mquinas virtuales dentro del servidor.

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.

En este captulo se ha descrito el concepto de virtualizacin, a fin de que se puedan comprender


los aspectos ms relevantes de la tcnica de virtualizacin y su evolucin histrica.

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.

[1] Credit-Based CPU Scheduler. [en lnea]


<http://wiki.xensource.com/xenwiki/CreditScheduler> [consulta: 27 de diciembre de 2010].

[2] Completely Fair Scheduler Wikipedia, the free encyclopedia. [en lnea]
<http://en.wikipedia.org/wiki/Completely_Fair_Scheduler> [consulta: 27 de diciembre de 2010].

[3] Computer History Ferranti Atlas Computer. [en lnea]


<http://www.computinghistory.org.uk/det/1080/Ferranti-Atlas-Computer> [consulta: 29 de
diciembre de 2010].

[4] An Introduction to Virtualization kernelthread.com [en lnea]


<http://www.kernelthread.com/publications/virtualization/> [consulta: 29 de diciembre de 2010]

[5] IBM_M44/44X - Wikipedia, the free encyclopedia. [en lnea]


<http://en.wikipedia.org/wiki/IBM_M44/44X> [consulta: 29 de diciembre de 2010].

[6] CP 40 - Wikipedia, the free encyclopedia. [en lnea] <http://en.wikipedia.org/wiki/ CP-40>


[consulta: 29 de diciembre de 2010].

[7] CP 67 - Wikipedia, the free encyclopedia. [en lnea] <http://en.wikipedia.org/wiki/ CP-67>


[consulta: 29 de diciembre de 2010].

[8] History of CP/CMS - Wikipedia, the free encyclopedia. [en lnea]


<http://en.wikipedia.org/wiki/History_of_CP/CMS> [consulta: 29 de diciembre de 2010].

[9] VMware Site [en lnea] <http://www.vmware.com/> [consulta: 29 de diciembre de 2010].

[10] Microsoft Virtualization Site [en lnea] <http://www.microsoft.com/virtualization>


[consulta: 29 de diciembre de 2010].

[11] Citrix Systems Site [en lnea] <http://www.citrix.com/> [consulta: 29 de diciembre de


2010].

[12] Xen Site [en lnea] <http://www.xen.org/> [consulta: 29 de diciembre de 2010].

27
[13] Kernel-Based Virtual Machine Site [en lnea] <http://www.linux-kvm.org/> [consulta: 29 de
diciembre de 2010].

[14] Open VZ Site [en lnea] <http://openvz.org> [consulta: 29 de diciembre de 2010].

[15] Virtualization Technologies from Intel [en lnea]


<http://www.intel.com/technology/virtualization/> [consulta: 30 de diciembre de 2010].

[16] Virtualization AMD Site [en lnea] <http://sites.amd.com/us/business/it-


solutions/virtualization/Pages/virtualization.aspx> [consulta: 30 de diciembre de 2010].

[17] Jails The FreeBSD Handbook [en lnea]


<http://www.freebsd.org/doc/handbook/jails.html> [consulta: 30 de diciembre de 2010].

[18] System Administration Guide: Oracle Solaris 9 Containers [en lnea]


<http://dlc.sun.com/pdf/820-4490/820-4490.pdf> [consulta: 30 de diciembre de 2010].

[19] Binary Translation Wikipedia, the free encyclopedia [en lnea]


<http://en.wikipedia.org/wiki/Binary_translation> [consulta: 30 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].

[21] Citrix Xenserver Citrix Systems [en lnea]


<http://www.citrix.com/English/ps2/products/product.asp?contentID=683148&ntref=prod_top>
[consulta: 30 de diciembre 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]

[23] Denali Project [en lnea] <http://denali.cs.washington.edu/> [consulta: 30 de diciembre de


2010].

[24] What is Server Consolidation? SearchDataCenter.com [en lnea]


<http://searchdatacenter.techtarget.com/definition/server-consolidation> [consulta: 3 de enero de
2011].

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].

[28] Xenserver, How it helps Citrix Systems [en lnea]


<http://www.citrix.com/English/ps2/products/feature.asp?contentID=2300355> [consulta: 4 de
enero de 2011].

[29] XenCenter, Xenserver Citrix Community [en lnea]


<http://community.citrix.com/display/xs/XenCenter> [consulta: 4 de enero de 2011]

[30] VMware vSphere VMware [en lnea] <http://www.vmware.com/products/vsphere/>


[consulta: 4 de enero de 2011].

[31] virsh manual page Unix.com [en lnea] <http://www.unix.com/man-page/All/1m/virsh/>


[consulta: 4 de enero de 2011].

[32] Virtual Machine Manager [en lnea] <http://virt-manager.et.redhat.com/index.html>


[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].

[37] Green Computing Wikipedia, the free encyclopedia [en lnea]


<http://en.wikipedia.org/wiki/Green_computing> [consulta: 5 de enero de 2011].

[38] IDC Home [en lnea] <http://www.idc.com/> [consulta: 5 de enero de 2011].

[39] VMware Green IT Energy Efficiency - VMware [en nea]


<http://www.vmware.com/virtualization/green-it/> [consulta: 5 de enero de 2011].

[40] Performance Evaluation of Virtualization Technologies for Server Consolidation


Parallels.com [en lnea]
<http://www.parallels.com/r/pdfs/partners/hp/performance_evaluation_of_vt_for_sc_hp_labs.pdf
> [consulta: 6 de enero de 2011]

[41] Quantifying the Performance Isolation Properties of Virtualization Systems Clarkson


University [en lnea]
<http://people.clarkson.edu/~jmatthew/publications/isolation_ExpCS_FINALSUBMISSION.pdf
> [consulta: 6 de enero de 2011].

30
Captulo 3

ANLISIS DENTRO DE LA DIRECCIN CENTRAL DE SERVICIOS


COMPUTACIONALES (DCSC)
En este captulo se analiza la situacin actual de la Direccin Central de Servicios
Computacionales (DCSC), perteneciente a la Universidad Tcnica Federico Santa Mara, desde
el punto de vista de los servicios que sta ofrece. Posteriormente se definen los objetivos que la
DCSC se busca alcanzar tras la implementacin de virtualizacin, contrastando esto con las
ventajas mencionadas en el captulo anterior. A partir de este anlisis y definicin de objetivos,
se obtendrn una serie de requisitos base, los cuales se utilizarn al momento de seleccionar una
futura solucin.

1. CONTEXTO ACTUAL DE LA DCSC.

La DCSC es la unidad encargada de administrar y ofrecer los recursos y los servicios


computacionales dentro de la universidad. Dentro de la variedad de recursos y servicios
ofrecidos, este trabajo se enfocar en los servidores con los que cuenta esta unidad y los servicios
que estos ofrecen, entre los que se destacan los servidores web, los servidores LDAP (Light
Directory Access Protocol) [1] y los servidores DNS (Domain Name System) [2]. Estos
servidores son la base de los servicios internos que presta la universidad, tales como el Sistema
de Informacin y Gestin Acadmica (SIGA) [3], Aula Virtual [4], y sitios web como el
perteneciente a la universidad [5].

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.

2. OBJETIVOS TRAS LA IMPLEMENTACIN DE VIRTUALIZACIN.

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.

Conseguir integracin de hardware. Conseguir una herramienta que permita administrar


mltiples servidores fsicos ejecutando mquinas virtuales, a fin de ofrecer una mejor
calidad de servicio.

A continuacin se profundizaran estos objetivos, relacionndolos con las ventajas presentadas en


la seccin 3 del captulo 2.

2.1. EJECUCCIN DE DIVERSOS SISTEMAS OPERATIVOS DENTRO DE UNA


MISMA MQUINA.

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).

Como se describe en la seccin 2.2 del captulo 2, la virtualizacin a nivel de hardware se


clasifica en dos subtipos: la paravirtualizacin y la full-virtualizacin.

La paravirtualizacin requiere de sistemas operativos con modificaciones que los hagan


compatibles con la tcnica de virtualizacin, lo cual no es un problema en el caso de sistemas
operativos Linux y los de tipo BSD Unix, como FreeBSD, en los cuales ya se han incluido estas
modificaciones o bien, es posible intervenirlos al ser de cdigo abierto. Sin embargo, en el caso
de sistemas operativos con cdigo fuente cerrado, como Microsoft Windows, esto no se puede
realizar. Por lo tanto, con este tipo de sistema operativo la paravirtualizacin no es factible an.

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.

2.2. ADMINISTRACIN DE SERVIDORES.

Otro de los requerimientos planteados, es el de conseguir una plataforma simple de administrar.


Esto implica considerar una serie de tareas o rutinas comunes a la administracin de servidores,
tales como la creacin rpida de servidores, el monitoreo centralizado de los servidores, la
modificacin de recursos asignados a los servidores, el inicio automtico de las mquinas
virtuales junto con el inicio de la mquina fsica y la migracin de mquinas fsicas a mquinas
virtuales (proceso conocido como P2V).

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.

En la tarea de creacin de una mquina virtual un parmetro importante a considerar es el tiempo


que toma, desde la asignacin de recursos de hardware por primera vez a una mquina virtual y
la instalacin de su sistema operativo hasta que se ejecuta por primera vez. Adems de esto, en la
tarea de crear una mquina virtual debe existir la opcin de crear mquinas virtuales en base a
una ya existente. Esto se realiza mediante la clonacin de mquinas virtuales, lo que facilita
significativamente la creacin de una mquina virtual de similares caractersticas a alguna de las
ya existentes.

La tarea de monitoreo necesita que el programa de administracin entregue informacin acerca


del estado de los recursos ms importantes (e.g. utilizacin de disco, RAM, CPU y dispositivos
de red) de cada una de las mquinas virtuales y de la mquina fsica, a fin de comprender lo que
sucede en cada momento dentro de la plataforma y detectar posibles fallas de manera rpida.

La funcionalidad de modificacin de recursos de una mquina debe permitir cambiar la


asignacin de los recursos de hardware (disco duro, CPU, RAM y dispositivos de red) a cada
mquina y, en lo posible, sin detener la mquina virtual a modificar.

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.

Finalmente, la tarea de migracin de mquinas fsicas a virtuales (P2V), es muy til en la


creacin de mquinas virtuales con servicios complejos de configurar, pero que ya estn
operativos en una mquina fsica. En ese caso, la migracin automtica de dicho servicio a una
mquina virtual simplifica significativamente la tarea del administrador.

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.

2.3. INTEGRACIN DE HARDWARE.

Un tercer requerimiento consiste en la integracin de los servidores fsicos en una nica


plataforma de hardware. De esta manera, no slo se obtienen ahorros en costos de mquinas
fsicas sino que tambin se aspira a ofrecer servicios con redundancia, lo cual es necesario en
caso de servidores que ejecuten servicios crticos que requieren alta disponibilidad.

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.

3.1. EJECUCIN DE DIVERSOS SISTEMAS OPERATIVOS DENTRO DE UNA MISMA


MQUINA.
Los sistemas operativos que se requieren que sean soportados tanto por las mquinas fsicas
como las virtuales son:

Sistemas operativos host 1 a utilizar. Determinar si la herramienta tiene su propio sistema


operativo o si es necesario instalar uno previamente.
2
Sistemas operativos guest soportados. Se requiere que exista soporte para sistemas
operativos Microsoft Windows (XP, Server 2003 y Server 2008), Unix BSD (FreeBSD) y
Linux (principalmente para CentOS y Ubuntu).

3.2. ADMINISTRACIN DE SERVIDORES.

Las funcionalidades requeridas en trminos de la administracin de servidores son las siguientes:

Software de monitoreo y gestin. Se requiere que la herramienta cuente con un software


con interfaz grfica, por sobre una con software va lnea de comando, dadas las
facilidades de uso que presenta el primero.
Asignacin de recursos al guest.
Clonacin de mquinas virtuales.
Iniciar mquinas virtuales automticamente al iniciar el host.
Migracin de mquina fsica a mquina virtual (P2V).

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.

Migracin de mquinas virtuales entre servidores fsicos, sin necesidad de detenerla.

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

La tabla resumen de los requerimientos y restricciones es la siguiente:

Requerimientos y restricciones solucin final Solucin analizada


Sistema operativo host
Sistema operativo guest
Software de monitoreo y gestin
Asignacin de recursos al guest
Requerimientos

Clonacin de mquinas virtuales


Iniciar mquinas virtuales automticamente al iniciar el host
Migracin de mquina fsica a mquina virtual (P2V)
Migracin de mquinas virtuales entre servidores fsicos, sin
necesidad de detenerla
Mxima RAM soportada por el host
Restri
ccion

Mximo nmero de ncleos que se pueden asignar a los guest


es

Precio.
Tabla 3.1: Tabla de requerimientos y restricciones para las herramientas a analizar.

Por cada herramienta a analizar en el captulo 4, se completar una tabla similar.

37
4. RESUMEN.

En este captulo se presentaron los problemas presentes en la actualidad con la actual


configuracin de servidores de la DCSC, los objetivos que se desean alcanzar mediante la
implementacin de la tcnica de virtualizacin y las restricciones impuestas en la solucin. A
partir de esta informacin se ha obtenido una lista de requerimientos base con los que debe
cumplir la solucin final.

En el siguiente captulo se estudian diferentes alternativas de solucin.

38
5. BIBLIOGRAFA.

[1] LDAP Wikipedia, the free encyclopedia. [en lnea] <http://en.wikipedia.org/wiki/LDAP>


[consulta: 02 de abril de 2011].

[2] INTERNET SYSTEM CONSORTIUM. BIND DNS. [en lnea]


<http://www.isc.org/software/bind> [consulta: 02 de abril de 2011].

[3] Portal de Sistema de Gestin Acadmica [en lnea] <https://www.siga.usm.cl/pag/> [consulta


02 de abril de 2011]

[4] Alua USM [en lnea] <http://www.aula.usm.cl/> [consulta: 02 de abril de 2011]

[5] Universidad Tcnica Federico Santa Mara [en lnea] <http://www.usm.cl/> [consulta: 02 de
abril de 2011]

[6] Dell OptiPlex GX280 [en lnea]


<http://www.dell.com/html/us/products/optiplex/GX280_3d_model.html> [consulta: 02 de abril
de 2011]

[7] Uninterruptible Power Supply [en lnea]


<http://en.wikipedia.org/wiki/Uninterruptible_power_supply> [consulta: 02 de abril de 2011].

[8] Microsoft Corporation Web Site [en lnea] <http://www.microsoft.com/en/us/default.aspx>


[consulta: 18 de febrero de 2011].

[9] The FreeBSD Project [en lnea] <http://www.freebsd.org/> [consulta: 02 de abril de 2011]

[10] www.centos.org The Community ENTerprise Operating System [en lnea]


<http://www.centos.org/> [consulta: 02 de abil de 2011].

[11] Ubuntu Homepage [en lnea] <http://www.ubuntu.com/> [consulta: 02 de abril de 2011].

[12] Intel Xeon Processor E5310 [en lnea]


<http://ark.intel.com/Product.aspx?id=28030&processor=E5310&spec-
codes=SL9XR,SLACB,SLAEM > [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

ANLISIS DE HERRAMIENTAS DE VIRTUALIZACIN


En este captulo se reporta el estudio de las herramientas de virtualizacin ms utilizadas en la
actualidad. Cada una de ellas se analizar desde la perspectiva de los requerimientos y
restricciones descritas en el captulo 3. El estudio incluye tanto herramientas propietarias como
herramientas de cdigo abierto. Para el anlisis de estas primeras, se dispondr de la utilizacin
de las versiones gratuitas que las empresas desarrolladoras de estas han dispuesto para este fin
adems de considerar las licencias, en cuanto a funcionalidades ofrecidas y costos de licencias.
Por su parte, las segundas se analizarn mediante la su implementacin. Adems, por cada
herramienta se confeccionar una tabla, como la presentada al final del captulo 3, donde se
listan los requerimientos y restricciones de la DCSC y si la herramienta cumple o no con cada
uno de ellos.

1. HERRAMIENTAS.

En la actualidad existe una variada gama de herramientas de virtualizacin disponibles en el


mercado. Dentro de esta variedad, existen herramientas propietarias, las cuales gozan de gran
popularidad entre las empresas. Este tipo de herramientas ofrece una gran cantidad de
funcionalidades, dependiendo del tipo de licencia que se adquiera con la empresa desarrolladora
de la herramienta. Por otra parte, existen herramientas de cdigo abierto, las cuales estn
disponibles para su uso gratuito por parte de quin desee utilizarlas. En trminos de
funcionalidades ofrecidas, la gran mayora se encuentra a la par con las ofrecidas por las
herramientas propietarias y su uso se da mayoritariamente en instituciones acadmicas y de
investigacin, adems de pequeas empresas.

1.1. HERRAMIENTAS PROPIETARIAS.

En este estudio se consideraron las dos herramientas ms populares existentes en la actualidad,


las cuales son VMware vShpere [1] y Citrix Xenserver [2]. Adems de ser las ms populares,
estas herramientas ofrecen versiones gratuitas que ofrecen una serie de funcionalidades bsicas,
con el fin de promocionar sus ventajas como herramienta de virtualizacin. Dependiendo del

41
costo que se pague por la licencia, estas herramientas ofrecen funcionalidades adicionales a las
de la versin gratuita.

1.1.1. VMWARE VSPHERE.

VMware vSphere ha sido desarrollada por VMware [3], la empresa de virtualizacin ms


importante y con mayor presencia en el mercado [4]. Esta herramienta consta de un sistema
operativo liviano, basado en POSIX [5], el cual contiene el administrador de mquinas virtuales,
que se instala en el servidor fsico. Adems de esto, la herramienta cuenta con un software de
monitoreo remoto llamado vSphere Client, el cual se instala en un computador distinto al
servidor fsico, quien juega el rol de cliente. Este modelo tiene la ventaja de que todo el
procesamiento de la informacin entregada por el servidor fsico la realiza este cliente, dejando
al servidor las tareas ligadas a la virtualizacin y al cliente la de interpretar informacin, como
un monitor. Adems del monitoreo, todas las ordenes de administracin se pueden ejecutar desde
este cliente (creacin y actualizacin de mquinas virtuales, etc.)

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.

La figura 1 muestra la arquitectura bsica de VMware vSphere, que corresponde a la versin


gratuita de esta herramienta.

MV1 MV2 vSphere Client

VMware vShpere (ESXi) Sistema operativo

Hardware servidor Hardware cliente

Figura 4.1: Arquitectura de funcionamiento de VMware vSphere 3

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:

Servidor (izquierda): Es donde reside la herramienta de virtualizacin. VMware vSphere


es la capa que realiza las tareas de administrador de mquinas virtuales (ver captulo,
figura). Esta capa consta del sistema operativo propio, basado en POSIX y el conjunto de
herramientas desarrolladas por VMware (las cuales se detallarn a continuacin). Sobre
esto, se encuentran las mquinas virtuales.

Cliente (derecha): Es donde reside la herramienta de monitoreo y administracin. La


arquitectura corresponde a cualquier programa que se instala en un computador de
escritorio, la cual se ejecuta sobre el sistema operativo que posea dicho computador.

La comunicacin entre el servidor y la herramienta de monitoreo y administracin se realiza


sobre red.

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)

El significado de las filas que describen funcionalidad es el siguiente:

Thin Provisioning [8] se encarga de optimizar el uso de espacio mediante asignacin


dinmica de tamao a los discos virtuales de las mquinas virtuales

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

vShield Zones [16] permite la separacin de mquinas virtuales en zonas de seguridad, lo


cual es muy til para separar ambientes, en caso de tener mquinas que estn en etapas de
prueba (o de testing) y otras que ya prestan funcionalidades (o en etapa de produccin).

vStorage APIs for Array Integration [17] y vStorage APIs for Multipathing que mejoran
el rendimiento de los arreglos de discos

Distributed Resources Scheduler (DRS), Distributed Power Management (DPM) [18],


Storage I/O Control [19] y Network I/O Control [20] optimizan y balancean la asignacin
de recursos de hardware

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.

Versin Essentials Versin Essentials Plus


Hardware
Memoria mxima para el
256 [GB] 256 [GB]
servidor fsico
Ncleos por procesador 6 6
3 servidores con hasta 2 3 servidores con hasta 2
Licencia
procesadores cada uno procesadores cada uno
Funcionalidad
Thin Provisioning X X
Update Manager X X
Data Recovery X
High Availability X
vMotion X
vStorage APIs for Data
X X
Production
Costo (USD) 611 Desde 4229 a 5723,70
Tabla 4.2: Detalle de las versiones de VMware vSphere para pequeas y medianas empresas.

La tabla 3 muestra el resultado del anlisis, en base a los requerimientos y restricciones


planteados en el captulo 3, de 4 versiones de esta herramienta: la versin gratuita, la versin
Essential Plus, la versin estndar y la versin empresarial. Se seleccion estas versiones dadas
las funcionalidades, las que representan opciones a considerar por parte de la unidad.

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.

1.1.2. CITRIX XENSERVER.

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

Citrix XenServer Sistema operativo

Hardware servidor Hardware cliente

Figura 4.2: Arquitectura de funcionamiento de Citrix XenServer 4.

Existen 4 versiones de Citrix XenServer: la versin gratuita, la versin avanzada, la versin


empresarial y la versin platino, las cuales varan segn costo de adquisicin y funcionalidades
ofrecidas, tal como se puede apreciar en la tabla 3 [26].

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

Las funcionalidades presentadas en la tabla 4 se pueden agrupar segn su orientacin. Es as


como existen las orientadas a la administracin de las mquinas virtuales (como Resilient
distributed management architecture, VM disk snapshot and revert, XenCenter management,
Distributed virtual switching, Performance alerting & reporting, Live memory snapshot and
revert, Role-based administration y Web self-service with delegated administration), otras
orientadas a la administracin de recursos de hardware (como IntelliCache, Heterogeneous
pools, Memory optimization y Host power management), a entregar alta disponibilidad (como
High availability, Dynamic workload balance y Automated VM protection and recovery),
adems de una herramienta para conversin de mquinas fsicas a virtuales (Conversion tools) y
una herramienta para migrar mquinas virtuales en ejecucin (XenMotion live migration).

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.

Criterio/Versin Gratuita Avanzada Empresarial Platino


Sistema operativo host Propio Propio Propio Propio
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)
Mover M.V. mientras
Si Si Si Si
est en funcionamiento
Migracin de mquina
fsica a mquina virtual Si Si Si Si
(P2V)
SW de monitoreo y
XenCenter XenCenter XenCenter XenCenter
gestn
Clonacin de M.V. Si (detenida) Si (detenida) Si Si
Asignacin de recursos
Si (detenida) Si (detenida) Si Si
de hardware a M.V.
Mxima RAM host 512 [GB] 512 [GB] 512 [GB] 512 [GB]
Depende del Depende del Depende del Depende del
Mxima RAM guest S.O. (32 o 64 S.O. (32 o 64 S.O. (32 o 64 S.O. (32 o 64
bits) bits) bits) bits)
64
Ncleos soportados 64 procesadores 64 procesadores 64 procesadores
procesadores
host lgicos lgicos lgicos
lgicos5
Ncleos asignables al
8 8 8 8
guest
Iniciar M.V. al iniciar
Si Si Si Si
host
Precio (USD) 0.- 1000.- 2500.- 5000.-
Tabla 4.5: Anlisis de funcionalidades de Citrix XenServer segn requerimientos y restricciones de la DCSC

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.

Xen es una herramienta de virtualizacin de cdigo abierto desarrollada por un grupo de


investigacin en sistemas de la Universidad de Cambridge [31], quienes luego fundaron
XenSocurce, Inc. Esta herramienta fue lanzada en 2003 y pese a que en 2007 fue adquirida por
Citrix Systems, el proyecto original an se mantiene gracias al apoyo de Citrix y de una
comunidad de desarrolladores, que se encarga de la actualizacin [32]. Xen se distribuye
mediante licencia GNU General Public License (GPLv2) [33].

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

Hardware servidor Hardware cliente

Figura 4.3: Arquitectura de Xen6

En la figura 3 se presenta la arquitectura de esta herramienta. A diferencia de lo visto con las


herramientas propietarias, en el lado del cliente existen diversas opciones de herramientas de
administracin, una conexin va protocolo SSH [37] al host, utilizando herramientas de
administracin de lnea de comando, como virsh [38] o combinando SSH con despliegue de
grficos (SSH+X11 [39]) o incluso instalando aplicaciones grficas como Virtual Machine
Manager [40] (conocido tambin como virt-manager), la cual puede ser instalada tanto en el
servidor y ejecutarse desde el cliente con SSH+X11 o en el mismo cliente.

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.

La tabla 6 se presenta un cuadro resumen de las funcionalidades de Xen, respecto de los


requerimientos y restricciones de la DCSC, presentados en el captulo 3.

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.

KVM o Kernel-based Virtual Machine, es una herramienta de virtualizacin desarrollada por


Qumranet [44] y adquirida en 2008 por Red Hat, Inc. [45]. En la actualidad se le considera como
uno de los competidores directos de Xen en el mbito de las soluciones de cdigo abierto.

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

Hardware servidor Hardware cliente

Figura 4.4: Arquitectura de KVM7.

En la figura 4 se presenta un diagrama con la arquitectura de funcionamiento de KVM, la cual es


similar a la de Xen, sobre todo en el lado del cliente. Es por esta razn que se pueden utilizar las
mismas soluciones descritas para Xen.

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].

La tabla 7 se presenta un resumen de las funcionalidades de KVM en trminos de los


requerimientos y restricciones establecidos por la Direccin Central de Servicios
Computacionales, descritos en el captulo 3 de esta memoria.

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.

1.2.3. PROXMOX VIRTUAL ENVIRONMENT.

Proxmox Virtual Environment es una herramienta de virtualizacin de cdigo abierto


desarrollada y mantenida por Proxmox Server Solutions GmbH. [52]. La principal idea tras esta
herramienta es la de ofrecer una herramienta de clase empresarial en base a herramientas de
cdigo abierto, tales como KVM y OpenVZ. Esta herramienta se distribuye bajo licencia GPLv2
[33].

La primera versin de Proxmox Virtual Environment fue lanzada en abril de 2008, y en la


actualidad se encuentra en la versin 1.7. Los desarrolladores tienen previsto lanzar al mercado
la versin 2.x durante la segunda mitad del ao 2011 [53].

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).

MV1 MV2 SO Host + Navegador web


Web server

KVM + OpenVZ Sistema opeativo

Hardware servidor Hardware cliente

Figura 4.5: Arquitectura de Proxmox Virtual Environment.

La arquitectura de funcionamiento de Proxmox Virtual Environment se presenta en la figura 5.


Siendo similar a las arquitecturas presentadas anteriormente en este captulo, en lo que respecta a
aplicacin de monitoreo y gestin se diferencia de las anteriores en que en el lado del servidor
fsico donde reside la herramienta de gestin y monitoreo se instala un servidor web. Este
servidor web recibe la informacin entregada por el administrador de mquinas virtuales (KVM
+ OpenVZ) ordenndola de manera que sea interpretable para la administracin y monitoreo del
servidor fsico y de los servidores virtuales. El acceso a esta informacin es mediante navegador
web.

En cuanto a funcionalidades, esta herramienta entrega migracin de mquinas virtuales mientras


estn en ejecucin, clonacin y respaldo de mquinas virtuales. Una lista ms completa de
funcionalidades se encuentra en [55]. Respecto a migracin de mquina fsica a virtual o P2V, se
recomienda utilizar la misma estrategia descrita tanto para Xen como para KVM.

La tabla 8 presenta un resumen de las funcionalidades de Proxmox Virtual Environment en


trminos de los requerimientos y restricciones los parmetros establecidos para el caso de la
Direccin Central de Servicios Computacionales (captulo 3).

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.

De la inspeccin de las Tablas 3, 5, 6, 7 y 8 es posible apreciar que las cinco herramientas


cumplen con la mayora de los requerimientos y restricciones establecidos por la Direccin
Central de Servicios Computacionales.

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.

Proxmox Virtual Environment no es muy popular y su interfaz web de administracin, es ms


lenta que la de sus competidores, sobre todo en el despliegue de grficos en sistemas operativos
Microsoft Windows. Esta desventaja resulta en su descarte como opcin de virtualizacin. Por lo
tanto, entre las opciones gratuitas, se prefiere KVM.

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.

Debido a sus ventajas y su cumplimiento de los requerimientos y restricciones establecidos por la


DCSC, en esta memoria se opta por utilizar KVM como herramienta de virtualizacin para ser
implementada en un plan piloto en la DCSC.

3. RESUMEN.

En este captulo se estudiaron distintas herramientas de virtualizacin, analizndolas desde el


punto de vista de las funcionalidades que estas ofrecen y cmo estas se adecan a los
requerimientos expresados por la Direccin Central de Servicios Computacionales de la
Universidad. En base a este estudio, se ha optado por seleccionar la herramienta de cdigo
abierto KVM.

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].

[2] Citrix System >> Citrix Xenserver. [en lnea]


<http://www.citrix.com/English/ps2/products/product.asp?contentID=683148&ntref=prod_top>
[consulta: 21 de febrero de 2011].

[3] VMware [en lnea] <www.vmware.com> [consulta: 21 de febrero de 2011]

[4] ComputerProfile-blog.com >> Opportunities in a turbulent period [en lnea]


<http://computerprofile-blog.com/?p=627> [consulta: 21 de febrero de 2011]

[5] POSIX Wikipedia, the free encyclopedia [en lnea] <http://en.wikipedia.org/wiki/POSIX>


[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]

[7] VMware Store Vmware vSphere 4 Bundle Solutions [en lnea]


<http://www.vmware.com/vmwarestore/vsphere_purchaseoptions.html> [consulta: 21 de febrero
de 2011].

[8] VMware Storage I/O Control [en lnea] <http://www.vmware.com/products/vstorage-thin-


provisioning/> [consulta: 21 de febrero de 2011].

[9] VMware vCenter Update Manager [en lnea] <http://www.vmware.com/products/update-


manager/> [consulta: 21 de febrero de 2011].

[10] VMware Data Recovery [en lnea] <http://www.vmware.com/products/data-recovery/>


[consulta: 21 de febrero de 2011]

[11] VMware vStorage API [en lnea] <http://www.vmware.com/products/vstorage-apis-for-


data-protection/> [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].

[13] VMware Fault Tolerance (FT) [en lnea] <http://www.vmware.com/products/fault-


tolerance/> [consulta: 21 de febrero de 2011].

[14] VMware vMotion [en lnea] <http://www.vmware.com/products/vmotion/> [consulta: 21 de


febrero de 2011]

[15] VMware Storage VMotion [en lnea] <http://www.vmware.com/products/storage-


vmotion/overview.html> [consulta: 21 de febrero de 2011].

[16] VMware vShield Zones [en lnea] <http://www.vmware.com/products/vshield-zones/>


[consulta: 21 de febrero de 2011].

[17] VMware vStorage APIs for Array Integration [en lnea]


<http://www.vmware.com/products/vstorage-apis-for-array-integration/overview.html>
[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].

[19] VMware vSphere - Storage I/O Control [en lnea]


<http://www.vmware.com/products/storage-io-control/overview.html> [consulta: 21 de febrero
de 2011].

[20] VMware Network I/O Contol [en lnea] <http://www.vmware.com/products/network-io-


control/overview.html> [consulta: 21 de febrero de 2011].

[21] VMware vNetwork Distributed Switch [en lnea]


<http://www.vmware.com/products/vnetwork-distributed-switch/> [consulta: 21 de febrero de
2011].

[22] VMware vCenter Server Features [en lnea] <http://www.vmware.com/products/vcenter-


server/features.html#c1236> [consulta: 21 de febrero de 2011].

[23] Xen Homepage [en lnea] <www.xen.org> [consulta: 21 de febrero de 2011]

61
[24] Citrix Systems [en lnea] <www.citrix.com> [consulta: 21 de febrero de 2011]

[25] XenCenter [en lnea] <http://community.citrix.com/display/xs/XenCenter> [consulta: 21 de


febrero de 2011]

[26] XenServer Editions [en lnea]


<http://www.citrix.com/English/ps2/products/subfeature.asp?contentID=2300456> [consulta: 21
de febrero de 2011].

[27] XenServer Specifications [en lnea]


<http://www.citrix.com/English/ps2/products/subfeature.asp?contentID=1681139> [consulta: 21
de febrero de 2011]

[28] KVM [en lnea] <http://www.linux-kvm.org/> [consulta: 21 de febrero de 2011]

[29] Proxmox VE [en lnea] <http://pve.proxmox.com/wiki/Main_Page> [consulta: 21 de febrero


de 2011]

[30] OpenVZ [en lnea] <http://wiki.openvz.org/Main_Page> [consulta: 21 de febrero de 2011]

[31] Computer Laboratory Xen VMM [en lnea]


<http://www.cl.cam.ac.uk/research/srg/netos/xen/> [consulta: 23 de febrero de 2011]

[32] Community Xen [en lnea] <http://www.xen.org/community/> [consulta: 23 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]

[34] Itanium Wikipedia, the free encyclopedia [en lnea]


<http://en.wikipedia.org/wiki/Itanium> [consulta: 23 de febrero de 2011]

[35] ARM architecture Wikipedia, the free encyclopedia [en lnea]


<http://en.wikipedia.org/wiki/ARM_architecture> [consulta: 23 de febrero de 2011]

[36] OS Compatibility Xen Wiki [en lnea]


<http://wiki.xensource.com/xenwiki/OSCompatibility> [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]

[38] Man page virsh [en lnea] <http://linux.die.net/man/1/virsh> [consulta: 24 de febrero de


2011]

[39] X Window System - Wikipedia, the free encyclopedia [en lnea]


<http://en.wikipedia.org/wiki/X11> [consulta: 24 de febrero de 2011]

[40] Virtual Machine Manager [en lnea] <http://virt-manager.et.redhat.com/> [consulta: 24 de


febrero de 2011].

[41] virt-p2v P2V migration tool [en lnea] <http://people.redhat.com/~rjones/virt-p2v/virt-


p2v.1.html> [consulta: 24 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].

[43] Xen 4.0 Xen Wiki [en lnea] <http://wiki.xensource.com/xenwiki/Xen4.0> [consulta: 24


de febrero de 2011].

[44] Qumranet Wikipedia, the free encyclopedia [en lnea]


<http://en.wikipedia.org/wiki/Qumranet> [consulta: 25 de febrero de 2011]

[45] Red Hat [en lnea] <http://www.redhat.com/> [consulta: 25 de febrero de 2011].

[46] Linux: 2.6.20 Kernel Released | KernelTrap [en lnea] <http://kerneltrap.org/node/7670>


[consulta: 25 de febrero de 2011].

[47] Virtualization Technology from Intel [en lnea]


<http://www.intel.com/technology/virtualization/> [consulta: 25 de febrero de 2011]

[48] Virtualization | AMD [en lnea] <http://sites.amd.com/us/business/it-


solutions/virtualization/Pages/virtualization.aspx> [consulta: 25 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].

[50] Migration KVM [en lnea] <http://www.linux-kvm.org/page/Migration> [consulta: 25 de


febrero de 2011].

[51] KVM Features KVM [en lnea] <http://www.linux-kvm.org/page/KVM_Features>


[consulta: 25 de febrero de 2011].

[52] Proxmox Start page [en lnea] <http://www.proxmox.com/> [consulta: 25 de febrero de


2011].

[53] Roadmap Proxmox VE [en lnea] <http://pve.proxmox.com/wiki/Roadmap> [consulta: 25


de febrero de 2011].

[54] Bare-metal ISO Instaler Proxmox VE [en lnea] <http://pve.proxmox.com/wiki/Bare-


metal_ISO_Installer> [consulta: 25 de febrero de 2011].

[55] Backup - Restore - Live Migration Proxmox VE [en lnea]


<http://pve.proxmox.com/wiki/Backup_-_Restore_-_Live_Migration> [consulta: 25 de febrero
de 2011].

[56] Citrix Licensing Resource Center [en lnea]


<http://www.citrix.com/lang/English/lp/lp_2305120.asp> [consulta: 26 de febrero de 2011].

[57] Free Xenserver License Renew Server Fault [en lnea]


<http://serverfault.com/questions/207398/free-xenserver-license-renew> [consulta 26 de febrero
de 2011].

64
Captulo 5

IMPLEMENTACIN Y ANLISIS DE LA SOLUCIN


Luego de seleccionar e implementar la herramienta escogida en el captulo anterior, es necesario
responder una par de preguntas claves: qu beneficios se obtienen al implementar virtualizacin
en los servicios identificados? y cul es el costo que se debe asumir?

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.

Los beneficios potenciales obtenidos mediante virtualizacin se proyectarn en base a datos de


los equipos y de informacin adicional, como el valor de kilowatt hora ($/kWh). En tanto que los
costos se proyectarn en base a pruebas realizadas a los servicios que se virtualizarn en una
primera etapa (web estticas, DNS y LDAP), tal como se mencion en la seccin 1 del captulo 3
de este trabajo.

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.

Dado que la implementacin de la virtualizacin de los servicios de Web, DNS y LDAP se


encuentra an en desarrollo en la DCSC, el anlisis de los beneficios esperados se presenta de
manera estimada. Esta estimacin, junto con la de costos, permitir establecer la conveniencia de
implementar virtualizacin en el caso estudiado.

65
1.1. CANTIDAD DE SERVIDORES VIRTUALES.

Un aspecto clave cuando se virtualiza un sistema es determinar la cantidad de servidores


virtuales que pueden ejecutarse dentro de un servidor fsico. Esto depende no slo de la
plataforma fsica que ofrece el host, sino tambin de los servicios que se desea virtualizar y su
nivel de utilizacin.

En trminos de hardware, se puede obtener una primera aproximacin considerando la relacin


existente entre las velocidades de procesamiento de la CPU del servidor fsico (CPU f) y la
capacidad de procesamiento de la CPU que utilizar el servidor virtual (CPU v). Este ltimo dato
depende de los servicios a virtualizar.

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.

Adems de la capacidad de procesamiento de la CPU, el proceso de virtualizacin debe


considerar tambin la memoria RAM disponible en el servidor fsico (RAM f) as como la RAM
necesaria para los servidores virtuales (RAM v). En este caso, el servidor fsico cuenta con 32
[GB] de RAM y de acuerdo a las consideraciones de la Direccin Central de Servicios
Computacionales respecto del consumo de RAM por parte de los servicios a virtualizar, esta no
debera ser mayor a 2 [GB] por servidor. Por lo tanto, considerando las restricciones de uso de
RAM, se podran ejecutar hasta 16 mquinas virtuales por servidor.

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.

En resumen, estos requerimientos se satisfacen si en vez de instalar 16 servidores virtuales, se


implementan 12. Lo que deja capacidad de hardware suficiente para atender los requerimientos
del sistema operativo base y del VMM. Cabe mencionar que este mtodo, donde se han
considerado asignaciones estticas de recursos de hardware, si bien no representa la realidad, es
una buena aproximacin inicial de lo que puede suceder en la prctica.

1.2. AHORRO ENERGTICO

La disminucin de servidores fsicos que resulta de la implementacin de la tcnica de


virtualizacin conlleva ahorros en el consumo de energa del sistema. Para estimar este ahorro,
en este trabajo de ttulo se consideraron dos tipos de servidores fsicos, representativos de de
situacin actual de la Direccin Central de Servicios Computacionales. El primero corresponde a

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.

Para estimar el ahorro en consumo de energa elctrica debido a la disminucin de servidores, se


considera lo siguiente:

El periodo de tiempo en el que se evaluar el consumo en energa elctrica de 30 das.

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].

El ahorro de energa elctrica proviene de la disminucin en el consumo elctrico del


sistema de servidores y del sistema de climatizacin.

El consumo de energa elctrica de los servidores de 300[W] y 750 [W] es de 216[kWh] y


540[kWh], respectivamente (obtenidos de la multiplicacin del consumo en watts, multiplicado
por el nmero de horas de un mes). Estos consumos se traducen en un ahorro monetario de
aproximadamente $15.000 y $37.000 mensuales10 (30 y 77 [USD]) para el servidor de 300 [W] y
750 [W], respectivamente.

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.

El consumo energtico de los sistemas de climatizacin se suele medir en [BTU/h] (British


Thermal Unit [4] por hora). La relacin entre [BTU/h] y [kWh] es de 3,412. Por lo tanto, los
servidores de 300[W] y 750 [W] tienen un consumo de 1023,6[BTU/h] y 2559,1[BTU/h],
respectivamente.

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].

2. DESVENTAJAS POR TIPO DE SERVICIO VIRTUALIZADO

Como se discuti en el Captulo 2, la tcnica de virtualizacin conlleva tambin ciertas


desventajas relacionadas con la degradacin de servicio resultante de la emulacin del hardware
real para cada mquina virtual.

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.

El escenario en cual se desarrollaron estas pruebas se ilustra en la figura 1.

Firewall

Cliente Sevidor fsico


Red oficina Red servidores

Figura 5.1: Configuracin de red y dispositivos utilizados para las pruebas.

De la figura es posible apreciar que la configuracin de prueba const de:

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.

Red oficina: Corresponde a una red interna de computadores de escritorio en la cual se


encuentra el cliente.

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.

Hardware Servidor (virtualizado) Servidor (fsico) Cliente


1 ncleo de procesador Intel Xeon Intel Xeon E5310
AMD Sempron
Procesador E5310 1.6 [GHz] por servidor 1.6 [GHz], 4
Mobile 1.6 [GHz]
virtual. ncleos
1[GB] Por servidor virtual (3 [GB]
RAM 16 [GB] 2 [GB]
en total)
Sistema Ubuntu Server 10.10 (Base). ArchLinux 2009.08
FreeBSD 8.1
Operativo FreeBSD 8.1 (Servidor virtual) [9]
Tarjetas de 1 interfaz de 100 Mbps para los 3 1 interfaz de 100 1 interfaz de 100
Red servidores Mbps Mbps
Disco Duro 10 [GB] por servidor 500 [GB] 80[GB]
Tabla 5.1: Especificaciones de hardware y sistema operativo de los equipos utilizados para las pruebas

2.1. SERVICIO WEB.


En este estudio, el servicio web se ofrecer usando la aplicacin servidora Apache [10], la que
debido a su uso extendido a nivel mundial [11] cuenta con bastante documentacin y soporte, lo
que facilita su configuracin y puesta en marcha.

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].

La herramienta utilizada para evaluar el funcionamiento de Apache en un servidor virtualizado


ser Apache Benchmark [14]. Este software permite determinar el nmero de solicitudes de
pginas web a ejecutar durante el tiempo de prueba. Permite tambin generar solicitudes
simultneas con el objeto de emular varias visitas a un sitio web. Utilizando esta funcionalidad,
se simularon 10 escenarios de carga del servidor web virtualizado. Cada escenario fue definido
por el valor de solicitudes de pginas totales como de solicitudes simultneas. Estos escenarios
se resumen en la tabla 2, donde la notacin EX corresponde al escenario X. Cada escenario tiene
asociado un nmero de conexiones totales y otro de conexiones simultneas. Por ejemplo, en el
escenario 1 (E1) se generan 500 conexiones en total y dentro de cada una de ellas conexiones
totales, existen 50 conexiones simultneas.

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.

Tiempo Tiempo Razn de Tiempo Tiempo


Razn de
Promedio de Promedio de diferencia de Total Total
Escenario diferencia
ttime Fsico ttime Virtual ttime Fsico Virtual
(ms) (ms) promedio (ms) (ms)
E1 15,923 23,458 1,473 23 41 1,782
E3 14,92 23,851 1,598 25 46 1,84
E5 15,091 24,497 1,623 27 50 1,851
E7 13,235 23,873 1,803 30 55 1,833
E9 12,519 23,322 1,862 32 57 1,781
E2 28,064 47,72 1,7 40 66 1,65
E4 31,165 46,12 1,479 43 70 1,627
E6 30,925 49,137 1,588 45 73 1,622
E8 30,239 47,831 1,581 48 76 1,583
E10 28,204 45,807 1,624 50 79 1,58
Tabla 5.3: Tiempos promedio y total de cada escenario.

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.

Lo destacable es que, a diferencia de lo que se podra pensar, al tener mayor nmero de


solicitudes simultneas, la razn de los tiempos promedio y total va disminuyendo, lo cual se
puede deber a que el servidor virtual aprovecha de mejor manera los recursos limitados que
posee, comparado con un servidor fsico que solo utiliza parte de ellos. Aun as, los tiempos,
tanto totales como promedio son mayores en el caso de los escenarios pares que en los impares.

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.

El rendimiento de un servicio de DNS virtualizado ser estudiado en lo que respecta al servicio


de consulta y resolucin de nombres externos. Otras tareas, como la creacin y administracin de
zonas y nombres de dominio para servidores internos, no fueron consideradas debido a que la
DSCS as lo consider

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.

La herramienta de evaluacin de rendimiento utilizada fue la aplicacin de cdigo abierto


Namebench [16], distribuida bajo licencia Apache License 2.0 [12] y desarrollada para evaluar
la respuesta de servidores DNS. Namebench funciona generando consultas DNS con URLs [17]
disponibles en el computador cliente en el cual se ejecuta este programa. Estas URLs se toman
como informacin, del historial de navegacin de los navegadores web del computador cliente.
Namebench permite generar un mximo de 2400 consultas DNS por evaluacin.

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.

Nmero de consultas DNS totales 250 500 1000 1500 2000


Escenario E1 E2 E3 E4 E5
Tabla 5.4: Resumen de pruebas con Namebench

Los valores de carga seleccionados se han estimado considerando las estadsticas de uso del
servicio de DNS por parte de la DCSC.

A continuacin se presenta el grfico resumen de las evaluaciones realizadas. Para grficos ms


detallados ver la seccin 2 de A1 en Anexos.

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.

Respecto a los escenarios de prueba, se utilizaron los mismos de la evaluacin de Apache. Es


decir, se realiz un nmero de consultas totales y un nmero de consultas ejecutadas de manera
simultnea. La diferencia es que estas consultas simultneas son parte de las consultas totales, es
decir, que si se ejecutan 1000 consultas totales, con 10 consultas simultneas, estas 1000
consultas estarn agrupadas en grupos de 10, por lo que equivaldr a 100 grupos de 10 consultas
simultneas.

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.

En la tabla 6 se presentan los escenarios de prueba para este caso.

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.

Los grficos obtenidos tras la pruebas se muestran a continuacin. La nomenclatura utilizada en


los grficos es similar a las anteriores, donde fis representa los escenarios evaluados con el
servicio en el servidor fsico y vir en el servidor virtual. Grficos ms detallados se presentan en
la seccin 3 de A1 en Anexos.

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.

Tiempo Tiempo Razn de Tiempo Tiempo


Razn de
Escenario Promedio Promedio diferencia Total Total
diferencia
Fsico (s) Virtual (s) Fsico (s) Virtual (s)
E1 1,547 1,765 1,141 3,03 3,433 1,133
E3 3,295 3,48 1,056 6,51 6,88 1,056
E5 4,589 5,204 1,134 9,091 10,32 1,135
E7 6,158 6,93 1,125 11,256 13,765 1,223
E9 7,188 8,513 1,184 13,377 16,96 1,268
E2 1,217 1,55 1,273 2,322 3,031 1,305
E4 2,477 2,777 1,121 4,768 5,414 1,135
E6 3,545 4,125 1,163 6,98 8,106 1,161
E8 4,693 5,459 1,163 9,278 10,792 1,163
E10 6,893 7,035 1,021 13,767 14,258 1,036
Tabla 5.7: Tiempos promedio y total para cada escenario

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.

En este captulo se cuantificaron los beneficios y desventajas de implementar virtualizacin en


servicios web, DNS y LDAP. Los beneficios se midieron en trminos de reduccin de servidores
fsicos y ahorros en consumo energtico. Las desventajas se analizaron en trminos de la
degradacin de los tiempos de respuesta de los servicios virtualizados respecto de cuando operan
directamente en un servidor fsico.

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.

[2] Intel Xeon Processor E5310 [en lnea]


<http://ark.intel.com/Product.aspx?id=28030&processor=E5310&spec-
codes=SL9XR,SLACB,SLAEM> [consulta: 15 de marzo de 2011].

[3] Tarifas de suministro elctrico - Chilquinta [en lnea]


<http://www.chilquinta.cl/residenciales/files/2009/11/valores_tarifas_suministro_electrico.pdf>
[consulta: 21 de febrero de 2011]

[4] British termal unit Wikipedia, the free encyclopedia [en lnea]
<http://en.wikipedia.org/wiki/British_thermal_unit> [consulta: 16 de marzo de 2011].

[5] Frigora Wikipedia, la enciclopedia libre [en lnea]


<http://es.wikipedia.org/wiki/Frigor%C3%ADa> [consulta: 16 de marzo de 2011].

[6] Dell PowerEdge 2950 Server Product Details [en lnea]


<http://www.dell.com/us/dfb/p/poweredge-2950/pd?refid=pedge_2950&s=dfb&cs=28>
[consulta: 20 de marzoo de 2011]

[7] Ubuntu Server [en lnea] <http://www.ubuntu.com/business/server/overview> [consulta: 20


de marzo de 2011].

[8] FreeBSD 8.1 [en lnea] <http://www.freebsd.org/releases/8.1R/announce.html> [consulta: 20


de marzo de 2011].

[9] Arch Linux [en lnea] <http://www.archlinux.org/> [consulta: 20 de febrero de 2011].

[10] The Apache HTTP Server Project [en lnea] <http://httpd.apache.org/> [consulta: 20 de
marzo de 2011]

[11] March 2011 Web Server Survey | Netcraft [en lnea]


<http://news.netcraft.com/archives/2011/03/09/march-2011-web-server-survey.html> [consulta:
20 de marzo de 2011].

85
[12] Licenses - Apache [en lnea] <http://www.apache.org/licenses/> [consulta: 20 de marzo de
2011].

[13] Module Index Apache HTTP Server[en lnea] <http://www.apache.org/licenses/>


[consulta: 20 de marzo de 2011].

[14] ab Apache HTTP Server [en lnea] <http://httpd.apache.org/docs/2.0/programs/ab.html>


[consulta: 20 de marzo de 2011]

[15] BIND | Internet Systems Consortium [en lnea] <http://www.isc.org/software/bind>


[consulta: 23 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].

[18] OpenLDAP, Main Page [en lnea] <http://www.openldap.org/> [consulta: 25 de marzo de


2011].

[19] OpenLDAP Public License [en lnea]


<http://www.openldap.org/software/release/license.html> [consulta: 25 de marzo de 2011].

[20] Cool Solutions: LDAP Benchmark Tester [en lnea]


<http://www.novell.com/coolsolutions/tools/14046.html> [consulta: 25 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

CONCLUSIONES Y TRABAJO FUTURO

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.

En el proceso de anlisis de distintas herramientas de virtualizacin disponibles en el mercado


fue posible notar las ventajas comparativas que ofrecen las herramientas de cdigo abierto. En
trminos de funcionalidades ofrecidas, en muchos aspectos compiten favorablemente con las
herramientas propietarias. Esto es una ventaja significativa para quienes se inician en el rea de
la virtualizacin o bien para pequeas y medianas empresas que desean implementar una
infraestructura bsica utilizando virtualizacin de servicios.

El anlisis posterior a la implementacin permiti evaluar el impacto que la virtualizacin puede


tener en el desempeo de los servicios ofrecidos. En este sentido, se analizaron tanto los
beneficios (ahorro de servidores fsicos y consecuente ahorro de consumo energtico) como las
desventajas (retardos experimentados por el cliente de un servicio). De los beneficios, se pudo
cuantificar el ahorro mensual que se puede llegar a obtener, tanto en consumo de energa
elctrica como en consumo en sistema de climatizacin al momento de retirar una unidad del
12
http://www.cpanel.net/

87
datacenter, ya sea de servidor o de computador. Depender de las unidades que realmente se
logren retirar, la cuantificacin total de dichos ahorros.

Adems de esto, tambin se abord la principal desventaja de la virtualizacin, la que guarda


relacin con los retardos que puede introducir en los tiempos de respuesta de un servidor virtual,
comparado con un servidor fsico. En este contexto, se pudo determinar que los retardos varan
segn el tipo de servicio a virtualizar, ya que en el caso de web, la respuesta de un servidor
virtual lleg a tener una diferencia de hasta un 86% comparado con la respuesta de un servidor
fsico ejecutando este mismo servicio. En cambio, para los casos de DNS y LDAP, esta
diferencia fue menor, llegando a ser de un 10% en el caso de la primera y de un 22% para la
segunda.

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:

Desarrollar un plan de virtualizacin dentro de la entidad13, de manera de realizar un


estudio exploratorio que identifique qu otros servicios convendra virtualizar. Esto
conllevara el desarrollo de un plan en el que se consideren aspectos de investigacin,
pruebas, implementacin en marcha blanca y una implementacin definitiva de otros
servicios.

Analizar las respuestas de los servicios ya implementados o por implementar, de manera


de obtener nuevos datos y realizar nuevas proyecciones respecto de cmo responden los

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

A1: Grficos detallados de las pruebas realizadas.


A continuacin se incluyen los grficos obtenidos de la evaluacin de cada uno de los servicios.
En el caso de Web, se incluyen los tiempos descritos en la seccin 1.3.1 del captulo 5

1. WEB.

Figura A.1: Datos evaluacin web, escenario 1

90
Figura A.2: Datos evaluacin web, escenario 2

Figura A.3: Datos evaluacin web, escenario 3.

91
Figura A.4: Datos evaluacin web, escenario 4.

Figura A.5: Datos evaluacin web, escenario 5

92
Figura A.6: Datos evaluacin web, escenario 6

Figura A.7: Datos evaluacin web, escenario 7

93
Figura A.8: Datos evaluacin web, escenario 8

Figura A.9: Datos evaluacin web, escenario 9

94
Figura A.10: Datos evaluacin web, escenario 10

95
2. DNS

Figura A.11: Datos evaluacin DNS, escenario 1

Figura A.12: Datos evaluacin DNS, escenario 2

96
Figura A.13: Datos evaluacin DNS, escenario 3

Figura A.14: Datos evaluacin DNS, escenario 4

97
Figura A.15: Datos evaluacin DNS, escenario 5

98
3. LDAP.

Figura A.16: Datos evaluacin LDAP, escenario 1

Figura A.17: Datos evaluacin LDAP, escenario 2

99
Figura A.18: Datos evaluacin LDAP, escenario 3

Figura A.19: Datos evaluacin LDAP, escenario 4

100
Figura A.20: Datos evaluacin LDAP, escenario 5

Figura A.21: Datos evaluacin LDAP, escenario 6

101
Figura A.22: Datos evaluacin LDAP, escenario 7

Figura A.23: Datos evaluacin LDAP, escenario 8

102
Figura A.24: Datos evaluacin LDAP, escenario 9

Figura A.25: Datos evaluacin LDAP, escenario 10

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

Potrebbero piacerti anche