105
UNIVERSIDAD TÉCNICA FEDERICO SANTA MARÍA DEPARTAMENTO DE ELECTRÓNICA VALPARAÍSO CHILE “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE VIRTUALIZACIÓN EN LA DIRECCIÓN CENTRAL DE SERVICIOS COMPUTACIONALES, UTFSM” ALEJANDRO ESTEBAN LARA MOLINA MEMORIA DE TITULACIÓN PARA OPTAR AL TÍTULO DE INGENIERO CIVIL TELEMÁTICO PROFESOR GUÍA: PROFESOR CORREFERENTE DRA. ALEJANDRA BEGHELLI Z. MSC. MARCELO MARABOLI R. MAYO 2011

“ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

Embed Size (px)

Citation preview

Page 1: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

UNIVERSIDAD TÉCNICA FEDERICO SANTA MARÍA DEPARTAMENTO DE ELECTRÓNICA

VALPARAÍSO – CHILE

“ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA

DE VIRTUALIZACIÓN EN LA DIRECCIÓN

CENTRAL DE SERVICIOS COMPUTACIONALES,

UTFSM”

ALEJANDRO ESTEBAN LARA MOLINA

MEMORIA DE TITULACIÓN PARA OPTAR AL TÍTULO DE

INGENIERO CIVIL TELEMÁTICO

PROFESOR GUÍA:

PROFESOR CORREFERENTE

DRA. ALEJANDRA BEGHELLI Z.

MSC. MARCELO MARABOLI R.

MAYO 2011

Page 2: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

2

Al Padre, su Hijo y su Espíritu,

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 Telemática y a todos quienes la conforman,

por su acogida y por permitir mi pleno desarrollo.

Page 3: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

3

RESUMEN

Durante la década recién pasada, la virtualización se ha transformado en una de las técnicas más

utilizadas en grandes instituciones que necesitan ofrecer servicios informáticos de distinta índole.

Sin duda esta tendencia se mantendrá durante los años venideros.

La virtualización permite la ejecución de distintas máquinas virtuales (cada una a cargo de un

servicio distinto) en una misma máquina física. Esto conlleva ventajas significativas en términos

de ahorros de hardware, disminución en el consumo de electricidad y eficiencia en la

administración tanto de las máquinas 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 virtualización parece

compensar con creces la desventaja asociada, dada la adopción masiva de la virtualización por

parte de diversas instituciones.

En la actualidad el mercado ofrece varias herramientas que permiten implementar virtualización.

Entre ellas se distinguen herramientas propietarias y de código fuente abierto. En ambos casos, la

mayoría de las herramientas permite explotar las principales ventajas de esta técnica. La

selección 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 descripción de la técnica de virtualización así como un estudio

comparativo de las principales herramientas de virtualización disponibles en el mercado

(propietarias y de código abierto). Posteriormente, se presenta un caso de estudio que analiza la

factibilidad técnica de implementar la técnica de virtualización para 3 servicios de la Dirección

Central de Servicios Computacionales (DCSC) de la Universidad Técnica Federico Santa María.

Este análisis considera los requerimientos y restricciones de la DCSC y los beneficios que se

esperan obtener tras una implementación formal. Además de esto se reporta una implementación

primaria de virtualización, 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 línea.

Page 4: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

4

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, Dirección Central de Servicios Computacionales) at

Universidad Técnica Federico Santa María. 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.

Page 5: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

5

Índice

Capítulo 1

1. INTRODUCCIÓN .................................................................................................................... 11

2. REFERENCIAS ........................................................................................................................ 15

Capítulo 2

VIRTUALIZACIÓN..................................................................................................................... 16

1. ASPECTOS DE LA TÉCNICA DE VIRTUALIZACIÓN. ................................................. 16

1.1. DEFINICIÓN. ................................................................................................................ 16

1.2. HISTORIA. .................................................................................................................... 17

2. TIPOS DE VIRTUALIZACIÓN. ......................................................................................... 18

2.1. VIRTUALIZACIÓN A NIVEL DE SISTEMA OPERATIVO. .................................... 18

2.2. VIRTUALIZACIÓN A NIVEL DE HARDWARE....................................................... 19

2.2.1. FULL-VIRTUALIZACIÓN. .................................................................................. 20

2.2.2. PARAVIRTUALIZACIÓN. ................................................................................... 21

3. VENTAJAS DE LA VIRTUALIZACIÓN. .......................................................................... 21

3.1. CONSOLIDACIÓN DE SEVIDORES. ......................................................................... 22

3.2. AHORROS ..................................................................................................................... 22

3.3. ADMINISTRACIÓN ..................................................................................................... 23

3.4. INTEGRACIÓN DE HARDWARE. ............................................................................. 24

3.5. TECNOLOGÍA VERDE. ............................................................................................... 25

4. DESVENTAJAS DE LA VIRTUALIZACIÓN. .................................................................. 25

4.1. DEGRADACIÓN DE SERVICIOS............................................................................... 26

5. RESUMEN. .......................................................................................................................... 26

6. BIBLIOGRAFÍA. ................................................................................................................. 27

Page 6: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

6

Capítulo 3

ANÁLISIS DENTRO DE LA DIRECCIÓN CENTRAL DE SERVICIOS

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

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

2. OBJETIVOS TRAS LA IMPLEMENTACIÓN DE VIRTUALIZACIÓN. ........................ 32

2.1. EJECUCCIÓN DE DIVERSOS SISTEMAS OPERATIVOS DENTRO DE UNA

MISMA MÁQUINA. ................................................................................................................ 32

2.2. ADMINISTRACIÓN DE SERVIDORES. .................................................................... 33

2.3. INTEGRACIÓN DE HARDWARE. ............................................................................. 35

3. REQUERIMIENTOS Y RESTRICCIONES. ....................................................................... 36

3.1. EJECUCIÓN DE DIVERSOS SISTEMAS OPERATIVOS DENTRO DE UNA

MISMA MÁQUINA. ................................................................................................................ 36

3.2. ADMINISTRACIÓN DE SERVIDORES. .................................................................... 36

3.3. INTEGRACIÓN DE HARDWARE. ............................................................................. 37

3.4. RESTRICCIONES. ........................................................................................................ 37

4. RESUMEN. .......................................................................................................................... 38

5. BIBLIOGRAFÍA. ................................................................................................................. 39

Capítulo 4

ANÁLISIS DE HERRAMIENTAS DE VIRTUALIZACIÓN .................................................... 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 CÓDIGO ABIERTO. .............................................................. 52

1.2.1. XEN. ....................................................................................................................... 52

1.2.2. KVM. ...................................................................................................................... 54

1.2.3. PROXMOX VIRTUAL ENVIRONMENT. ........................................................... 56

2. ANÁLISIS Y SOLUCIÓN. .................................................................................................. 58

3. RESUMEN. .......................................................................................................................... 59

Page 7: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

7

4. BIBLIOGRAFÍA. ................................................................................................................. 60

Capítulo 5

IMPLEMENTACIÓN Y ANÁLISIS DE LA SOLUCIÓN.......................................................... 65

1. BENEFICIOS. ...................................................................................................................... 65

1.1. CANTIDAD DE SERVIDORES VIRTUALES. ........................................................... 66

1.2. AHORRO ENERGÉTICO ............................................................................................. 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. BIBLIOGRAFÍA. ................................................................................................................. 85

Capítulo 6

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

1. CONCLUSIONES ................................................................................................................ 87

2. TRABAJO FUTURO............................................................................................................ 88

Anexos

A1: Gráficos detallados de las pruebas realizadas. ....................................................................... 90

1. WEB. ..................................................................................................................................... 90

2. DNS....................................................................................................................................... 96

3. LDAP. ................................................................................................................................... 99

A2: Códigos de programas para mediciones .............................................................................. 104

1. WEB .................................................................................................................................... 104

3. LDAP .................................................................................................................................. 104

3.1. ldap_test.sh ................................................................................................................... 104

3.2. ldap_test_2.sh ............................................................................................................... 105

Page 8: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

8

Índice de figuras

Figura 2.1: Esquema de virtualización a nivel de sistema operativo ............................................ 19

Figura 2.2: Esquema de full-virtualización ................................................................................... 20

Figura 2.3: Esquema de paravirtualización ................................................................................... 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: Configuración de red y dispositivos utilizados para las pruebas. ............................... 69

Figura 5.2: Ilustración de los tiempos involucrados en una transacción HTTP de Apache

Benchmark. ................................................................................................................................... 72

Figura 5.3: Gráficas de los escenarios obtenidas con Apache Benchmark. .................................. 73

Figura 5.4: Gráficas de los escenarios obtenidas con NameBench. ............................................. 77

Figura 5.5: Gráficas de los escenarios impares obtenidas con el script. ....................................... 81

Figura 5.6: Gráficas de los escenarios pares obtenidas con el script ............................................ 82

Figura A.1: Datos evaluación web, escenario 1 ............................................................................ 90

Figura A.2: Datos evaluación web, escenario 2 ............................................................................ 91

Figura A.3: Datos evaluación web, escenario 3. ........................................................................... 91

Figura A.4: Datos evaluación web, escenario 4. ........................................................................... 92

Figura A.5: Datos evaluación web, escenario 5 ............................................................................ 92

Figura A.6: Datos evaluación web, escenario 6 ............................................................................ 93

Figura A.7: Datos evaluación web, escenario 7 ............................................................................ 93

Figura A.8: Datos evaluación web, escenario 8 ............................................................................ 94

Figura A.9: Datos evaluación web, escenario 9 ............................................................................ 94

Figura A.10: Datos evaluación web, escenario 10 ........................................................................ 95

Figura A.11: Datos evaluación DNS, escenario 1 ........................................................................ 96

Figura A.12: Datos evaluación DNS, escenario 2 ........................................................................ 96

Figura A.13: Datos evaluación DNS, escenario 3 ........................................................................ 97

Figura A.14: Datos evaluación DNS, escenario 4 ........................................................................ 97

Page 9: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

9

Figura A.15: Datos evaluación DNS, escenario 5 ........................................................................ 98

Figura A.16: Datos evaluación LDAP, escenario 1 ...................................................................... 99

Figura A.17: Datos evaluación LDAP, escenario 2 ...................................................................... 99

Figura A.18: Datos evaluación LDAP, escenario 3 .................................................................... 100

Figura A.19: Datos evaluación LDAP, escenario 4 .................................................................... 100

Figura A.20: Datos evaluación LDAP, escenario 5 .................................................................... 101

Figura A.21: Datos evaluación LDAP, escenario 6 .................................................................... 101

Figura A.22: Datos evaluación LDAP, escenario 7 .................................................................... 102

Figura A.23: Datos evaluación LDAP, escenario 8 .................................................................... 102

Figura A.24: Datos evaluación LDAP, escenario 9 .................................................................... 103

Figura A.25: Datos evaluación LDAP, escenario 10 .................................................................. 103

Page 10: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

10

Í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 pequeñas y medianas empresas... 46

Tabla 4.3: Análisis de funcionalidades de VMware vSphere según requerimientos y

restricciones de la DCSC .............................................................................................................. 47

Tabla 4.4: Detalle de las distintas versiones de Citrix XenServer ................................................ 50

Tabla 4.5: Análisis de funcionalidades de Citrix XenServer según requerimientos y restricciones

de la DCSC ................................................................................................................................... 51

Tabla 4.6: Análisis de funcionalidades de Xen según los requerimientos y restricciones de la

DCSC. ........................................................................................................................................... 54

Tabla 4.6: Análisis de funcionalidades de KVM según los requerimientos y restricciones de la

DCSC. ........................................................................................................................................... 56

Tabla 4.8: Análisis de Proxmox Virtual Environment según 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

Page 11: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

11

Capítulo 1

1. INTRODUCCIÓN

Dentro de las empresas e instituciones como las universidades, es común que se ofrezcan

servicios de red tales como sitios web, directorio de personas, nombres de dominio, entre otros.

Adicionalmente, se encuentran muchas aplicaciones de carácter interno que también están

basadas en la red, como sitios de control de versiones para documentos, sistemas de gestión, etc.

Todos estos servicios y aplicaciones requieren de un servidor para ejecutarse. Según la cantidad

de servicios y aplicaciones, la cantidad y variedad de servidores dentro de las empresas o

instituciones suele ser considerable, generándose así problemas importantes en términos de su

administración y mantención.

Entre los problemas más comúnmente 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 adquisición de servidores, ya que cada plataforma debe tener su o sus propios

servidores dedicados. Adicionalmente, para plataformas que no son de código abierto, se

requiere la adquisición de licencias, lo que impacta el manejo del presupuesto.

La subutilización 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 aplicación BIND DNS [2], no tendrá una utilización de CPU mayor al 15%

[3].

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

recursos, la administración y mantención de estos servidores puede volverse

problemática. Por ejemplo, el retiro de servidores para mantención o actualización de

software o hardware, requiere la activación 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

Page 12: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

12

infraestructura que permitiera integrar una gran variedad de sistemas operativos dentro de ella y

que fuera fácil de administrar y mantener en el tiempo, lo cual se pudo lograr mediante la técnica

de virtualización.

La virtualización es una técnica mediante la cual, los recursos de un computador (CPU, RAM,

almacenamiento y tarjetas de red) se asignan, de manera dinámica, a distintos procesos. Estos

procesos tienen la cualidad de representar una máquina virtual, con las mismas funcionalidades

de un computador. Cada máquina virtual tiene su propio sistema operativo y tiene acceso a todos

los recursos de la máquina física, además de ser independiente del resto de las máquinas

virtuales.

El proceso maestro encargado de asignar los recursos entre las máquinas virtuales se conoce

como el Administrador de Máquinas Virtuales (Virtual Machine Monitor o VMM), que crea una

capa de abstracción entre el hardware de la máquina física (conocida también como host) y el

sistema operativo de cada máquina virtual. Este administrador es el encargado de asignar los

recursos entre las máquinas virtuales (también conocidas como guests), permitiendo ejecutar

distintos sistemas operativos, dentro de una sola máquina física.

Entre los beneficios reportados de la técnica de virtualización [7], destacan el ahorro de

máquinas físicas, estimado en una razón de hasta 20:1 [8], la reducción en consumo eléctrico, el

que se estima cercano a los 7000 [kW/h] anuales por servidor virtualizado, y la mejora en los

porcentajes de utilización de servidores (de un rango de 5-15% a 60-80%).

La principal desventaja de la técnica de virtualización consiste en la poca tolerancia a fallas, ya

que si falla la plataforma física, fallan también todas máquinas virtuales que se ejecutan sobre

ella. Otra desventaja que presenta la virtualización es la degradación de servicio, ya que si un

servidor tiene muchas máquinas virtuales, estas deben compartir los recursos físicos del servidor

host, lo cual introduce retardos en las respuestas de las máquinas virtuales.

Dados los beneficios y desventajas de la técnica de virtualización, antes de implementarla en

cualquier institución es necesario un análisis previo de requerimientos ya que no todos los

servicios se benefician de su puesta en marcha. Por ejemplo, una aplicación masiva como un

sitio web que tiene un alto número de visitas, no se ejecutaría dentro de una máquina virtual,

dadas las limitaciones en tiempos de respuesta.

Page 13: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

13

El objetivo de este trabajo de título es el análisis y la implementación de virtualización dentro de

la Dirección Central de Servicios Computacionales de la Universidad Técnica Federico Santa

María. Para conseguir este objetivo, el trabajo consistirá en las siguientes etapas:

Análisis de la necesidad de implementar virtualización dentro de la institución. Esta etapa

incluirá un análisis de los servicios requeridos por la institución y sus requerimientos de

hardware.

Análisis y estudio de las diversas herramientas de virtualización disponibles en la

actualidad, tomando en cuenta lo que cada una de ellas ofrece en comparación a los

requerimientos anteriormente señalados,

Implementación primaria de la herramienta seleccionada, a fin de estudiar su

comportamiento

Evaluación de desempeño de la implementación, en cuanto a beneficios y a pérdidas o

costos que podrían repostarse tras una implementación definitiva.

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

El capítulo 2 abordará el tema de virtualización, con su definición y evolución histórica. Además

se presentarán de los tipos de virtualización existentes, finalizando con sus ventajas y

desventajas.

Por su parte, en el capítulo 3 se analizará la situación dentro de la Dirección Central de Servicios

Computacionales, desde donde se obtendrán los requerimientos base para la búsqueda de una

solución.

En el capítulo 4 se presentará el estudio de las herramientas de virtualización existentes en la

actualidad, analizándolas según los requerimientos del capítulo 3 para así encontrar una solución

final.

Por otra parte, en el capítulo 5 se presentará el análisis posterior a la implementación primaria de

la herramienta elegida anteriormente. Se realizará una proyección de los beneficios que se

obtendrán y de los costos que se deberán asumir.

Page 14: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

14

Finalmente, en el capítulo 6 se presentarán las conclusiones obtenidas y los futuros trabajos que

se podrán realizar tras esta memoria.

Page 15: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

15

2. REFERENCIAS

[1] Domain Name System – Wikipedia, the free encyclopedia [en línea]

<http://en.wikipedia.org/wiki/Domain_Name_System> [consulta: 31 de marzo de 2011]

[2] BIND – Wikipedia, the free encyclopedia [en línea] <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, O’Reilly & Associates, 2006.

[4] VMware customer story, KAZ Computing - VMware. [en línea]

<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 línea]

<http://www.microsoft.com/casestudies/Case_Study_Detail.aspx?CaseStudyID=1000004028>

[consulta: 10 de octubre de 2010]

[6] VMware customer story, nworks – VMware. [en línea].

<http://www.vmware.com/files/pdf/customers/07Q3_ss_vmw_Nworks_English.pdf> [consulta:

10 de octubre de 2010]

[7] LÓPEZ-VALLEJO M., HUEDO E., GARBAJOSA J. Informe de Vigilancia Tecnológica

madri+d “Green IT: tecnologías para la eficiencia energética de los sistemas TI”. [en línea]

Fundación madri+d para el Conocimiento. Madrid (España). 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 línea]

<http://www.vmware.com/files/pdf/VMware-GREEN-IT-OVERVIEW-SB-EN.pdf> [consulta:

11 de octubre de 2010]

Page 16: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

16

Capítulo 2

VIRTUALIZACIÓN

En este capítulo se describirá en mayor detalle la técnica de virtualización y cuál ha sido su

evolución en el tiempo. También se presentarán los distintos tipos de virtualización existentes

actualmente y por último, se abordarán las ventajas y desventajas que presenta esta técnica.

1. ASPECTOS DE LA TÉCNICA DE VIRTUALIZACIÓN.

Como primera parte, se realizará una definición de lo que trata la de virtualización, describiendo

otros términos que ayudarán a comprenderla. Además de esto, se realizará una reseña histórica

respecto de ella, desde sus inicios hasta nuestros días, la cual ayudará a comprender su evolución

histórica.

1.1. DEFINICIÓN.

Tal como se presentó en la introducción, la virtualización es una técnica que permite ejecutar

diversos procesos que simulan una máquina real, conocidos como máquinas virtuales (guests),

dentro de una máquina física (host). Cada una de estas máquinas virtuales tendrá asignada

instancias de cada uno de los recursos de hardware (CPU, memoria RAM, almacenamiento y

dispositivos de red) que posea la máquina física y operará de manera independiente del resto de

las máquinas virtuales instaladas en el mismo host.

El Administrador de Máquinas Virtuales (Virtual Machine Monitor o VMM), es el proceso

encargado de administrar los recursos de hardware de la máquina física, asignándolos de manera

dinámica y transparente a cada una de las máquinas virtuales. Además de esto, el VMM es el

encargado de proveer la independencia a cada una de las máquinas virtuales.

La asignación de recursos por parte del VMM, se lleva a cabo mediante algoritmos de

planificación o de scheduling. Dentro de los distintos tipos de algoritmos utilizados, se encuentra

el Planificador Basado en Créditos [1] (Credit-Based Scheduler).Este algoritmo considera dos

valores, el primero es weight, que indica la porción de CPU física que le corresponde a cada

CPU de máquina virtual o CPU virtual y el cap, que indica el tiempo de utilización de la CPU

física por parte de la CPU virtual. Estos valores son los encargados de asignar prioridad de uso

Page 17: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

17

de CPU a cada máquina virtual. Además, cada CPU virtual tiene una variable llamada crédito, la

cual puede tomar dos valores over, si la CPU física ya fue utilizada y under, si aún no. El

algoritmo funciona de la siguiente forma:

Se inicializan todas las variables de crédito 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 física, se cambia la variable de crédito de la CPU

virtual a estado over y se atiende a la CPU con mayor weight y que se encuentre con

variable crédito en estado under.

Este algoritmo es utilizado en Xen, un VMM código abierto y en el que se ahondará en detalle en

la sección 1.2.1 del capítulo 4.

Además de este algoritmo, algunos VMM utilizan algoritmos de planificación incorporados en el

núcleo (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 núcleo de Linux, lo cual es aprovechado por el VMM de código abierto

KVM, del cual se profundizará con mayor detalle en la sección 1.2.2 del capítulo 4

1.2. HISTORIA.

El concepto de virtualización no es reciente, ya a comienzo de la década de 1960 el proyecto

Atlas [3] desarrollado entre la Universidad de Manchester y Ferranti Ltd., constaba en un

computador que, entre otras características, ejecutaba un programa supervisor de rutinas de extra

código (Supervisor Extracode Routines o S.E.R.), que se ejecutaba en una especie de máquina

virtual y otra de estas máquinas virtuales era utilizada para ejecutar programas de usuario [4].

Otra empresa precursora de la virtualización fue IBM, que a mediados de la década de 1960

trabajó en el proyecto M44/44X [5] que constaba de una máquina base (M44) modelo 7044, y el

resto eran máquinas virtuales de la máquina 7044 (44X). El objetivo tras esto era el aprovechar

al máximo el hardware disponible en los grandes y costosos computadores de la época

(mainframes) de manera de ejecutar múltiples tareas (multitasking) en este computador.

Page 18: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

18

Para finales de la década de 1960 y comienzos de la década de 1970, IBM desarrolló otros

proyectos tales como el sistema operativo CP-40 [6], desarrollado para el sistema S360/40 y que

permitía ejecutar multiples instancias de sistemas operativos clientes, además es considerado

como el primer sistema operativo en implementar virtualización completa. Luego, se desarrolló

el CP-67 [7], basado en CP-40, para el sistema S360/67, entre otros [8].

Para finales de la década de 1970 y la década de 1980, la virtualización perdió terreno con la

aparición de los computadores de escritorio y los servidores con arquitectura x86. Pero el interés

por tener plataformas fáciles de administrar y los intentos por abaratar costos en la

infraestructura de tecnologías de la información en las empresas, reimpulsaron la investigación y

el desarrollo de esta técnica, lo cual se refleja en el hecho de que para la segunda mitad de la

década de 1990, empresas como VMware [9] comenzaran a explotar este nicho, ofreciendo

soluciones para servidores y computadores de escritorio.

Para la primera década del siglo XXI, la virtualización ha tenido un gran auge, de la mano de

soluciones propietarias ofrecidas por empresas como Microsoft [10], VMware, Citrix [11], entre

otras. Además de estas, existe una importante cantidad de soluciones de tipo código abierto, tales

como Xen [12], KVM [13], OpenVZ [14], entre otras. Además de esto, las empresas

desarrolladoras de procesadores como Intel y AMD han contribuido a este auge desarrollando

tecnología compatible con virtualización, como Intel VT [15] y AMD-V [16], las cuales han

facilitado la implementación de esta técnica tanto en computadores de escritorio como en

servidores.

2. TIPOS DE VIRTUALIZACIÓN.

En esta sección se describirán los tipos de virtualización existentes: la virtualización a nivel de

sistema operativo y la virtualización a asistida por hardware. Se detallan las características

principales y los principales exponentes de cada uno de estos tipos.

2.1. VIRTUALIZACIÓN A NIVEL DE SISTEMA OPERATIVO.

Esta tipo de virtualización permite al núcleo del sistema operativo tener múltiples copias o

instancias de un mismo sistema operativo, tal como se puede apreciar en la figura 1. Cada una de

Page 19: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

19

estas copias es independiente de la otra, es decir, un proceso que se encuentra ejecutándose en

una copia A no afectará directamente a otro proceso que se encuentra en la copia B.

Para conseguir esta independencia, el núcleo del sistema operativo es quien maneja la asignación

de los recursos a fin de que no existan problemas entre las copias.

Figura 2.1: Esquema de virtualización a nivel de sistema operativo

Dentro de las ventajas de este tipo de virtualización 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 técnica de virtualización asistida por hardware, que si lo necesitan.

La desventaja de este tipo de virtualización consiste en que sólo permite copias del mismo

sistema operativo, dado que el núcleo es el mismo para todas estas copias. Por lo tanto, en el

caso de que necesitaran máquinas virtuales con sistemas operativos de distinto núcleo (por

ejemplo, una máquina con Microsoft Windows y otra con FreeBSD), este tipo de virtualización

no servirá.

Ejemplos de herramientas que usan este tipo de virtualización son: FreeBSD jails [17], Solaris

Zones [18] y OpenVZ [14].

2.2. VIRTUALIZACIÓN A NIVEL DE HARDWARE.

La virtualización de hardware permite ejecutar diversos sistemas operativos dentro de una misma

máquina física, lo cual marca una diferencia con lo visto anteriormente.

Dentro de esta modalidad existen dos subtipos de virtualización, los cuales son: full-

virtualización y para-virtualización.

Copia A Copia B Copia N …

Sistema Operativo

Hardware

Page 20: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

20

2.2.1. FULL-VIRTUALIZACIÓN.

En este subtipo, el administrador de máquinas virtuales o VMM, es el encargado de permitir el

acceso de cada máquina virtual a los recursos de hardware físico existentes en la máquina física,

entregando un acceso transparente a los recursos de hardware a cada una de las máquinas

virtuales existentes. Como se explicó en un comienzo, el acceso al hardware se realiza mediante

algoritmos de planificación o de scheduling, los cuales asignan los recursos de hardware entre las

máquinas virtuales. La figura 2 presenta un esquema de cómo funciona este subtipo de

virtualización. Dentro de los componentes se destaca el administrador de máquinas virtuales

(VMM), compuesto generalmente por un sistema operativo base y alguna herramienta de

virtualización (como Xen o KVM) y las herramientas de administración, que brindan utilidades

extra, las cuales dependerán de la herramienta de virtualización (ver Cap. 4).

Figura 2.2: Esquema de full-virtualización

Esta técnica tiene como principal desventaja que el acceso a hardware mediante algoritmos de

scheduling introduce cierta sobrecarga en el sistema, ya que por cada máquina virtual que

requiere acceso a los recursos de hardware, el administrador de máquinas virtuales debe ejecutar

dicho algoritimo. Sin embargo, en la actualidad esto se ha visto mejorado de cierta forma,

especialmente con la aparición de las tecnologías de virtualización desarrolladas por los distintos

fabricantes de hardware, como lo es en el caso de Intel y AMD, quienes han desarrollado

procesadores con tecnología Intel VT-x [15] y AMD-V [16] respectivamente, tecnologías que

permiten un mejor desempeño en la asignación de CPU a las máquinas virtuales.

Ejemplos de herramientas de virtualización que utilizan esta subclase de técnica son: VMware

ESXi [20], Citrix Xenserver [21] y KVM [13].

Guest 1 Guest 2

Admin.

Tools

VMM

Hardware

Page 21: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

21

2.2.2. PARAVIRTUALIZACIÓN.

Esta subclase se caracteriza por proveer una API (Application Programming Interface o Interfaz

de Programación de Aplicaciones) [22] especial, la cual busca optimizar el acceso a los recursos

de hardware, agilizándolo. Para utilizar esta API, tanto el sistema operativo que reside en la

máquina física o host, como el sistema operativo a virtualizar o guest, deben modificarse. La

figura 3 presenta un esquema de este tipo de virtualización, destacándose la API que debe tener

cada sistema operativo guest. Los roles del VMM y de las herramientas de administración

(Admin. Tools) son iguales a los expuestos en full-virtualización

Figura 2.3: Esquema de paravirtualización

La principal ventaja que tiene esta subclase es que provee de tiempos de respuesta mejores que

en el caso de las máquinas virtuales que se encuentran full-virtualizadas especialmente en

aquellas máquinas físicas que no cuentan con tecnologías que apoyan la virtualización. La

principal desventaja es que sólo admiten la ejecución de sistemas operativos de código abierto,

ya que solo estos pueden ser modificados a fin de tener la API de paravirtualización. Ejemplos

de herramientas de virtualización que pertenecen a esta subclase son: Xen [12] y Denali [23].

3. VENTAJAS DE LA VIRTUALIZACIÓN.

A continuación se abordarán las principales ventajas que ofrece la virtualización, profundizando

en cada una de ellas.

Modif.

Guest 1 Admin.

Tools

VMM

Hardware

Modif.

Guest 2

API API

Page 22: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

22

3.1. CONSOLIDACIÓN DE SEVIDORES.

El concepto de consolidación de servidores [24] hace referencia a la utilización eficiente de los

recursos que ofrecen los servidores, apuntando a la disminución de la cantidad de servidores con

los que se ofrece un determinado conjunto de servicios.

Este concepto nace a raíz de estudios realizados por especialistas, tales como Tony Iams, quien

en [24] declara que “típicamente, los servidores trabajan entre un 15 a un 20% de su

capacidad”. Un ejemplo de esta situación se encuentra en [26], donde se reporta que la

utilización de CPU que puede llegar a tener un servicio como BIND DNS [25], es apenas del

10% [26]. Siendo esta una situación común, es fundamental utilizar herramientas que permitan

aprovechar los recursos de hardware disponibles.

Al permitir la ejecución de múltiples máquinas virtuales dentro de una máquina física, la técnica

de virtualización aporta a la reducción de servidores físicos necesarios para satisfacer los

requerimientos de servicios de información de las instituciones. Además de lo anterior, la

virtualización permite una mejor utilización de los recursos de hardware en los servidores, ya

que según estudios de empresas como VMware, la utilización 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

máquinas virtuales que se ejecuten dentro del servidor y de los servicios que estas máquinas

virtuales entreguen.

3.2. AHORROS

Otra de las ventajas que presenta la virtualización, son los ahorros económicos, de infraestructura

y de consumo de electricidad que se pueden generar tras su implementación.

Uno de los ahorros generados es el de hardware, ya que como se pudo entender del punto de

consolidación de servidores, uno de los fines es la reducción del hardware existente, lo que

conduce a una disminución en la adquisición de hardware por parte de las empresas e

instituciones. Según análisis 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 tamaño del

proyecto.

Page 23: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

23

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 también un ahorro en consumo de electricidad.

Según estimaciones obtenidas tras casos de estudios, empresas como VMware [27] aseguran que

el ahorro que se puede alcanzar en cuanto a consumo eléctrico puede llegar a ser de un 80%, lo

cual depende del tamaño del proyecto.

3.3. ADMINISTRACIÓN

La administración de plataformas también se ve beneficiada con la virtualización, ya que tal

como se mencionó en la introducción, una de las claves de esta técnica es que facilita la

administración de servidores.

Todas las herramientas de virtualización existentes, ya sean comerciales o de código abierto,

poseen programas especiales que facilitan la administración de las máquinas virtuales mediante

la administración de los recursos de hardware que se asignan a cada una de las máquinas

virtuales, la creación máquinas virtuales y el monitoreo de cada una de las máquinas virtuales

dentro de los servidores.

La administración de recursos de hardware determina cómo se asignan de los recursos de la

máquina física a cada una de las máquinas virtuales existentes dentro de un servidor. Esto es

importante al momento de la creación de cada máquina virtual, ya que se permite establecer los

requerimientos de hardware como cantidad de memoria RAM y cantidad de núcleos de CPU.

Además de esto, los parámetros pueden ser modificados, a fin de agregar más recursos a una

máquina virtual en particular.

La facilitación de la creación de las máquinas virtuales radica en la rapidez con que puede

llevarse a cabo esta tarea, ya que no tan solo se permite crear una máquina de la manera

convencional, es decir, instalando el sistema operativo y luego configurarlo, a fin de que preste

Page 24: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

24

sus servicios, sino que también se permite manejar máquinas con configuración por omisión, las

que pueden ser utilizadas como modelo estándar para la creación de máquinas de manera más

rápida. La creación de máquinas en base a esta especie de máquina estándar se puede realizar

mediante técnicas de clonación de máquinas, las cuales en la actualidad son ofrecidas por gran

parte de las herramientas de virtualización existentes.

Finalmente, el monitoreo de máquinas virtuales comprende tareas como la actualización de

software y hardware de máquinas virtuales y el remplazo de máquinas virtuales. En el último

caso, sobre todo las máquinas que presten servicios críticos que no pueden dejar de ejecutarse.

En esta situación, el reemplazo puede realizarse de manera simple, dado que si se requiere retirar

alguna máquina virtual de funcionamiento, ya sea para actualización o revisión, basta con crear

otra máquina virtual con la misma configuración y dejarla en funcionamiento, reemplazando a la

que se actualizará o retirará. Esto evita problemas de continuidad de servicio, lo cual será crítico

en la medida de la importancia del servicio que la máquina virtual ofrezca.

Algunas de las herramientas de virtualización cuentan con interfaz gráfica, 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 línea de comando, como

virsh [31] en Xen y KVM.

3.4. INTEGRACIÓN DE HARDWARE.

Hasta este punto el enfoque parece considerar solamente un servidor y sus máquinas virtuales,

pero ¿qué sucede en el caso de que exista más de un servidor físico con máquinas virtuales? La

respuesta a esta pregunta es que la virtualización también permite integrar distintos servidores

físicos a fin de realizar tareas que permitan un mejor uso del hardware existente. Muchas

herramientas, tanto comerciales como código abierto, permiten integrar servidores, a fin de que

estos conformen una plataforma unificada, donde los recursos de cada servidor se encuentren

disponibles para las máquinas virtuales existentes dentro del sistema.

La principal funcionalidad que se destaca en el caso de la integración de servidores es la de la

migración de máquinas virtuales mientras se encuentran ejecutando. Esto es, cambiar una

máquina virtual de un servidor a otro mientras cumple sus funciones. Esta funcionalidad es muy

útil al momento de que sea necesario cambiar máquinas virtuales que ofrezcan servicios críticos,

Page 25: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

25

de un servidor a otro, lo cual puede ser necesario en caso de requerir una mantención del servidor

físico que involucre desconectarlo, asegurando que los servicios seguirán en funcionamiento.

Gran parte de las herramientas de virtualización actuales, tanto las comerciales como XenServer

[33] y VMware ESXi [34], como las de código abierto como Xen [35] y KVM [36], ofrecen esta

funcionalidad.

3.5. TECNOLOGÍA VERDE.

Además de beneficios desde el punto de vista de tecnologías de la información, las implicancias

de la virtualización llegan a otras áreas, como por ejemplo el medio ambiente. Se reconoce a la

virtualización como una Tecnología Verde [37] (Green Computing o Green IT) dadas sus

características, que aportan a la eficiencia en la utilización de los recursos, lo cual minimiza el

impacto que pueden producir en el medio ambiente, a la reducción en el consumo de

electricidad, como se pudo apreciar anteriormente, lo cual también conduce a una reducción en la

emisión de dióxido de carbono al medio ambiente.

Según estimaciones de firmas como IDC [38], citadas en muchos estudios de impacto de la

virtualización en el medio ambiente [39], dice que cada servidor emite aproximadamente 4

toneladas de dióxido de carbono anuales al ambiente, lo cual es considerable al momento de

analizar si dentro de la empresa o institución existen servidores que se encuentran funcionando a

niveles menores del 20%, tal como se vio anteriormente, ya que se tienen potenciales

contaminantes, los cuales podrían ser reducidos tomando las medidas adecuadas. Es por esto que

tecnologías como la virtualización se hacen necesarias de implementar, ya sea en las empresas o

instituciones.

4. DESVENTAJAS DE LA VIRTUALIZACIÓN.

Como toda tecnología, la virtualización posee ciertas desventajas, las cuales apuntan a la

degradación de los servicios que una máquina virtual ofrece, comparado con los mismos

servicios que ofrecería una máquina física, la necesidad de redundancia y la necesidad de

hardware que permita llevar a cabo las tareas de virtualización.

Page 26: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

26

4.1. DEGRADACIÓN DE SERVICIOS.

Esto se produce especialmente cuando se usa virtualización en servidores que no poseen

hardware con soporte para virtualización, tal como se mencionó en el punto de full-

virtualización. En este caso, se produce una gran sobrecarga en el administrador de máquinas

virtuales, dado que este proceso es el encargado de emular el hardware de cada máquina virtual.

Este problema se acentúa a medida que existan más máquinas 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 realización 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 tecnología que facilite la virtualización, o la paravirtualización (recomendada en

casos de hardware sin soporte para virtualización), siempre existirá cierto nivel de degradación

en las máquinas virtuales.

5. RESUMEN.

En este capítulo se ha descrito el concepto de virtualización, a fin de que se puedan comprender

los aspectos más relevantes de la técnica de virtualización y su evolución histórica.

Además de esto, se han discutido tanto las ventajas como desventajas de esta técnica, las cuales

deben ser consideradas al momento de iniciar un proyecto de virtualización, lo cual será el tema

principal del próximo capítulo.

Page 27: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

27

6. BIBLIOGRAFÍA.

[1] Credit-Based CPU Scheduler. [en línea]

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

[2] Completely Fair Scheduler – Wikipedia, the free encyclopedia. [en línea]

<http://en.wikipedia.org/wiki/Completely_Fair_Scheduler> [consulta: 27 de diciembre de 2010].

[3] Computer History – Ferranti Atlas Computer. [en línea]

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

diciembre de 2010].

[4] An Introduction to Virtualization – kernelthread.com [en línea]

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

[5] IBM_M44/44X - Wikipedia, the free encyclopedia. [en línea]

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

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

[consulta: 29 de diciembre de 2010].

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

[consulta: 29 de diciembre de 2010].

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

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

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

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

[consulta: 29 de diciembre de 2010].

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

2010].

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

Page 28: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

28

[13] Kernel-Based Virtual Machine Site [en línea] <http://www.linux-kvm.org/> [consulta: 29 de

diciembre de 2010].

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

[15] Virtualization Technologies from Intel [en línea]

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

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

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

[17] Jails – The FreeBSD Handbook [en línea]

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

[18] System Administration Guide: Oracle Solaris 9 Containers [en línea]

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

[19] Binary Translation – Wikipedia, the free encyclopedia [en línea]

<http://en.wikipedia.org/wiki/Binary_translation> [consulta: 30 de diciembre de 2010].

[20] VMware vSphere Hypervisor (Based on VMware ESXi) – VMware [en línea]

<http://www.vmware.com/products/vsphere-hypervisor/> [consulta: 30 de enero de 2010].

[21] Citrix Xenserver – Citrix Systems [en línea]

<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 línea]

<http://en.wikipedia.org/wiki/Application_programming_interface> [consulta 30 de diciembre

de 2010]

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

2010].

[24] What is Server Consolidation? – SearchDataCenter.com [en línea]

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

2011].

Page 29: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

29

[25] INTERNET SYSTEM CONSORTIUM. BIND DNS. [en línea]

<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, O’Reilly & Associates, 2006.

[27] How to WMware Right-size IT Infrastructure to Reduce Power Consumption – VMware [en

línea] <http://www.vmware.com/files/pdf/WhitePaper_ReducePowerConsumption.pdf>

[consulta: 4 de enero de 2011].

[28] Xenserver, How it helps – Citrix Systems [en línea]

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

enero de 2011].

[29] XenCenter, Xenserver – Citrix Community [en línea]

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

[30] VMware vSphere – VMware [en línea] <http://www.vmware.com/products/vsphere/>

[consulta: 4 de enero de 2011].

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

[consulta: 4 de enero de 2011].

[32] Virtual Machine Manager [en línea] <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 línea]

<http://www.vmware.com/products/vmotion/> [consulta: 5 de enero de 2011].

[34] Everything you always wanted to know about XenMotion – Citrix Community [en línea]

<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 línea] <http://www.cl.cam.ac.uk/research/srg/netos/papers/2005-

migration-nsdi-pre.pdf> [consulta: 5 de enero de 2011].

Page 30: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

30

[36] Migration – KVM [en línea] <http://www.linux-kvm.org/page/Migration> [consulta: 5 de

enero de 2011].

[37] Green Computing – Wikipedia, the free encyclopedia [en línea]

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

[38] IDC Home [en línea] <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 línea]

<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 línea]

<http://people.clarkson.edu/~jmatthew/publications/isolation_ExpCS_FINALSUBMISSION.pdf

> [consulta: 6 de enero de 2011].

Page 31: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

31

Capítulo 3

ANÁLISIS DENTRO DE LA DIRECCIÓN CENTRAL DE SERVICIOS

COMPUTACIONALES (DCSC)

En este capítulo se analiza la situación actual de la Dirección Central de Servicios

Computacionales (DCSC), perteneciente a la Universidad Técnica Federico Santa María, desde

el punto de vista de los servicios que ésta ofrece. Posteriormente se definen los objetivos que la

DCSC se busca alcanzar tras la implementación de virtualización, contrastando esto con las

ventajas mencionadas en el capítulo anterior. A partir de este análisis y definición de objetivos,

se obtendrán una serie de requisitos base, los cuales se utilizarán al momento de seleccionar una

futura solución.

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 Información y Gestión Académica (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 utilización 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 cómputo. Además, estos

computadores ocupan recursos, tales como las UPS (Uninterruptible Power Supply) [7], las

cuales podrían ofrecer una mayor autonomía a los servidores, frente a cortes de electricidad, si se

pudiera eliminar estos computadores.

Dadas las ventajas que ofrece la virtualización (analizadas en el capítulo anterior), la DCSC ha

decidido realizar un estudio de factibilidad de implementación de dicha técnica. Para esto, en el

Page 32: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

32

marco de este trabajo de título se investigará y evaluará, mediante pruebas experimentales, la

factibilidad y beneficios de implementar virtualización. Para las investigaciones se evaluarán

varias herramientas disponibles en la actualidad, tanto de código abierto como licenciadas, a fin

de elegir una solución que satisfaga los requerimientos planteados por esta unidad.

2. OBJETIVOS TRAS LA IMPLEMENTACIÓN DE VIRTUALIZACIÓN.

Los objetivos que la DCSC busca alcanzar con la virtualización son los siguientes:

Ejecutar diversos sistemas operativos (Windows, Unix y Linux) dentro de una misma

máquina. 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 administración de los servidores. A fin de que tareas como retiro de servidores

para actualización, creación y modificación de nuevos servidores sean tareas más

simples, tal como se expuso en la sección 3.3 del capítulo 2.

Conseguir integración de hardware. Conseguir una herramienta que permita administrar

múltiples servidores físicos ejecutando máquinas virtuales, a fin de ofrecer una mejor

calidad de servicio.

A continuación se profundizaran estos objetivos, relacionándolos con las ventajas presentadas en

la sección 3 del capítulo 2.

2.1. EJECUCCIÓN DE DIVERSOS SISTEMAS OPERATIVOS DENTRO DE UNA

MISMA MÁQUINA.

Como primer requerimiento se tiene que la solución propuesta debe permitir la ejecución de

varias máquinas virtuales dentro de una misma máquina física. En este caso, cada máquina

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 razón que se requiere una plataforma que permita ejecutar servidores

virtuales con alguno estos sistemas operativos.

Page 33: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

33

Dentro de los tipos de virtualización analizados en el capítulo anterior, se hizo mención tanto a la

virtualización tanto a nivel de sistema operativo como la virtualización a nivel de hardware. La

primera es una buena solución cuando se tiene una plataforma conformada con máquinas que

utilicen sistemas operativos con un mismo núcleo, como lo sería el caso de que se utilizaran

máquinas con distribuciones Linux. La segunda, permite crear máquinas independientes, cada

una con su propio hardware. Este enfoque hace posible la ejecución de máquinas con sistemas

operativos independientes del sistema operativo base del sistema, por ende, la solución debe

considerar este tipo de virtualización (virtualización a nivel de hardware).

Como se describe en la sección 2.2 del capítulo 2, la virtualización a nivel de hardware se

clasifica en dos subtipos: la paravirtualización y la full-virtualización.

La paravirtualización requiere de sistemas operativos con modificaciones que los hagan

compatibles con la técnica de virtualización, 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 código abierto. Sin embargo, en el caso

de sistemas operativos con código fuente cerrado, como Microsoft Windows, esto no se puede

realizar. Por lo tanto, con este tipo de sistema operativo la paravirtualización no es factible aún.

Por otra parte, la full-virtualización 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 virtualización (En este caso se cuenta con un procesador Intel modelo

E5310 [12], con tecnología Intel VT-x [13]), lo cual hace considerar herramientas que contengan

full-virtualización como una solución.

2.2. ADMINISTRACIÓN 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 administración de servidores,

tales como la creación rápida de servidores, el monitoreo centralizado de los servidores, la

modificación de recursos asignados a los servidores, el inicio automático de las máquinas

virtuales junto con el inicio de la máquina física y la migración de máquinas físicas a máquinas

virtuales (proceso conocido como P2V).

Page 34: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

34

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 situación similar sucede

cuando se deben actualizar el sistema operativo o el servicio ejecutado en un servidor, donde

además de realizar esta operación, se debe considerar configurar la redundancia del servicio en

caso de que se trate de uno crítico. En resumen, se tornan tareas engorrosas, las cuales requieren

de solución.

Tal como se presentó en el punto 3.3 del capítulo 2, una de las ventajas de la virtualización es la

simplificación de la administración de las máquinas virtuales, dado que la mayoría de las

herramientas disponibles poseen programas, ya sean con interfaz gráfica o mediante línea de

comando, que hacen más sencilla las tareas de creación, monitoreo, modificación, inicio y

migración de las distintas máquinas virtuales alojadas en una máquina física. De esta manera, es

importante que una futura solución considere la inclusión de herramientas de virtualización que

cuente con este tipo de programas, teniendo en cuenta cuántas de las tareas descritas

anteriormente son posibles de realizar y cuán sencilla es la realización de estas tareas.

En la tarea de creación de una máquina virtual un parámetro importante a considerar es el tiempo

que toma, desde la asignación de recursos de hardware por primera vez a una máquina virtual y

la instalación de su sistema operativo hasta que se ejecuta por primera vez. Además de esto, en la

tarea de crear una máquina virtual debe existir la opción de crear máquinas virtuales en base a

una ya existente. Esto se realiza mediante la clonación de máquinas virtuales, lo que facilita

significativamente la creación de una máquina virtual de similares características a alguna de las

ya existentes.

La tarea de monitoreo necesita que el programa de administración entregue información acerca

del estado de los recursos más importantes (e.g. utilización de disco, RAM, CPU y dispositivos

de red) de cada una de las máquinas virtuales y de la máquina física, a fin de comprender lo que

sucede en cada momento dentro de la plataforma y detectar posibles fallas de manera rápida.

La funcionalidad de modificación de recursos de una máquina debe permitir cambiar la

asignación de los recursos de hardware (disco duro, CPU, RAM y dispositivos de red) a cada

máquina y, en lo posible, sin detener la máquina virtual a modificar.

Page 35: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

35

Es fundamental que la herramienta de administración permita el inicio automático de máquinas

virtuales al iniciar el servidor o máquina física, ya que esto disminuye los tiempos en los que las

máquinas virtuales pueden recuperar su funcionalidad.

Finalmente, la tarea de migración de máquinas físicas a virtuales (P2V), es muy útil en la

creación de máquinas virtuales con servicios complejos de configurar, pero que ya están

operativos en una máquina física. En ese caso, la migración automática de dicho servicio a una

máquina virtual simplifica significativamente la tarea del administrador.

En resumen, la solución propuesta debe contar con una herramienta de administración que

incluya las funcionalidades que permitan realizar las tareas recién descritas, con la posible

excepción de la migración de máquina física a virtual, para la cual se buscarán alternativas si es

que la herramienta de administración seleccionada no la considerara.

2.3. INTEGRACIÓN DE HARDWARE.

Un tercer requerimiento consiste en la integración de los servidores físicos en una única

plataforma de hardware. De esta manera, no sólo se obtienen ahorros en costos de máquinas

físicas sino que también se aspira a ofrecer servicios con redundancia, lo cual es necesario en

caso de servidores que ejecuten servicios críticos que requieren alta disponibilidad.

Una ventaja adicional de la redundancia que se obtiene con la integración de servidores es que al

contar con una granja (i.e. al menos dos servidores físicos) la tarea de migrar máquinas virtuales

entre máquinas físicas, así como las tareas de actualización, reparación, o modificación de

servicios y servidores físicos pueden realizarse sin necesidad de detener la operación de los

servicios.

Más que una problemática, 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.

Page 36: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

36

3. REQUERIMIENTOS Y RESTRICCIONES.

Descritas las necesidades funcionales por parte de la DCSC, en esta sección se creará una tabla

resumen con los requerimientos base y las restricciones presupuestarias y de tecnologías que

deben considerarse en la generación de la solución final.

3.1. EJECUCIÓN DE DIVERSOS SISTEMAS OPERATIVOS DENTRO DE UNA MISMA

MÁQUINA.

Los sistemas operativos que se requieren que sean soportados tanto por las máquinas físicas

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.

Sistemas operativos guest 2 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. ADMINISTRACIÓN DE SERVIDORES.

Las funcionalidades requeridas en términos de la administración de servidores son las siguientes:

Software de monitoreo y gestión. Se requiere que la herramienta cuente con un software

con interfaz gráfica, por sobre una con software vía línea de comando, dadas las

facilidades de uso que presenta el primero.

Asignación de recursos al guest.

Clonación de máquinas virtuales.

Iniciar máquinas virtuales automáticamente al iniciar el host.

Migración de máquina física a máquina virtual (P2V).

1Corresponde al sistema operativo base que necesita el administrador de máquinas virtuales (VMM) para su

funcionamiento (Ver cap. 2 punto 1.1) 2 Sistemas operativos para las máquinas virtuales (Ver cap.2 punto 1.1)

Page 37: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

37

3.3. INTEGRACIÓN DE HARDWARE.

Migración de máquinas virtuales entre servidores físicos, sin necesidad de detenerla.

3.4. RESTRICCIONES.

Además de los requerimientos recién listados, la DCSC tiene restricciones respecto del

equipamiento de hardware disponible para implementar la virtualización así como el presupuesto

a disposición. Estas restricciones son:

Máxima RAM soportada para el host. Que la herramienta permita trabajar con la mayor

cantidad de RAM posible (de preferencia sobre 32 GB)

Máxima cantidad de núcleos que se pueden asignar a los guest. Que la herramienta

permita asignar la mayor cantidad de núcleos a las máquinas 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 solución final Solución analizada

Req

uerim

ient

os

Sistema operativo hostSistema operativo guestSoftware de monitoreo y gestiónAsignación de recursos al guestClonación de máquinas virtualesIniciar máquinas virtuales automáticamente al iniciar el hostMigración de máquina física a máquina virtual (P2V)Migración de máquinas virtuales entre servidores físicos, sin necesidad de detenerla

Res

tricc

ion

es

Máxima RAM soportada por el hostMáximo número de núcleos que se pueden asignar a los guestPrecio.

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

Por cada herramienta a analizar en el capítulo 4, se completará una tabla similar.

Page 38: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

38

4. RESUMEN.

En este capítulo se presentaron los problemas presentes en la actualidad con la actual

configuración de servidores de la DCSC, los objetivos que se desean alcanzar mediante la

implementación de la técnica de virtualización y las restricciones impuestas en la solución. A

partir de esta información se ha obtenido una lista de requerimientos base con los que debe

cumplir la solución final.

En el siguiente capítulo se estudian diferentes alternativas de solución.

Page 39: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

39

5. BIBLIOGRAFÍA.

[1] LDAP – Wikipedia, the free encyclopedia. [en línea] <http://en.wikipedia.org/wiki/LDAP>

[consulta: 02 de abril de 2011].

[2] INTERNET SYSTEM CONSORTIUM. BIND DNS. [en línea]

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

[3] Portal de Sistema de Gestión Académica [en línea] <https://www.siga.usm.cl/pag/> [consulta

02 de abril de 2011]

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

[5] Universidad Técnica Federico Santa María [en línea] <http://www.usm.cl/> [consulta: 02 de

abril de 2011]

[6] Dell OptiPlex GX280 [en línea]

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

de 2011]

[7] Uninterruptible Power Supply [en línea]

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

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

[consulta: 18 de febrero de 2011].

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

[10] www.centos.org – The Community ENTerprise Operating System [en línea]

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

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

[12] Intel Xeon Processor E5310 [en línea]

<http://ark.intel.com/Product.aspx?id=28030&processor=E5310&spec-

codes=SL9XR,SLACB,SLAEM > [consulta: 02 de abril de 2011]

Page 40: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

40

[13] Virtualization Technologies from Intel [en linea]

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

Page 41: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

41

Capítulo 4

ANÁLISIS DE HERRAMIENTAS DE VIRTUALIZACIÓN

En este capítulo se reporta el estudio de las herramientas de virtualización más utilizadas en la

actualidad. Cada una de ellas se analizará desde la perspectiva de los requerimientos y

restricciones descritas en el capítulo 3. El estudio incluye tanto herramientas propietarias como

herramientas de código abierto. Para el análisis de estas primeras, se dispondrá de la utilización

de las versiones gratuitas que las empresas desarrolladoras de estas han dispuesto para este fin

además de considerar las licencias, en cuanto a funcionalidades ofrecidas y costos de licencias.

Por su parte, las segundas se analizarán mediante la su implementación. Además, por cada

herramienta se confeccionará una tabla, como la presentada al final del capítulo 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 virtualización 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 código abierto, las cuales están

disponibles para su uso gratuito por parte de quién desee utilizarlas. En términos de

funcionalidades ofrecidas, la gran mayoría se encuentra a la par con las ofrecidas por las

herramientas propietarias y su uso se da mayoritariamente en instituciones académicas y de

investigación, además de pequeñas empresas.

1.1. HERRAMIENTAS PROPIETARIAS.

En este estudio se consideraron las dos herramientas más populares existentes en la actualidad,

las cuales son VMware vShpere [1] y Citrix Xenserver [2]. Además de ser las más populares,

estas herramientas ofrecen versiones gratuitas que ofrecen una serie de funcionalidades básicas,

con el fin de promocionar sus ventajas como herramienta de virtualización. Dependiendo del

Page 42: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

42

costo que se pague por la licencia, estas herramientas ofrecen funcionalidades adicionales a las

de la versión gratuita.

1.1.1. VMWARE VSPHERE.

VMware vSphere ha sido desarrollada por VMware [3], la empresa de virtualización más

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 máquinas virtuales,

que se instala en el servidor físico. Además de esto, la herramienta cuenta con un software de

monitoreo remoto llamado vSphere Client, el cual se instala en un computador distinto al

servidor físico, quien juega el rol de cliente. Este modelo tiene la ventaja de que todo el

procesamiento de la información entregada por el servidor físico la realiza este cliente, dejando

al servidor las tareas ligadas a la virtualización y al cliente la de interpretar información, como

un monitor. Además del monitoreo, todas las ordenes de administración se pueden ejecutar desde

este cliente (creación y actualización de máquinas virtuales, etc.)

Además de este cliente, VMware vSphere ofrece una interfaz web de monitoreo del servidor, el

cuál se ejecuta dentro del servidor físico 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 básica de VMware vSphere, que corresponde a la versión

gratuita de esta herramienta.

Figura 4.1: Arquitectura de funcionamiento de VMware vSphere3

3Hecho en base a referencia: http://www.101datasolutions.co.uk/wp-content/uploads/2008/07/vmware-esxi.gif

Hardware servidor

MV1 MV2

VMware vShpere (ESXi)

Hardware cliente

Sistema operativo

vSphere Client

Page 43: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

43

En la figura se distinguen los siguientes componentes:

Servidor (izquierda): Es donde reside la herramienta de virtualización. VMware vSphere

es la capa que realiza las tareas de administrador de máquinas virtuales (ver capítulo,

figura). Esta capa consta del sistema operativo propio, basado en POSIX y el conjunto de

herramientas desarrolladas por VMware (las cuales se detallarán a continuación). Sobre

esto, se encuentran las máquinas virtuales.

Cliente (derecha): Es donde reside la herramienta de monitoreo y administración. 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 comunicación entre el servidor y la herramienta de monitoreo y administración 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 información que la empresa desarrolladora tiene disponible en [6] y [7].

Page 44: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

44

Versión Gratuita

Versión Estándar

Versión Avanzada

Versión Empresarial

Versión Empr. Plus

Hardware

Memoria máxima

para el servidor físico 256 [GB] 256 [GB] 256 [GB] 256 [GB]

No hay

limite

Núcleos por

procesador 6 6 12 6 12

Licencia

No hay límite

por servidor

físico

1 CPU 1 CPU 1 CPU 1 CPU

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

Data Production X X X X

Virtual Serial Port

Concentrator X X X

Hot Add X X X

vSheld Zones X X X

Fault Tolerance X X X

vStorage APIs for

Array Integration X X

vStorage APIs for

Multipathing X X

Storage vMotion X X

Distributed Resources

Scheduler (DRS),

Distributed Power

Management (DPM)

X X

Storage I/O Control X

Network I/O Control X

Distributed Switch X

Host Profiles X

Costo de la Licencia

(USD) 0

Desde 1268

a 1818,65

Desde 2717

a 3675,55

Desde 3479

a 4708,45

Desde 4229

a 5723,70

Tabla 4.1: Detalle de cada una de las distintas versiones de VMware vSphere.

A modo de aclaración, se considera el valor memoria RAM máxima por servidor a modo de

dimensionar una cantidad máxima de máquinas virtuales a ejecutar dentro del servidor. Por su

parte, el licenciamiento de las versiones de vSphere se considera por CPU física, indistinto de la

Page 45: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

45

cantidad de núcleos que posea, a diferencia de la versión gratuita, donde la licencia se entrega

por servidor. Finalmente, los valores de licencias están en el rango desde la de menor precio (con

1 año de soporte básico) y la de mayor precio (con 3 años de soporte en producción)

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

Thin Provisioning [8] se encarga de optimizar el uso de espacio mediante asignación

dinámica de tamaño a los discos virtuales de las máquinas 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 información

High Availability [12] y Fault Tolerance [13] permiten el monitoreo y detección de fallas

en servidores físicos para ofrecer alta disponibilidad

vMotion [14] y Storage vMotion [15] permiten migración de máquinas y discos virtuales

mientras están en funcionamiento

Virtual Serial Port Concentrator para monitoreo de los servidores vía puerto serial

Hot Add que da la posibilidad de agregar hardware a las máquinas virtuales mientras

están en funcionamiento

vShield Zones [16] permite la separación de máquinas virtuales en zonas de seguridad, lo

cual es muy útil para separar ambientes, en caso de tener máquinas que están en etapas de

prueba (o de testing) y otras que ya prestan funcionalidades (o en etapa de producción).

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 asignación

de recursos de hardware

Page 46: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

46

Distributed Switch [21] y Host Profiles [22] ayudan en la administración de los

servidores

Además de las licencias presentadas anteriormente, existe otro tipo de licenciamiento [6], el cual

está orientado a empresas pequeñas. La tabla 2 resume estas opciones.

Versión Essentials Versión Essentials PlusHardwareMemoria máxima para el servidor físico 256 [GB] 256 [GB]

Núcleos por procesador 6 6

Licencia 3 servidores con hasta 2 procesadores cada uno

3 servidores con hasta 2 procesadores cada uno

FuncionalidadThin Provisioning X XUpdate Manager X XData Recovery XHigh Availability XvMotion XvStorage APIs for Data Production X X

Costo (USD) 611 Desde 4229 a 5723,70

Tabla 4.2: Detalle de las versiones de VMware vSphere para pequeñas y medianas empresas.

La tabla 3 muestra el resultado del análisis, en base a los requerimientos y restricciones

planteados en el capítulo 3, de 4 versiones de esta herramienta: la versión gratuita, la versión

Essential Plus, la versión estándar y la versión empresarial. Se seleccionó estas versiones dadas

las funcionalidades, las que representan opciones a considerar por parte de la unidad.

Page 47: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

47

Criterio/Versión Gratuita Essential Plus Estándar EmpresarialSistema Operativo Host soportados Propio Propio Propio Propio

Sist. Operativos Guest soportados

FreeBSD X X X XLinux X X X XWindows (XP/Vista/7) X X X X

Windows Server (2003, 2008) X X X X

Migración de M.V. sin detener operación No Si Si Si

Migración de máquina física a máquina virtual (P2V)

Si Si Si Si

SW de monitoreo y gestión

vSphere Client vSphere Client vSphere Client vSphere Client

Clonación de M.V. Si (detenida) Si Si SiAsignación de recursos de hardware a M.V. Si (detenida) Si (detenida) Si (detenida) Si

Máxima RAM del Host 256 [GB] 256 [GB] 256 [GB] Ilimitado

Máxima RAM del Guest

Depende del S.O. (32 o 64 bits)

Depende delS.O. (32 o 64 bits)

Depende del S.O. (32 o 64 bits)

Depende del S.O. (32 o 64 bits)

Núcleos Soportados para el Host

No hay límite por servidor físico

2 procesadores con 6 núcleos

1 procesadores con 6 núcleos

64 Procesadores de hasta 6 núcleos

Núcleos asignables al Guest 6 6 6 6

Iniciar M.V. al iniciar host Si Si Si Si

Precio (USD) 0 Desde 4229 a 5723,70

Desde 1268 a 1818,65

Desde 4229 a 5723,70

Tabla 4.3: Análisis de funcionalidades de VMware vSphere según 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 verán más adelante. Por otra

parte, la casilla de máxima RAM asignable al guest dependerá del sistema operativo que se

utilice, si es uno de 32 bits como máximo se podrán asignar 4 GB de RAM y en el caso de

Page 48: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

48

sistemas operativos de 64 bits, la asignación 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 versión estándar y la Essential Plus las que más 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 noción de la cantidad de servidores a involucrar en el

proyecto final, lo cual sería interesante, sobre todo si se considera que la versión Essential Plus y

la estándar 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 código abierto Xen [23] (la cual se verá en la

sección 1.2.1, de herramientas de código abierto). Sus orígenes se remontan al año 2007, cuando

la empresa Citrix Systems [24] adquiere XenSource, Inc., y comienza el desarrollo de una línea

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 virtualización en el mercado

[4].

Al igual que vSphere, Citrix XenServer consta de un sistema operativo liviano, basado en una

versión de Linux y de un software de monitoreo y gestión, 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 gestión cumple además la función de realizar la

migración de máquina física a virtual.

En cuanto a arquitectura, esta herramienta posee una estructura igual a la de vSphere, la que se

muestra en la figura 2.

Page 49: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

49

Figura 4.2: Arquitectura de funcionamiento de Citrix XenServer4.

Existen 4 versiones de Citrix XenServer: la versión gratuita, la versión avanzada, la versión

empresarial y la versión platino, las cuales varían según costo de adquisición 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

Hardware servidor

MV1 MV2

Citrix XenServer

Hardware cliente

Sistema operativo

XenCenter XenCenter

Page 50: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

50

Funcionalidad Ver. Gratuita

Ver. Avanzada

Ver. Empresarial

Ver. Platino

XenServer Hypervisor X X X X

IntelliCache X X X X

Resilient distributed management

architecture. X X X X

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

administration X X

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 según su orientación. Es así

como existen las orientadas a la administración de las máquinas 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 administración 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),

además de una herramienta para conversión de máquinas físicas a virtuales (Conversion tools) y

una herramienta para migrar máquinas virtuales en ejecución (XenMotion live migration).

Page 51: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

51

De manera análoga a la tabla 3, la tabla 5 muestra qué versiones cumplen con cuáles de los

requerimientos y restricciones planteados en el Capítulo 3.

Criterio/Versión Gratuita Avanzada Empresarial PlatinoSistema operativo host Propio Propio Propio PropioSist. operativos guest soportados

FreeBSD X X X XLinux X X X XWindows (XP/Vista/7) X X X X

Windows Server (2003, 2008) X X X X

Mover M.V. mientrasestá en funcionamiento Si Si Si Si

Migración de máquina física a máquina virtual (P2V)

Si Si Si Si

SW de monitoreo y gestón XenCenter XenCenter XenCenter XenCenter

Clonación de M.V. Si (detenida) Si (detenida) Si SiAsignación de recursos de hardware a M.V. Si (detenida) Si (detenida) Si Si

Máxima RAM host 512 [GB] 512 [GB] 512 [GB] 512 [GB]

Máxima RAM guestDepende del S.O. (32 o 64 bits)

Depende del S.O. (32 o 64 bits)

Depende del S.O. (32 o 64 bits)

Depende del S.O. (32 o 64 bits)

Núcleos soportados host

64procesadores lógicos5

64 procesadores lógicos

64 procesadores lógicos

64 procesadores lógicos

Núcleos asignables al guest 8 8 8 8

Iniciar M.V. al iniciar host Si Si Si Si

Precio (USD) 0.- 1000.- 2500.- 5000.-

Tabla 4.5: Análisis de funcionalidades de Citrix XenServer según 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 versión gratuita es la que más conviene en este

caso, dado que las funcionalidades ofrecidas son suficientes.

5 Distinto a núcleo, ya que este último puede tener más de un procesador lógico. En la version 5.5 de Citrix XenServer, se especifican, como máximo 32 un procesador con núcleos

Page 52: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

52

1.2. HERRAMIENTAS DE CÓDIGO ABIERTO.

De la misma forma que se presentó en el caso de las herramientas propietarias, en esta sección se

analizarán herramientas de código 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 intervención directa del código.

Se analizarán 3 herramientas: Xen [23], que es una de las pioneras en el ámbito de herramientas

de virtualización de código abierto, KVM [28], que es una de las herramientas de virtualización

que está tomando más 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 código abierto.

1.2.1. XEN.

Xen es una herramienta de virtualización de código abierto desarrollada por un grupo de

investigación 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 aún se mantiene gracias al apoyo de Citrix y de una

comunidad de desarrolladores, que se encarga de la actualización [32]. Xen se distribuye

mediante licencia GNU General Public License (GPLv2) [33].

A diferencia de las herramientas propietarias analizadas anteriormente, las cuales sólo trabajan

con arquitecturas de procesadores x86 de 64 bits, esta herramienta funciona además 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 sección 1.2.2), la instalación de Xen requiere de un kernel de Linux modificado, el

cual posee la API de paravirtualización. La herramienta también permite full-virtualización.

Page 53: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

53

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

administración, una conexión vía protocolo SSH [37] al host, utilizando herramientas de

administración de línea de comando, como virsh [38] o combinando SSH con despliegue de

gráficos (SSH+X11 [39]) o incluso instalando aplicaciones gráficas como Virtual Machine

Manager [40] (conocido también 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: ejecución en modo full-

virtualización o paravirtualización, migración de máquinas virtuales sin detener su operación y

migración de máquina física 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

imágenes del servidor a virtualizar y montar dicha imagen en una máquina virtual [42].

En [43] se encuentra una lista más 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 capítulo 3.

6 Hecho en base a referencia: http://thecamels.org/wp-content/uploads/XEN-schema.png

Hardware servidor

MV1 MV2 SO Host

Xen

Hardware cliente

Sistema operativo

Herramienta de administración

Page 54: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

54

Criterio XenSistema operativo host Sistemas operativos Linux Sist. operativos guest soportados

FreeBSD XLinux XWindows (XP/Vista/7) XWindows Server (2003, 2008) X

Migración de M.V. mientras está en funcionamiento SiMigración de máquina física a máquina virtual (P2V) SiSW de monitoreo y gestión Línea de comando o aplicación gráficaClonación de M.V. Si (maquina detenida)Asignación de recursos de hardware a M.V. Si (detenida)Máxima RAM host 1 [TB]Máxima RAM guest Depende del S.O. (32 o 64 bits)Núcleos soportados host 16Núcleos asignables al guest 16Iniciar M.V. al iniciar host SiPrecio (USD) 0

Tabla 4.6: Análisis de funcionalidades de Xen según los requerimientos y restricciones de la DCSC.

1.2.2. KVM.

KVM o Kernel-based Virtual Machine, es una herramienta de virtualización 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 código abierto.

Su primera versión se remonta a febrero de 2007, como parte oficial de la versión 2.6.20 del

núcleo de Linux [46] y hasta la fecha se encuentra en constante desarrollo por una comunidad de

programadores, distribuyéndose bajo licencias GPLv2, LGPLv2, LGPL y GPL [33]. Además, el

hecho de que sea parte oficial del núcleo de Linux, hace que esta sea la herramienta de

virtualización oficial de Linux, a diferencia de Xen que, como se vio anteriormente, utiliza una

versión modificada del núcleo 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 también se han hecho desarrollos para

otras arquitecturas como PowerPC [49], Itanium [34] y ARM [35].

Respecto a los tipos de virtualización, al igual que Xen, KVM permite tanto paravirtualización

como full-virtualización.

Page 55: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

55

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 razón que se pueden utilizar las

mismas soluciones descritas para Xen.

Respecto a los sistemas operativos host y dada la calidad de herramienta oficial del núcleo de

Linux, KVM se puede instalar en cualquier distribución de Linux.

Las funcionalidades que KVM ofrece son similares a Xen, dentro de las que se destacan:

migración de máquinas virtuales mientras están en funcionamiento [50], clonación de máquinas

virtuales, y otras, que se encuentran más detalladas en [51]. En lo que respecta a migración de

máquina física 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 términos de los

requerimientos y restricciones establecidos por la Dirección Central de Servicios

Computacionales, descritos en el capítulo 3 de esta memoria.

7 Hecho en base a referencia: http://southbrain.com/south/virtualization/virtualization-kvm-60.png

Hardware servidor

MV1 MV2 SO Host

KVM

Hardware cliente

Sistema operativo

Herramienta de administración

Page 56: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

56

Criterio Kernel-based Virtual MachineSistema operativo host Sistemas operativos Linux Sist. operativos guest soportados

FreeBSD XLinux XWindows (XP/Vista/7) XWindows Server (2003, 2008) X

Migrar M.V. mientras está en funcionamiento SiMigración de máquina física a máquina virtual (P2V) SiSW de monitoreo y gestión Línea de comando o aplicación gráficaClonación de M.V. Si (maquina detenida)Asignación de recursos de hardware a M.V Si (detenida)Máxima RAM host Depende del S.O.3

Máxima RAM guest Depende del S.O. (32 o 64 bits)Núcleos soportados host Depende del S.O.8

Núcleos asignables al guest 16Iniciar M.V. al iniciar host SiPrecio (USD) 0

Tabla 4.6: Análisis de funcionalidades de KVM según los requerimientos y restricciones de la DCSC.

1.2.3. PROXMOX VIRTUAL ENVIRONMENT.

Proxmox Virtual Environment es una herramienta de virtualización de código 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

código abierto, tales como KVM y OpenVZ. Esta herramienta se distribuye bajo licencia GPLv2

[33].

La primera versión de Proxmox Virtual Environment fue lanzada en abril de 2008, y en la

actualidad se encuentra en la versión 1.7. Los desarrolladores tienen previsto lanzar al mercado

la versión 2.x durante la segunda mitad del año 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]. Además esta herramienta permite virtualización tanto a nivel

8 Al ser parte del núcleo del sistema operativo, este parámetro dependerá de las limitaciones de hardware de la distribución que se utilice.

Page 57: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

57

de sistema operativo con OpenVZ, la cual es útil con sistemas operativos Linux y full-

virtualización con KVM tanto para sistemas operativos Linux como para otros (Unix-BSD,

Microsoft Windows).

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 capítulo, en lo que respecta a

aplicación de monitoreo y gestión se diferencia de las anteriores en que en el lado del servidor

físico donde reside la herramienta de gestión y monitoreo se instala un servidor web. Este

servidor web recibe la información entregada por el administrador de máquinas virtuales (KVM

+ OpenVZ) ordenándola de manera que sea interpretable para la administración y monitoreo del

servidor físico y de los servidores virtuales. El acceso a esta información es mediante navegador

web.

En cuanto a funcionalidades, esta herramienta entrega migración de máquinas virtuales mientras

están en ejecución, clonación y respaldo de máquinas virtuales. Una lista más completa de

funcionalidades se encuentra en [55]. Respecto a migración de máquina física 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

términos de los requerimientos y restricciones los parámetros establecidos para el caso de la

Dirección Central de Servicios Computacionales (capítulo 3).

Hardware servidor

MV1 MV2 SO Host + Web server

KVM + OpenVZ

Hardware cliente

Sistema opeativo

Navegador web

Page 58: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

58

Criterio Proxmox Virtual EnvironmentSistema operativo host PropioSist. operativos guest soportados

FreeBSD XLinux XWindows (XP/Vista/7) XWindows Server (2003, 2008) X

Migrar M.V. mientras está en funcionamiento SiMigración de máquina física a máquina virtual (P2V) SiSW de monitoreo y gestión Interfaz webClonación de M.V. Si (maquina detenida)Asignación de recursos de hardware a M.V. Si (detenida)Máxima RAM host 256 [GB]Máxima RAM guest Depende del S.O. (32 o 64 bits)Núcleos soportados host 16Núcleos asignables al guest 16Iniciar M.V. al iniciar host SiPrecio (USD) 0

Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC

2. ANÁLISIS Y SOLUCIÓN.

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

cumplen con la mayoría de los requerimientos y restricciones establecidos por la Dirección

Central de Servicios Computacionales.

En lo que respecta a las herramientas propietarias, la versión gratuita de VMware vSphere (tabla

3) no cumple con uno de los requerimientos: migración de máquinas virtuales mientras se

encuentran en ejecución. En cambio, esta funcionalidad sí es ofrecida por la versión gratuita de

Citrix XenServer (tabla 5), lo cual hace considerarla como una opción. 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

técnico mínimo de un año (ver [6] y [7] para VMware y [56] para Citrix XenServer) y en cuanto

a funcionalidades, Citrix XenServer ofrece más funcionalidades con licencias menos costosas,

además de entregar licencias por servidor, a diferencia de VMware, quién entrega licencias solo

por CPU.

Page 59: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

59

En el caso de las herramientas de código abierto, comparando las tablas 6, 7 y 8 se puede

concluir que todas ofrecen las mismas funcionalidades, lo cual deja abierta la opción de elegir

cualquiera. Sin embargo, en términos de permanencia en el mercado, respaldo oficial del sistema

operativo y plataforma de la herramienta de administración, existen diferencias.

Xen es la herramienta que lleva más tiempo en el mercado. Sin embargo, no es una herramienta

oficial de virtualización en Linux, a diferencia de KVM. Desde este punto de vista, KVM es una

opción más segura.

Proxmox Virtual Environment no es muy popular y su interfaz web de administración, es más

lenta que la de sus competidores, sobre todo en el despliegue de gráficos en sistemas operativos

Microsoft Windows. Esta desventaja resulta en su descarte como opción de virtualización. Por lo

tanto, entre las opciones gratuitas, se prefiere KVM.

Al comparar KVM con la edición gratuita de Citrix XenServer, ésta última requiere renovar

anualmente la licencia gratuita [57], lo cual es un trámite 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 virtualización para ser

implementada en un plan piloto en la DCSC.

3. RESUMEN.

En este capítulo se estudiaron distintas herramientas de virtualización, analizándolas desde el

punto de vista de las funcionalidades que estas ofrecen y cómo estas se adecúan a los

requerimientos expresados por la Dirección Central de Servicios Computacionales de la

Universidad. En base a este estudio, se ha optado por seleccionar la herramienta de código

abierto KVM.

En el siguiente capítulo se realizará un análisis y proyección de los beneficios esperados tras una

implementación formal de virtualización y también de los costos que se deberán asumir.

Page 60: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

60

4. BIBLIOGRAFÍA.

[1] Free VMware vSphere Hypervisor: Bare Metal Hypervisor (based on VMware ESXi) [en

línea] <http://www.vmware.com/products/vsphere-hypervisor/> [consulta: 21 de febrero de

2011].

[2] Citrix System >> Citrix Xenserver. [en línea]

<http://www.citrix.com/English/ps2/products/product.asp?contentID=683148&ntref=prod_top>

[consulta: 21 de febrero de 2011].

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

[4] ComputerProfile-blog.com >> Opportunities in a turbulent period [en línea]

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

[5] POSIX – Wikipedia, the free encyclopedia [en línea] <http://en.wikipedia.org/wiki/POSIX>

[consulta: 21 de febrero de 2011].

[6] VMware Store - Small and Mid-Size Business Options [en línea]

<http://www.vmware.com/vmwarestore/vsphere_smbpurchaseoptions.html> [consulta: 21 de

febrero de 2011]

[7] VMware Store – Vmware vSphere 4 Bundle Solutions [en línea]

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

de 2011].

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

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

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

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

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

[consulta: 21 de febrero de 2011]

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

data-protection/> [consulta: 21 de febrero de 2011].

Page 61: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

61

[12] VMware High Availability (HA) [en línea] <http://www.vmware.com/products/high-

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

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

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

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

febrero de 2011]

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

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

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

[consulta: 21 de febrero de 2011].

[17] VMware vStorage APIs for Array Integration [en línea]

<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 línea]

< http://www.vmware.com/products/drs/> [consulta: 21 de febrero de 2011].

[19] VMware vSphere - Storage I/O Control [en línea]

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

de 2011].

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

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

[21] VMware vNetwork Distributed Switch [en línea]

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

2011].

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

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

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

Page 62: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

62

[24] Citrix Systems [en línea] <www.citrix.com> [consulta: 21 de febrero de 2011]

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

febrero de 2011]

[26] XenServer Editions [en línea]

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

de febrero de 2011].

[27] XenServer Specifications [en línea]

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

de febrero de 2011]

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

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

de 2011]

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

[31] Computer Laboratory – Xen VMM [en línea]

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

[32] Community – Xen [en línea] <http://www.xen.org/community/> [consulta: 23 de febrero de

2011].

[33] GNU General Public License – Wikipedia, the free encyclopedia [en línea]

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

[34] Itanium – Wikipedia, the free encyclopedia [en línea]

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

[35] ARM architecture – Wikipedia, the free encyclopedia [en línea]

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

[36] OS Compatibility – Xen Wiki [en línea]

<http://wiki.xensource.com/xenwiki/OSCompatibility> [consulta: 23 de febrero de 2011]

Page 63: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

63

[37] Secure Shell - Wikipedia, the free encyclopedia [en línea]

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

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

2011]

[39] X Window System - Wikipedia, the free encyclopedia [en línea]

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

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

febrero de 2011].

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

p2v.1.html> [consulta: 24 de febrero de 2011].

[42] P2V Conversion when using KVM. << Axelilly’s Ponderings [en línea]

<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 línea] <http://wiki.xensource.com/xenwiki/Xen4.0> [consulta: 24

de febrero de 2011].

[44] Qumranet – Wikipedia, the free encyclopedia [en línea]

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

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

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

[consulta: 25 de febrero de 2011].

[47] Virtualization Technology from Intel [en línea]

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

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

solutions/virtualization/Pages/virtualization.aspx> [consulta: 25 de febrero de 2011]

Page 64: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

64

[49] PowerPC – Wikipedia, the free enciclopedia [en línea]

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

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

febrero de 2011].

[51] KVM Features – KVM [en línea] <http://www.linux-kvm.org/page/KVM_Features>

[consulta: 25 de febrero de 2011].

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

2011].

[53] Roadmap – Proxmox VE [en línea] <http://pve.proxmox.com/wiki/Roadmap> [consulta: 25

de febrero de 2011].

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

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

[55] Backup - Restore - Live Migration – Proxmox VE [en línea]

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

de 2011].

[56] Citrix Licensing Resource Center [en línea]

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

[57] Free Xenserver License Renew – Server Fault [en línea]

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

de 2011].

Page 65: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

65

Capítulo 5

IMPLEMENTACIÓN Y ANÁLISIS DE LA SOLUCIÓN

Luego de seleccionar e implementar la herramienta escogida en el capítulo anterior, es necesario

responder una par de preguntas claves: ¿qué beneficios se obtienen al implementar virtualización

en los servicios identificados? y ¿cuál es el costo que se debe asumir?

Estas interrogantes serán las bases de este capítulo. Para responderlas, en este capítulo se

analizarán los beneficios y los costos asociados, de manera cuantitativa y se reportarán las

pruebas a la implementación.

Los beneficios potenciales obtenidos mediante virtualización se proyectarán en base a datos de

los equipos y de información adicional, como el valor de kilowatt hora ($/kWh). En tanto que los

costos se proyectarán en base a pruebas realizadas a los servicios que se virtualizarán en una

primera etapa (web estáticas, DNS y LDAP), tal como se mencionó en la sección 1 del capítulo 3

de este trabajo.

1. BENEFICIOS.

Uno de los beneficios que produce el uso de virtualización, mencionado en la sección 3.2 del

capítulo 2, es el ahorro en hardware, ya que en un servidor físico se pueden ejecutar un número

determinado de servidores virtuales. Este hecho derivará en otros ahorros, tales como consumo

de energía eléctrica por servidor y consumo en sistemas de climatización en la sala de servidores,

tal como se expuso en los capítulos 1 y 2.

Dado que la implementación de la virtualización de los servicios de Web, DNS y LDAP se

encuentra aún en desarrollo en la DCSC, el análisis de los beneficios esperados se presenta de

manera estimada. Esta estimación, junto con la de costos, permitirá establecer la conveniencia de

implementar virtualización en el caso estudiado.

Page 66: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

66

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 físico. Esto depende no sólo de la

plataforma física que ofrece el host, sino también de los servicios que se desea virtualizar y su

nivel de utilización.

En términos de hardware, se puede obtener una primera aproximación considerando la relación

existente entre las velocidades de procesamiento de la CPU del servidor físico (CPUf) y la

capacidad de procesamiento de la CPU que utilizará el servidor virtual (CPUv). Este último dato

depende de los servicios a virtualizar.

Tal como se mencionó al principio de este capítulo, se desea virtualizar servicios de páginas web

de contenido estático, LDAP y DNS. Según estimaciones propias y otras obtenidas de la

literatura [1], la utilización 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 utilización del servidor

virtual , CPUv , es de 400 [MHz] como máximo.

El servidor físico en el que se realizará la virtualización posee un procesador Intel Xeon modelo

E5310 [2] de 4 núcleos que funcionan a una velocidad de 1,6 [GHz] cada uno, lo cual entrega

una velocidad de procesamiento total de CPUf.=6,4 [GHz]. Con los valores de CPUf de 6400

[MHz] y de CPUv de 400 [MHz], el servidor físico permitiría hasta 16 servidores virtuales.

Además de la capacidad de procesamiento de la CPU, el proceso de virtualización debe

considerar también la memoria RAM disponible en el servidor físico (RAMf) así como la RAM

necesaria para los servidores virtuales (RAMv). En este caso, el servidor físico cuenta con 32

[GB] de RAM y de acuerdo a las consideraciones de la Dirección Central de Servicios

Computacionales respecto del consumo de RAM por parte de los servicios a virtualizar, esta no

debería ser mayor a 2 [GB] por servidor. Por lo tanto, considerando las restricciones de uso de

RAM, se podrían ejecutar hasta 16 máquinas 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 más que suficiente para atender la

Page 67: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

67

demanda de los servidores virtuales (ya que en promedio no utilizarán discos duros virtuales

mayores a 10 [GB], según lo estimado por la DCSC para estos servicios).

Dado que los servicios que se ejecutarán en los servidores virtuales utilizan el recurso de red, es

también necesario considerar las restricciones que impone el número de tarjetas de red del

servidor físico en los servicios a virtualizar. El servidor físico 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 tráfico

de 300 [kbps] por conexión (según datos de la DCSC9), por lo tanto, se podría atender

aproximadamente 6660 conexiones simultaneas (3330 por interfaz de red). Esto implicaría que

los 16 servidores virtuales atenderían hasta 415 conexiones simultáneas 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 máquinas 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 núcleos de CPU del servidor físico). En cuanto a

RAM desde 2 [GB] en RAM es suficiente para cubrir las necesidades del VMM, según

estimaciones realizadas tras esta implementación 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 método, donde se han

considerado asignaciones estáticas de recursos de hardware, si bien no representa la realidad, es

una buena aproximación inicial de lo que puede suceder en la práctica.

1.2. AHORRO ENERGÉTICO

La disminución de servidores físicos que resulta de la implementación de la técnica de

virtualización conlleva ahorros en el consumo de energía del sistema. Para estimar este ahorro,

en este trabajo de título se consideraron dos tipos de servidores físicos, representativos de de

situación actual de la Dirección Central de Servicios Computacionales. El primero corresponde a

9 Tanto esta como otras estimaciones realizadas durante este capítulo están basadas en información de monitoreo

obtenida de http://redes2.dcsc.utfsm.cl/mrtg/

Page 68: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

68

un computador que genera un consumo máximo 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 estáticas. El segundo tipo, corresponde a un servidor que genera un consumo

máximo 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 energía eléctrica debido a la disminución de servidores, se

considera lo siguiente:

El periodo de tiempo en el que se evaluará el consumo en energía eléctrica de 30 días.

Se supone que la Universidad se encuentra en una zona tarifaria de alta tensión, 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 energía eléctrica proviene de la disminución en el consumo eléctrico del

sistema de servidores y del sistema de climatización.

El consumo de energía eléctrica de los servidores de 300[W] y 750 [W] es de 216[kWh] y

540[kWh], respectivamente (obtenidos de la multiplicación del consumo en watts, multiplicado

por el número 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.

Además del ahorro de consumo energético directo de los servidores virtualizados, existe un

ahorro debido a la disminución de carga del sistema de climatización, el cual está encargado de

mantener la temperatura a un nivel apropiado para el correcto funcionamiento de los equipos.

El consumo energético de los sistemas de climatización se suele medir en [BTU/h] (British

Thermal Unit [4] por hora). La relación 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 días.

Page 69: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

69

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 Capítulo 2, la técnica de virtualización conlleva también ciertas

desventajas relacionadas con la degradación de servicio resultante de la emulación del hardware

real para cada máquina virtual.

Para estimar el nivel de degradación del servicio que prestaría un servidor virtual, comparado

con el mismo servicio alojado en un servidor físico, en este trabajo de título se diseñaron una

serie de pruebas de rendimiento. Estas pruebas se realizaron para los tres servicios a virtualizar:

servicios web de contenido estático, DNS y LDAP.

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

Cliente Sevidor físico

Red oficina

Firewall

Red servidores

Figura 5.1: Configuración de red y dispositivos utilizados para las pruebas.

De la figura es posible apreciar que la configuración de prueba constó de:

Cliente: Computador personal Compaq Presario modelo F505LA, desde donde el cliente

solicita la prestación 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.

Page 70: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

70

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 físico: 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

virtualización 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 físico

utilizó el sistema operativo FreeBSD 8.1.

Note que la configuración 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 (físico) Cliente

Procesador1 núcleo de procesador Intel Xeon E5310 1.6 [GHz] por servidor virtual.

Intel Xeon E5310 1.6 [GHz], 4 núcleos

AMD Sempron Mobile 1.6 [GHz]

RAM 1[GB] Por servidor virtual (3 [GB] en total) 16 [GB] 2 [GB]

SistemaOperativo

Ubuntu Server 10.10 (Base). FreeBSD 8.1 (Servidor virtual) FreeBSD 8.1 ArchLinux 2009.08

[9]Tarjetas de Red

1 interfaz de 100 Mbps para los 3 servidores

1 interfaz de 100 Mbps

1 interfaz de 100 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 aplicación servidora Apache [10], la que

debido a su uso extendido a nivel mundial [11] cuenta con bastante documentación y soporte, lo

que facilita su configuración y puesta en marcha.

Apache es un software de código 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 módulo central y otros módulos, que

agregan funcionalidades adicionales, tales como soporte para otros lenguajes de programación

Page 71: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

71

(Perl, PHP, Python) y control de acceso. Más 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 número de solicitudes de

páginas web a ejecutar durante el tiempo de prueba. Permite también generar solicitudes

simultáneas 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 páginas totales como de solicitudes simultáneas. Estos escenarios

se resumen en la tabla 2, donde la notación EX corresponde al escenario X. Cada escenario tiene

asociado un número de conexiones totales y otro de conexiones simultáneas. 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 simultáneas.

Los valores de conexiones simultáneas como totales, se han seleccionado para lograr un máximo

de estrés, tanto en los servidores físicos como en los virtuales.

Conexiones totales

500 1000 1500 2000 2500

Conexiones

simultáneas

50 E1 E3 E5 E7 E9

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 operación de una conexión HTTP, Apache Becnhmark distingue 4

tiempos: el tiempo de conexión o ctime, el tiempo de espera o wait, el tiempo de transacción o

dtime y el tiempo total o ttime.

Page 72: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

72

Figura 5.2: Ilustración de los tiempos involucrados en una transacción HTTP de Apache Benchmark.

La figura 2 ilustra los instantes de inicio y término de cada uno de estos tiempos. El tiempo de

conexión o ctime es el tiempo que transcurre desde que el cliente envía la solicitud de conexión

al servidor hasta que la conexión se establece. El tiempo de espera o wait, corresponde al instante

desde que se establece la conexión hasta que el servidor inicia la transferencia de datos al cliente.

El tiempo de transacción o dtime, es el que transcurre desde que se inicia la transferencia de

datos, hasta que se cierra la conexión con el servidor. Finalmente el tiempo total o ttime es la

suma del tiempo de conexión y el tiempo de transacción.

A continuación se presenta un gráfico que resume los tiempos totales (ttime) obtenidos durante

esta evaluación, tanto para el caso en que el servicio residen directamente en un servidor físico

(terminados en fis en la gráfica), como para el caso en que el servicio ha sido virtualizado

(terminados en vir en la gráfica). Los gráficios con los todos los tiempos (ctime, ditme, ttime y

wait), correspondientes a los resultados obtenidos para cada escenario se presentan en la sección

1 de A.1 en Anexos.

ctime

ttime

wait dtime

ttime

tiempo [ms]

Cliente Servidor

ctime

wait

dtime

Búsqueda por parte del cliente

Transferencia del sitio web

Page 73: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

73

Figura 5.3: Gráficas de los escenarios obtenidas con Apache Benchmark.

Page 74: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

74

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 físicos (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 según el número de conexiones simultáneas

por conexión, con esto, los escenarios impares corresponden a 50 conexiones simultáneas y los

pares a 100 conexiones simultáneas.

Escenario

Tiempo

Promedio de

ttime Físico

(ms)

Tiempo

Promedio de

ttime Virtual

(ms)

Razón de

diferencia de

ttime

promedio

Tiempo

Total

Físico

(ms)

Tiempo

Total

Virtual

(ms)

Razón de

diferencia

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 simultáneas), si bien en los tiempos promedios de atención existe una tendencia a

aumentar la razón de diferencia, en el caso total se da un efecto de alcanzar un valor máximo

(E5) y luego disminuir. Esto se debe a, a medida que existen más 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 más plana en el centro de la gráfica, 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 más pronunciada al final, a medida que hay mayor

cantidad de solicitudes totales.

Page 75: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

75

El caso de los escenarios pares es diferente, ya que en los tiempos promedio se alcanza un valor

mínimo (E4), para luego ir aumentando, a diferencia de los tiempos totales, donde la tendencia es

claramente a disminuir. Sin embargo, se puede ver gráficamente, 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 número de solicitudes es menor.

Lo destacable es que, a diferencia de lo que se podría pensar, al tener mayor número de

solicitudes simultáneas, la razón 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 físico 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 análisis 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 específico, los sitios que se pretenden alojar en los servidores virtuales, son sitios

que no tienen una gran cantidad de tráfico diario (entre 500 y 1000 solicitudes diarias, según

estimaciones propias). Este hecho nos deja cercanos a los parámetros de los escenarios 1 y 3, los

cual podrían 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 razón de diferencia

promedio de 1,84 veces, es decir, el tiempo de respuesta del servidor virtual será un 84% mayor

que el servidor físico.

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 adición 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 razón en el peor caso se hace

11

Esta información puede obtenerse mediante la ejecución del comando traceroute en sistemas operativos

Linux/Unix y con el comando tracert en Windows.

Page 76: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

76

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 resolución de nombres externos. Otras tareas, como la creación y administración de

zonas y nombres de dominio para servidores internos, no fueron consideradas debido a que la

DSCS así lo consideró

La aplicación servidora utilizada será BIND DNS [15], la que por su uso extendido (sobre todo

en sistemas operativos Unix) cuenta con una amplia documentación y soporte.

La herramienta de evaluación de rendimiento utilizada fue la aplicación de código 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 información, del historial de navegación de los navegadores web del computador cliente.

Namebench permite generar un máximo de 2400 consultas DNS por evaluación.

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.

Número 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 estadísticas de uso del

servicio de DNS por parte de la DCSC.

A continuación se presenta el gráfico resumen de las evaluaciones realizadas. Para gráficos más

detallados ver la sección 2 de A1 en Anexos.

Page 77: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

77

Figura 5.4: Gráficas de los escenarios obtenidas con NameBench.

Page 78: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

78

En el gráfico se aprecian los resultados obtenidos en el caso del servidor físico (escenarios

terminados en fis) y de los obtenidos en el caso del servidor virtual (terminados en vir).

De los gráficos 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 físico, 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 número 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 URL´s en

el historial de navegación 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 más rápida), los tiempos de respuesta a las consultas repetidas son menores. Otra causa

puede ser que dos o más de las consultas pueden ir a un mismo dominio. Un ejemplo de ello

sería 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 obtención

de una respuesta, tanto para www.ejemplo.com como para eventos.ejemplo.com será más rápida,

ya que el servidor DNS ya tiene información de la pertenecía 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 físico como del servidor

virtual.

Page 79: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

79

Escenario

Tiempo

Promedio

Físico (ms)

Tiempo

Promedio

Virtual (ms)

Razón de

Diferencia

Tiempo

Total

Físico (ms)

Tiempo Total

Virtual

(ms)

Razón de

diferencia

(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 físico, se observa que la diferencia promedio tiende a disminuir y que la diferencia

total tiende a aumentar y la explicación está en lo mencionado anteriormente, es decir que

dependiendo de la URL, específicamente 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.

Según datos de la DCSC, en la práctica DNS tiene cerca de 1000 consultas por minuto en

promedio, lo cual es cercano a lo que sucede en los escenario 2, donde la razón 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 físico 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 más real no diferirían en gran manera, ya que se

debe considerar que este servicio se utiliza dentro de la universidad. Se hace esta salvedad, dada

la proyección de diferencia entre los tiempos de respuesta entre un servidor virtual y un servidor

físico hecha para el caso de web, ya que en este caso no debería 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 más utilizadas al momento de implementar este servicio y se encuentra

disponible para múltiples sistemas operativos, tales como Unix-BSD, Mac OS, Linux y

Windows. OpenLDAP se distribuye bajo su propia licencia, OpenLDAP Public License [19].

Page 80: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

80

Debido a que las herramientas disponibles para evaluación de rendimiento de LDAP no

contaban con una documentación precisa [20], en este trabajo de título 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 línea de comando,

como por ejemplo, las consultas al servidor LDAP.

Respecto a los escenarios de prueba, se utilizaron los mismos de la evaluación de Apache. Es

decir, se realizó un número de consultas totales y un número de consultas ejecutadas de manera

simultánea. La diferencia es que estas consultas simultáneas son parte de las consultas totales, es

decir, que si se ejecutan 1000 consultas totales, con 10 consultas simultáneas, estas 1000

consultas estarán agrupadas en grupos de 10, por lo que equivaldrá a 100 grupos de 10 consultas

simultáneas.

Otra similitud con el caso de Apache es el sistema operativo que se utilizó para las pruebas en el

cliente, el cual será la distribución de Linux ArchLinux.

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

Conexiones totales

500 1000 1500 2000 2500

Conexiones

simultáneas

10 E1 E3 E5 E7 E9

25 E2 E4 E6 E8 E10

Tabla 5.6: Escenarios de prueba para LDAP.

Los gráficos obtenidos tras la pruebas se muestran a continuación. La nomenclatura utilizada en

los gráficos es similar a las anteriores, donde fis representa los escenarios evaluados con el

servicio en el servidor físico y vir en el servidor virtual. Gráficos más detallados se presentan en

la sección 3 de A1 en Anexos.

Page 81: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

81

Figura 5.5: Gráficas de los escenarios impares obtenidas con el script.

Page 82: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

82

Figura 5.6: Gráficas de los escenarios pares obtenidas con el script

Page 83: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

83

A simple vista, se observa que se cumple que el servicio ejecutado en servidor virtual demora

más tiempo que en el caso del servidor físico, aunque en el último escenario esta tendencia no es

tan marcada como en los otros escenarios, esto puede ser debido al nivel de tráfico en la red al

momento de realizar las pruebas en el caso del servidor físico, 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 análisis más cuantitativo. Al igual que para el caso de

Apache, se han dividido el análisis de los escenarios considerando el número de conexiones

simultáneas que se ejecutan.

Escenario

Tiempo

Promedio

Físico (s)

Tiempo

Promedio

Virtual (s)

Razón de

diferencia

Tiempo

Total

Físico (s)

Tiempo

Total

Virtual (s)

Razón de

diferencia

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 simultáneas.

Según las estimaciones de uso por parte de la DCSC, el servicio LDAP tiene una utilización de

2000 usuarios por cada 12 horas, lo cual encaja con los escenarios 7 y 8, los cuales tienen en

promedio una razón 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.

Page 84: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

84

Considerando una consulta externa, se considera el mismo retardo considerado en el análisis 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 debería variar en gran

manera, pudiendo llegar a ser hasta un 22% mayor en el caso del servidor virtual

3. RESUMEN.

En este capítulo se cuantificaron los beneficios y desventajas de implementar virtualización en

servicios web, DNS y LDAP. Los beneficios se midieron en términos de reducción de servidores

físicos y ahorros en consumo energético. Las desventajas se analizaron en términos de la

degradación de los tiempos de respuesta de los servicios virtualizados respecto de cuando operan

directamente en un servidor físico.

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.

Page 85: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

85

4. BIBLIOGRAFÍA.

[1] [26] ALBITZ, Paul y LIU, Cricket. DNS and BIND. 5ta Ed. 1005 Gravenstein Highway

North, Sebastopol, CA 95472, Estados Unidos, O’Reilly & Associates, 2006.

[2] Intel Xeon Processor E5310 [en línea]

<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 eléctrico - Chilquinta [en línea]

<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 línea]

<http://en.wikipedia.org/wiki/British_thermal_unit> [consulta: 16 de marzo de 2011].

[5] Frigoría – Wikipedia, la enciclopedia libre [en línea]

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

[6] Dell PowerEdge 2950 Server Product Details [en línea]

<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 línea] <http://www.ubuntu.com/business/server/overview> [consulta: 20

de marzo de 2011].

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

de marzo de 2011].

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

[10] The Apache HTTP Server Project [en línea] <http://httpd.apache.org/> [consulta: 20 de

marzo de 2011]

[11] March 2011 Web Server Survey | Netcraft [en línea]

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

20 de marzo de 2011].

Page 86: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

86

[12] Licenses - Apache [en línea] <http://www.apache.org/licenses/> [consulta: 20 de marzo de

2011].

[13] Module Index – Apache HTTP Server[en línea] <http://www.apache.org/licenses/>

[consulta: 20 de marzo de 2011].

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

[consulta: 20 de marzo de 2011]

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

[consulta: 23 de marzo de 2011].

[16] Namebench – Open-source DNS Benchmark Utility – Google Project Hosting [en línea]

<http://code.google.com/p/namebench/> [consulta: 23 de marzo de 2011].

[17] Uniform Resource Locator – Wikipedia, the free enciclopedia [en línea]

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

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

2011].

[19] OpenLDAP Public License [en línea]

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

[20] Cool Solutions: LDAP Benchmark Tester [en línea]

<http://www.novell.com/coolsolutions/tools/14046.html> [consulta: 25 de marzo de 2011].

[21] Bash (Unix shell) - Wikipedia, the free enciclopedia [en línea]

<http://en.wikipedia.org/wiki/Bash_%28Unix_shell%29> [consulta: 25 de marzo de 2011].

Page 87: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

87

Capítulo 6

CONCLUSIONES Y TRABAJO FUTURO

1. CONCLUSIONES

En este trabajo de título se logró una implementación primaria de virtualización dentro de la

Dirección Central de Servicios Computacionales (DCSC). Esta implementación resultó en un

servidor de pruebas, actualmente operativo y que se encuentra ejecutando la herramienta de

código 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 máquinas virtuales con sistemas

operativos Linux (CentOS), Windows (Server 2003) y FreeBSD. Ejemplo de esto, es el caso de

cPanel12

, una herramienta de administración de sitios web, además 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 máquinas virtuales en ejecución en el mismo

servidor físico utilizado en las pruebas.

En el proceso de análisis de distintas herramientas de virtualización disponibles en el mercado

fue posible notar las ventajas comparativas que ofrecen las herramientas de código abierto. En

términos 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 virtualización o bien para pequeñas y medianas empresas que desean implementar una

infraestructura básica utilizando virtualización de servicios.

El análisis posterior a la implementación permitió evaluar el impacto que la virtualización puede

tener en el desempeño de los servicios ofrecidos. En este sentido, se analizaron tanto los

beneficios (ahorro de servidores físicos y consecuente ahorro de consumo energético) 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 energía

eléctrica como en consumo en sistema de climatización al momento de retirar una unidad del

12

http://www.cpanel.net/

Page 88: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

88

datacenter, ya sea de servidor o de computador. Dependerá de las unidades que realmente se

logren retirar, la cuantificación total de dichos ahorros.

Además de esto, también se abordó la principal desventaja de la virtualización, la que guarda

relación con los retardos que puede introducir en los tiempos de respuesta de un servidor virtual,

comparado con un servidor físico. En este contexto, se pudo determinar que los retardos varían

según 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

físico 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 términos de beneficios y desventajas permitieron apreciar que para

muchos servicios, las desventajas en términos de retardo no son significativas, mientras que los

ahorros económicos pueden ser importantes. Esta tendencia parece ser la dominante en las

empresas hoy en día, lo cual se refleja en el hecho que virtualización de servicios se está

masificando en el mercado de las tecnologías de información 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 virtualización dentro de la entidad13, de manera de realizar un

estudio exploratorio que identifique qué otros servicios convendría virtualizar. Esto

conllevaría el desarrollo de un plan en el que se consideren aspectos de investigación,

pruebas, implementación en marcha blanca y una implementación 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 cómo responden los

13 Como en este caso de estudio: http://www.excellencegateway.org.uk/page.aspx?o=239359

Page 89: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

89

servicios, considerando una plataforma con un mayor número de máquinas físicas y

virtuales en ejecución.

Page 90: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

90

Anexos

A1: Gráficos detallados de las pruebas realizadas.

A continuación se incluyen los gráficos obtenidos de la evaluación de cada uno de los servicios.

En el caso de Web, se incluyen los tiempos descritos en la sección 1.3.1 del capítulo 5

1. WEB.

Figura A.1: Datos evaluación web, escenario 1

Page 91: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

91

Figura A.2: Datos evaluación web, escenario 2

Figura A.3: Datos evaluación web, escenario 3.

Page 92: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

92

Figura A.4: Datos evaluación web, escenario 4.

Figura A.5: Datos evaluación web, escenario 5

Page 93: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

93

Figura A.6: Datos evaluación web, escenario 6

Figura A.7: Datos evaluación web, escenario 7

Page 94: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

94

Figura A.8: Datos evaluación web, escenario 8

Figura A.9: Datos evaluación web, escenario 9

Page 95: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

95

Figura A.10: Datos evaluación web, escenario 10

Page 96: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

96

2. DNS

Figura A.11: Datos evaluación DNS, escenario 1

Figura A.12: Datos evaluación DNS, escenario 2

Page 97: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

97

Figura A.13: Datos evaluación DNS, escenario 3

Figura A.14: Datos evaluación DNS, escenario 4

Page 98: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

98

Figura A.15: Datos evaluación DNS, escenario 5

Page 99: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

99

3. LDAP.

Figura A.16: Datos evaluación LDAP, escenario 1

Figura A.17: Datos evaluación LDAP, escenario 2

Page 100: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

100

Figura A.18: Datos evaluación LDAP, escenario 3

Figura A.19: Datos evaluación LDAP, escenario 4

Page 101: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

101

Figura A.20: Datos evaluación LDAP, escenario 5

Figura A.21: Datos evaluación LDAP, escenario 6

Page 102: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

102

Figura A.22: Datos evaluación LDAP, escenario 7

Figura A.23: Datos evaluación LDAP, escenario 8

Page 103: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

103

Figura A.24: Datos evaluación LDAP, escenario 9

Figura A.25: Datos evaluación LDAP, escenario 10

Page 104: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

104

A2: Códigos de programas para mediciones

Se incluyen los códigos desarrollados para las pruebas, los cuales están 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 #Ejecución 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 sección 1.3.2 del capítulo

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

Page 105: “ESTUDIO E IMPLEMENTACIÓN DE LA TÉCNICA DE … · Tabla 4.8: Análisis de Proxmox Virtual Environment según las especificaciones de la DCSC .. 58 Tabla 5.1:

105

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=$command’ldapsearch -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=$command’ldapsearch -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