anÁlisis comparativo de escenarios de virtualizaciÓn de ...biblio.upmx.mx/tesis/137765.pdf ·...

59
Con estudios incorporados a la Secretaría de Educación Pública ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE SERVIDORES Y REEMPLAZO DE HARDWARE PARA LA OPTIMIZACIÓN DE UN PROCESO DE PRUEBAS DE SOFTWARE TESIS QUE PARA OBTENER EL TÍTULO DE LICENCIADO DE INGENIERÍA EN INFORMÁTICA P R E S E N T A CHRISTIAN TIRADO LOYA DIRECTOR DE TESIS: MAE. MARIA DE LOURDES GUADALUPE MARTÍNEZ VILLASEÑOR MÉXICO D.F. 2012

Upload: others

Post on 01-Apr-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Con estudios incorporados a la Secretaría de Educación Pública

ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE SERVIDORES Y REEMPLAZO DE

HARDWARE PARA LA OPTIMIZACIÓN DE UN PROCESO DE PRUEBAS DE SOFTWARE

TESIS

QUE PARA OBTENER EL TÍTULO DE LICENCIADO DE INGENIERÍA EN INFORMÁTICA

P R E S E N T A

CHRISTIAN TIRADO LOYA

DIRECTOR DE TESIS: MAE. MARIA DE LOURDES GUADALUPE MARTÍNEZ VILLASEÑOR

MÉXICO D.F. 2012

Page 2: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

2

A mis padres, quienes me han dado todas las armas para enfrentar la vida

“Life comes from within your heart and desire”

Eddie Vedder

Page 3: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Índice

3

Introducción .................................................................................................................................................................................. 4 Capítulo 1

Antecedentes de Grupo Elektron y descripción de problemática ............................................................. 8 1.- Contexto general de Grupo Elektron y su proceso de asignación de servidores de prueba ... 9 1.1.- Antecedentes e historia de Grupo Elektron .............................................................................................. 9 1.2.- Estructura de Grupo Elektron ...................................................................................................................... 10 1.3.- Proceso de pruebas de software y la problemática del proceso de asignación de

servidores para las mismas ............................................................................................................................... 12 1.4.- Análisis de infraestructura dedicada al proceso de pruebas de aplicaciones desarrolladas

por Grupo Elektron ............................................................................................................................................... 14 1.5.- Resumen de antecedentes de Grupo Elektron y de la problemática en el proceso de asignación

de servidores para prueba de aplicaciones ............................................................................................................ 16 Capítulo 2

Definición, antecedentes y usos de virtualización de servidores ........................................................... 18 2.- Virtualización de servidores como solución a la problemática en la asignación de

servidores para prueba de aplicaciones de Grupo Elektron ............................................................... 19 2.1.-Definición de virtualización en cómputo .................................................................................................. 19 2.2.- Antecedentes históricos de la virtualización en cómputo ............................................................... 19 2.3.- Dominios de virtualización y concepto de virtualización de servidores................................... 21 2.4.- Beneficios de la virtualización de servidores ........................................................................................ 24 2.5.- Tipos de virtualización de servidores ....................................................................................................... 26

2.6.-Virtualización de servidores en contexto para el proceso de asignación de servidores de prueba de aplicaciones de Grupo Elektron ............................................................................................................................ 28

Capítulo 3 Análisis de escenarios

Virtualización de servidores y reemplazo directo de equipos ........................................................... 30 3.1.-Contexto para el análisis de solución de la problemática presentada en la asignación de

servidores para prueba de aplicaciones ................................................................................................ 31 3.2.- Análisis de la solución presentada en la asignación de recursos de prueba usando

un escenario con virtualización de servidores .............................................................................. 32 3.2.1 Servidor 2U con dos procesadores de cuatro núcleos .......................................................... 32 3.2.2 Unidad de Almacenamiento iSCSI de 8TB .................................................................................. 35 3.2.3 Hipervisor ................................................................................................................................................. 37

3.2.4 Gabinete 42U ................................................................................................................................................. 40 3.3. Evaluación de la solución de virtualización de servidores ......................................................... 40

3.4. Solución a la problemática presentada en la asignación de recursos de prueba de aplicaciones reemplazando directamente los servidores ........................................................ 44

3.4.1.- Servidor 2U - un procesador de un núcleo .............................................................................. 44 3.4.2.- Gabinete 42U .............................................................................................................................................. 45 3.5.- Evaluación de la solución de reemplazo directo de servidores para la solución de la

problemática en la asignación de recursos para prueba de aplicaciones ............................... 45 3.6 Comparación de escenarios de virtualización de servidores contra reemplazo directo de equipos

.................................................................................................................................................................................................... 48 Conclusión ................................................................................................................................................................................... 53 Bibliografía ................................................................................................................................................................................. 56

Page 4: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

INTRODUCCIÓN

Page 5: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Introducción

5

Es una realidad que el avance en las tecnologías de la información han logrado hacer más eficientes algunos de los procesos operacionales de buena parte de las empresas modernas. La duplicación del poder de procesamiento cada dos años (Moore, 1965), la baja en los costos del hardware y la creciente especialización en el desarrollo de aplicaciones han permitido la automatización de muchos de los procesos de las organizaciones (Chen, 2005).

Existen diferentes proveedores de aplicaciones para procesos de negocio, como SAP u Oracle, que proveen software para administrar bases de datos, nómina o inventarios que pueden implementarse en diferentes empresas o ambientes. Para procesos más especializados las organizaciones optan en algunas ocasiones por desarrollar por su cuenta estas aplicaciones, ya sea para optimizar costos, proteger propiedad intelectual o apalancar recursos que ya se tienen disponibles.

Grupo Elektron ha elegido desarrollar internamente algunas aplicaciones que consideran prioritarias para su negocio. Muchas de éstas contribuyen a soportar la operación de más de mil puntos de venta a nivel Latinoamérica y a generar ingresos promedio de 5,800 millones de pesos al trimestre. Por esta razón es importante que las mismas funcionen de manera correcta, por lo que probarlas es esencial.

Los procesos de prueba de software requieren de equipos dedicados para las mismas, de forma de que las aplicaciones puedan ejecutarse de manera aislada. Actualmente los desarrolladores de aplicaciones necesitan tener servidores físicos con diferentes configuraciones para simular ambientes variados para las pruebas (Vogels, 2008 y Olan, 2003). Grupo Elektron fue adquiriendo y reutilizando equipo de otras áreas de negocio para ejecutar dichas pruebas. Sin embargo conforme fue creciendo la cantidad de aplicaciones desarrolladas para prueba el número de servidores destinado para la ejecución de las mismas está siendo insuficiente para poder liberarlas a producción lo suficientemente rápido. Esto ha generado cuellos de botella donde las aplicaciones demoran entre uno o dos meses en cola para que puedan ser asignadas a un servidor. Además los servidores designados para prueba se encuentran en espacio de oficina el cual se está viendo limitado considerablemente conforme se compran más equipos. La infraestructura dedicada para estos procesos de prueba tiene en promedio cinco años de vida; está comenzando a presentar fallas en su funcionamiento y comienzan a escasear las partes y refacciones de la misma, por lo que es necesario reemplazarla.

El enfoque tradicional es el de cambiar directamente equipos o comprar más ya que es sencillo hacerlo cuando la vida útil de los mismos ha terminado. Pero en la actualidad se presentan nuevos retos para las áreas de tecnologías de información de las organizaciones. Algunos de ellos son:

- Presupuestos más pequeños - Políticas ambientales que obligan a disminuir el consumo de energía - Subutilización de los activos - Administración de muchos equipos dentro de la infraestructura

Esta realidad, a la que no es inmune Grupo Elektron, ha desafiado la noción convencional de la arquitectura cliente/servidor que ha sido la base para el

Page 6: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Introducción

6

desarrollo informático desde la década de los años ochenta. El uso de esta arquitectura ha llevado a las empresas comprar servidores cada vez más especializados, desencadenando una expansión descontrolada de equipos (o “server sprawl”, como se le llama a este fenómeno en inglés), aumentando considerablemente los costos de administración de los departamentos de tecnología de información (Chen, 2005). Para complicar aún más esta situación, el crecimiento de las empresas sólo ha logrado multiplicar exponencialmente este fenómeno.

Tradicionalmente se ha combatido este problema con la consolidación de servidores, en la que se usa un mismo servidor para correr dos o más aplicaciones a la vez. Sin embargo, esto no nos da el nivel de aislamiento necesario en un entorno de pruebas de software, cosa que sí se logra con la virtualización de servidores (Chen, 2005).

La virtualización es una técnica que se usó por primera vez en la década de los setenta con el cómputo centralizado. Se han retomado muchos de estos principios para ayudar a hacer más eficiente la utilización de recursos ya que rompe la relación uno a uno que se tiene entre los sistemas operativos y el hardware (Vogels, 2008). Los beneficios incluyen la disminución de equipos físicos en la infraestructura, bajas en el consumo de energía, mejor aprovechamiento del espacio y la optimización del proceso de pruebas en el desarrollo de software (Wolf, 2007), ( Nanda, 2005).

El objetivo del presente trabajo es estudiar la problemática en el proceso de asignación de servidores para prueba de aplicaciones desarrolladas internamente por Grupo Elektron. Es en este punto donde se generan cuellos de botella al no contar con suficientes recursos para ejecutar las pruebas, resultando en tiempos de espera para la liberación de los desarrollos de software de casi tres meses. Se analizarán dos posibles escenarios para ver de qué manera ayudan a disminuir el tiempo que las aplicaciones esperan para que se les asigne un servidor y reducir el consumo de espacio y energía de la infraestructura. Se comparará también cuál es la más viable económicamente en el corto y largo plazo.

El primer capítulo detalla los antecedentes de la empresa, su estructura organizacional y el proceso de pruebas de aplicaciones. Se revisará la infraestructura donde se ejecuta este proceso y las limitantes que tiene el mismo para cubrir las necesidades de la organización.

El segundo capítulo incluye conceptos básicos de virtualización, antecedentes, beneficios y usos generales. Después se enfoca en las diferentes técnicas de virtualización de servidores, sus usos y beneficios generales.

El tercer capítulo desarrolla dos escenarios: Uno intentando resolver la problemática del proceso de asignación de servidores de prueba expuesta en el capítulo uno usando técnicas de virtualización de servidores, y otro atacándola simplemente comprando infraestructura nueva, que es lo que generalmente las organizaciones realizan cuando los equipos se vuelven obsoletos.

El uso de técnicas de virtualización de servidores puede ser la opción con más beneficios para resolver la problemática presentada en la asignación de servidores de prueba de aplicaciones desarrolladas por Grupo Elektron sobre el método tradicional de reemplazar directamente servidores. La

Page 7: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Introducción

7

virtualización de servidores es una técnica que podría atacar el problema de tiempo de aprovisionamiento de servidores para las pruebas de las aplicaciones desarrolladas y así eliminar los cuellos de botella, con beneficios adicionales como lo son ahorros de energía y espacio.

Analizaremos a detalle ambas soluciones para evaluar sus ventajas y desventajas y poder llegar a una conclusión teórica.

Page 8: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

CAPÍTULO 1

ANTECEDENTES DE GRUPO ELEKTRON Y DESCRIPCIÓN DE PROBLEMÁTICA

Page 9: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 1.- Antecedentes de Grupo Elektron y descripción de problemática

9

1.- Contexto general de Grupo Elektron y su proceso de asignación de servidores de prueba

El objetivo de este capítulo es analizar brevemente la historia de Grupo Elektron, la actividad de la empresa, la estructura organizacional de la misma y las funciones generales de los diferentes grupos que conforman el área de sistemas.

Posteriormente se describirá el proceso de pruebas de software y la problemática identificada en el proceso de asignación de servidores de prueba para aplicaciones que será el objeto de discusión del presente trabajo. 1.1.- Antecedentes e historia de Grupo Elektron

Grupo Elektron forma parte de Grupo Colinas, el cual fue fundado en Monterrey en 1906 con la apertura de una tienda y una fábrica de muebles. Este negocio fue creciendo poco a poco hasta que en 1950 se inaugura una instalación de manufactura de radios Elektron junto con una tienda de muebles que vendía a crédito y a abonos.

Grupo Elektron pasa por momentos complicados durante las décadas de los años 70 y 80 debido a las fuertes crisis económicas que azotaron a México. Fue hasta 1993, buscando nuevas fuentes de capital y con un modelo de negocio más sólido, cuando el grupo decide realizar su primera oferta en la Bolsa Mexicana de Valores y en 1994 en la Bolsa de Valores de Nueva York.

Al ver una oportunidad grande en el negocio de transferencia electrónicas de dinero, el grupo se posiciona como el líder en remesas al extranjero.

Es precisamente la década de los noventas en la que el grupo logra consolidarse como el líder de ventas a crédito al sector de clase baja, que generalmente no es sujeto de crédito o de opciones de financiamiento en otro tipo de tiendas departamentales.

Con miras de conseguir más negocio en este segmento, el grupo busca una licencia para operar como banco, objetivo que logra en 2002, cuando la SecretarÍa de Hacienda y Crédito Público le otorga la licencia a Banco Elektron para operar como una entidad de banca comercial. Se aprovecha el espacio que se tiene; la cobertura que tiene el grupo a nivel nacional y se abren 800 sucursales del banco en tiendas que ya estaban previamente establecidas.

Para 2005 el grupo ya opera en Centroamérica, tanto con tiendas como bancos y es precisamente en esta fecha donde Banco Elektron ya opera en Panamá. En los años siguientes se empiezan operaciones bancarias en Guatemala, Honduras, Argentina y el Salvador.

Actualmente el grupo está conformado por dos unidades de negocio, la unidad comercial y la unidad financiera. La unidad comercial está integrada por dos formatos de tienda: Elektron y su contraparte Colinas y Rocha.

Elektron se enfoca a los segmentos de clase baja o popular (Segmentos C y D+), y cuenta con 1068 puntos de venta en Latinoamérica (los cuales 891 se encuentran en México).

Colinas y Rocha se encuentra enfocado a los segmentos de clase media/media baja (C+ y C) con 55 locales de venta.

Los productos que se comercializan en ambas tiendas van desde los electrodomésticos, muebles, aparatos electrónicos, motocicletas,

Page 10: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 1.- Antecedentes de Grupo Elektron y descripción de problemática

10

computadoras, teléfonos celulares, boletos de autobús, transferencias electrónicas, etc.

A su vez la unidad financiera cuenta con tres subsidiarias Banco Elektron, Seguros Elektron, y Afore Elektron. Esta unidad se creó con la experiencia adquirida de otorgar créditos masivos a segmentos de bajos ingresos de la población (pero de alto volumen). Se ofrecen diferentes productos financieros, que van desde créditos al consumo, préstamos personales, depósitos de ahorro e inversión, tarjetas de crédito y débito, seguros, afore, etc.

En la tabla 1.1 podemos observar los ingresos financieros del 2009 hasta el tercer trimestre del 2010 del grupo

Tabla 1.1 – Información financiera de Grupo Elektron (2009 – tercer trimestre 2010, cifras en

millones de pesos) 1.2.- Estructura de Grupo Elektron

Para efectos del presente trabajo sólo nos enfocaremos a un reto particular que enfrenta el Departamento de Calidad y Desarrollo, que es parte del Área de Soporte Técnico (ver figura 1.3), que a su vez reporta a la Vicepresidencia de Sistemas (ver figura 1.2).

Para efectos ilustrativos la figura 1.1 muestra el lugar que ocupa la Vicepresidencia de Sistemas dentro de la estructura organizacional de Grupo Elektron.

Figura 1.1.- Estructura organizacional de Grupo Elektron

La Vicepresidencia de Sistemas es fundamental para la empresa, debido

a que soporta la operación de los 1068 puntos de venta a nivel Latinoamérica. La figura 1.2 ilustra la estructura de esta organización.

Page 11: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 1.- Antecedentes de Grupo Elektron y descripción de problemática

11

Figura 1.2.- Áreas funcionales del Departamento de Sistemas

Las funciones de cada área son las siguientes:

- Infraestructura Grupo Financiero.- Esta área da soporte y alberga los sistemas encargados de correr la operación del Banco y Servicios Financieros del grupo. Es independiente a la operación del negocio comercial. - Proyectos especiales.- Maneja proyectos que se encuentren fuera del alcance normal del área de sistemas, ya sea para ser utilizados temporalmente o para ser incorporados como un nuevo proceso de negocio. - Sistemas comunes.- Se encarga de administrar, dar soporte y aprovisionar recursos informáticos para las áreas externas a la Vicepresidencia de Sistemas (por ejemplo Mercadotecnia o Finanzas). - Desarrollo de sistemas.- Es responsable del desarrollo e implementación aplicaciones de software para todos los procesos de negocio de la organización. A diferencia de otras empresas, Grupo Elektron no compra software de ningún tipo a proveedores externos (con excepción de aplicaciones de oficina como Microsoft Office o aplicaciones de administración como SAP), ellos las desarrollan y hacen actualizaciones a las mismas. Algunas de las aplicaciones que desarrollan para los procesos de punto de venta son de inventarios, ventas, cajas, rotación de producto, facturación, crédito y cobranza. Todas las aplicaciones generadas por el área de Desarrollo de Sistemas son entregadas al Departamento de Calidad y Desarrollo (parte del Área de Soporte Técnico) para realización de las pruebas que garanticen su funcionamiento correcto. - Soporte Técnico.- Tiene a su cargo el mantenimiento de la infraestructura de sistemas, así como de la administración, aprovisionamiento de recursos y soporte a bases de datos para que el resto de las áreas de sistemas puedan realizar su labor. El soporte a usuarios y a otras áreas de la empresa es realizada por sistemas comunes. Es precisamente el Departamento de Calidad y Desarrollo, que es parte del Área de Soporte Técnico, el grupo afectado por los cuellos de botella generados por el proceso de asignación de servidores prueba que se revisará más adelante. Por esta razón ilustraremos en la figura 1.3 los departamentos que conforman el Área de Soporte Técnico para posteriormente explicar sus funciones.

Page 12: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 1.- Antecedentes de Grupo Elektron y descripción de problemática

12

Figura 1.3.- Departamentos funcionales del Área de Soporte Técnico

Las funciones básicas de estos departamentos son: - Departamento de Administración.- Se encarga de la gestión de los

activos del área de sistemas, así como de la implementación de políticas de administración de software de los mismos. Ellos dan soporte y mantenimiento a todas las aplicaciones que se encuentran en la infraestructura de la empresa.

- Departamento de Bases de Datos.- Administra y optimiza el funcionamiento de las bases de datos utilizadas por el área de sistemas.

- Departamento de Valuaciones.- Aprovisiona y controla el uso de los recursos informáticos dentro del área de sistemas. Este departamento administra los servidores donde se corren las pruebas de aplicaciones desarrolladas. A su vez también asignan estos recursos de prueba cuando el Departamento de Calidad y Desarrollo los recibe del área de Desarrollo de Sistemas.

- Departamento de Calidad y Desarrollo.- Realiza pruebas de software, bases de datos y aplicaciones que genera el área de Desarrollo de Sistemas. Realizan pruebas de validación, de stress, compatibilidad y estabilidad de las mismas. Las pruebas son exhaustivas ya que se tiene que asegurar que puedan ejecutarse sin problema las aplicaciones en un ambiente de producción. Por la naturaleza de las mismas, éstas pueden llegar a demorar de uno a dos meses. Una vez que las pruebas son realizadas, las aplicaciones están listas para ser liberadas a producción por el Departamento de Administración.

Es precisamente en el proceso de pruebas de software realizado por el

Departamento de Calidad donde se entrará más a detalle a continuación. 1.3 Proceso de pruebas de software y la problemática del proceso de

asignación de servidores para las mismas En la sección 1.2 mencionamos que el Departamento de Calidad y

Desarrollo se encuentra encargado de probar el software que desarrolla el área de Desarrollo de Sistemas antes de que el mismo se lance a producción.

Page 13: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 1.- Antecedentes de Grupo Elektron y descripción de problemática

13

Es en este proceso donde se realizan todas las pruebas de validación, estrés y funcionalidad de estas aplicaciones. Se tienen servidores designados exclusivamente para realizar dichas pruebas.

Sin embargo el Departamento de Valuaciones ocupa un rol importante en el proceso, ya que es precisamente esta área la que se encarga de asignar espacio en los servidores de pruebas para que éstas puedan ser realizadas. La figura 1.4 muestra el proceso actual de asignación de dichos recursos.

Figura 1.4.- Proceso de asignación de servidores para pruebas

El tiempo de generación de aplicaciones varía dependiendo de la

complejidad de las mismas, sin embargo el proceso de pruebas tarda un promedio de uno a dos meses en base a lo que comentan los ingenieros de prueba del Área de Calidad y Desarrollo.

Como se observa en la figura 1.4, cuando no hay servidores disponibles, las aplicaciones se van a una cola. Este es un proceso normal para asignar recursos de procesamiento; sin embargo, actualmente las aplicaciones están demorando de uno a dos meses en la cola antes de poder ser asignadas a un servidor.

Eso implica que el proceso total de pruebas demora entre dos y tres meses, sumando el proceso de pruebas y el tiempo de asignación de recursos. Cada aplicación liberada siempre tiene como objetivo hacer más eficiente y rápido el proceso de venta y de esa forma subir la facturación al tener más capacidad de atender más clientes. Por la naturaleza confidencial de las aplicaciones que se desarrollan internamente, la gerencia del Departamento de Calidad y Desarrollo no puede proporcionar detalles específicos de cada una de ellas. Confirman que éstas no son muy intensivas en uso de procesador, y sólo requieren en promedio 2GB

Page 14: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 1.- Antecedentes de Grupo Elektron y descripción de problemática

14

en RAM dedicados, y de 120 a 160 GB de disco duro dedicado a las mismas. La misma gerencia estima que por cada aplicación liberada se hace más eficiente el proceso en un 0.5%.

Por ejemplo, la tienda promedio factura un millón de pesos diarios, o 30 millones de pesos mensuales. El hecho de que una aplicación demore un mes en liberarse podría evitar que la empresa facture 150,000 pesos adicionales al mes por tienda.

Si sólo tomamos en cuenta las 891 tiendas en México, cada aplicación que no se libera evita que se facturen 133.65 millones de pesos al mes por aplicación no liberada. Esta cifra depende mucho del impacto que tenga la aplicación en específico, ya que éste dependerá de qué proceso de negocio sea el impactado por la misma. Por esa razón es difícil cuantificar la validez de este número ya que la misma es un cálculo aproximado por la gerencia del Departamento de Calidad y Desarrollo. 1.4.- Análisis de infraestructura dedicada al proceso de pruebas de aplicaciones desarrolladas por Grupo Elektron.

En la sección 1.3 se habló del proceso de pruebas de software y del tiempo que demoran en liberarse los recursos para ejecutarlos.

A continuación mencionaremos cuatro problemas en la infraestructura que contribuyen a que el proceso de pruebas demore de dos a tres meses en su totalidad, además de los inconvenientes adicionales que genera al Área de Soporte Técnico: a) Número de equipos limitado para hacer más rápido el proceso de pruebas

Para poder realizar las pruebas del software desarrollado, se necesitan recursos que permitan simular en la medida de lo posible el entorno donde serán ejecutadas.

Para que las mismas sean lo más apegadas a la realidad se tienen que mantener en un entorno aislado, ya que en caso de que llegue a haber un error en alguna de las aplicaciones desarrolladas, éste no genere un conflicto que pueda interferir con el proceso de pruebas de otra aplicación.

Conforme los procesos de las tiendas se fueron automatizando, se fue requiriendo comprar más y más servidores ya que no era posible probar más de dos o tres aplicaciones a la vez de manera confiable en un mismo equipo. Sin embargo, se llegó a un punto en el que ya no era factible comprar un servidor cada vez que se desarrollara una aplicación, por lo que las mismas tenían que esperar su turno para ser probadas. No es rentable comprar un servidor que tiene un precio promedio de dos mil quinientos a tres mil dólares cuando una aplicación se queda atascada en la cola ya que además del costo de adquisición inicial, un servidor tiene costos generalizados de administración de aproximadamente 10,000 dólares (Goth, 2007) y esta inversión estaría subutilizada.

A continuación podemos ver en la figura 1.2 los servidores dedicados para probar aplicaciones con los que se cuenta en la actualidad

Page 15: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 1.- Antecedentes de Grupo Elektron y descripción de problemática

15

Tabla 1.2 – Servidores que conforman la infraestructura de pruebas de software

El equipo de pruebas del Área de Calidad y Desarrollo necesita un servidor disponible para cada aplicación a probar, ya que de esa manera pueden asegurar el aislamiento necesario para realizar esta tarea de manera correcta. Como vemos en la tabla 1.2 solamente se cuenta con 21 servidores de prueba disponibles. Una vez que se sobrepasa ese número se genera el cuello de botella mencionado en la sección 1.3. Normalmente el tiempo de aprovisionamiento de un servidor es de cinco minutos (que es el tiempo normal de arranque de un equipo) mientras haya recursos disponibles, pero cuando se supera el límite de los 21 equipos, ese tiempo se dispara hasta casi 3 meses, como se muestra en la figura 1.5.

Figura 1.5.- Tiempo de aprovisionamiento de servidores para pruebas en minutos

Actualmente Grupo Elektron tiene probando entre 30 y 40 aplicaciones al mismo tiempo con posibilidades de que ese número crezca.. b) Costos de administración de la infraestructura actual

El proceso de pruebas de software comenzó con una infraestructura relativamente pequeña, y que como se mencionó en el inciso a) de la presente sección, se fue haciendo cada vez más compleja.

En total Grupo Elektron cuenta con 21 servidores (ver Tabla 1.2) de todo tipo dedicados exclusivamente a probar aplicaciones en tres gabinetes y medio. Esta distribución comenzó a generar costos considerables en consumo de electricidad, enfriamiento y espacio.

Page 16: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 1.- Antecedentes de Grupo Elektron y descripción de problemática

16

Los equipos se fueron adquiriendo en compras aisladas y, en otras ocasiones, otras áreas los donaban cuando ya no tenían uso para ellos. Por esta razón no hay ninguna estandarización en ninguno de los equipos y esta infraestructura se volvió obsoleta rápidamente.

Se estima que cada servidor físico tiene costos anualizados entre 10,000 y 15,000 USD (Goth, 2007). Si tomamos en cuenta esta cifra, el tener estos servidores físicamente representaba al menos 210,000 dólares en costos anuales a Grupo Elektron cuando éste no es un proceso crítico en el funcionamiento del día a día de la organización.

Grupo Elektron no puede destinar recursos adicionales para la administración de estos equipos. De hecho, a la Dirección de Sistemas le redujeron el 10% de su presupuesto, por lo que esos costos anualizados de 210,000 dólares deben de reducirse en al menos 21,000 dólares. c) Espacio

Los servidores que conforman la infraestructura de pruebas nunca estuvieron destinados para estar en el centro de datos de la empresa ya que en el mismo sólo se ejecutan aplicaciones críticas. Por esta razón, éstos se encuentran en espacio de oficina del Departamento de Valuaciones.

Como no hubo una planeación en la adquisición de los mismos poco a poco se fue reduciendo el espacio dedicado al personal del área. Los tres gabinetes y medio ocupan el equivalente al espacio de cinco lugares de trabajo para personal de la empresa. Esto impacta en la productividad del área de soporte técnico ya que es un lugar que no fue especialmente diseñado para tener infraestructura de este tamaño.

No se puede poner un gabinete más con más equipo porque simplemente no hay espacio. d) Edad de la infraestructura

Todos los servidores se encuentran fuera de garantía ya que la mayoría tiene más de tres años e incluso hasta cinco. Esto los hace muy propensos a fallas en el corto plazo ya que la mayoría está al final de su vida útil. Los fabricantes de este tipo de equipos tradicionalmente mantienen piezas y refacciones durante cinco años después de que se descontinuó el producto; más allá de ese tiempo las partes escasean y se dificulta su obtención. Por esta razón a veces es mejor reemplazar los equipos que seguirlos reparando. 1.5.- Resumen de antecedentes de Grupo Elektron y de la problemática en el proceso de asignación de servidores para prueba de aplicaciones.

Los puntos anteriores presentan un dilema a la Dirección de Soporte Técnico. ¿Deberá de reemplazar los servidores por nuevos, como siempre lo han hecho, sin modificar la arquitectura, soportando a la vez un proceso que es ineficiente? O ¿podrán buscar alguna alternativa que les permita hacer más eficiente el uso de sus activos ahorrando espacio y consumiendo menos energía aunque eso implique un costo adicional en el corto plazo?

Actualmente la virtualización de servidores surge como una tecnología que ayuda a consolidar el número de servidores en infraestructuras grandes, disminuyendo el espacio consumido por las mismas, reduciendo el costo de administración por servidor, optimizando el aprovisionamiento de recursos y

Page 17: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 1.- Antecedentes de Grupo Elektron y descripción de problemática

17

adicionalmente ayudando a depurar de manera más confiable las aplicaciones de software que son desarrolladas (Nanda, 2005).

Esos beneficios ayudarían a atacar los cuellos de botella generados en el proceso de prueba de aplicaciones por la falta de servidores disponibles, asegurando un entorno de prueba aislado para cada uno de ellos, por lo que en el capítulo dos hablaremos más a fondo de esta tecnología. Después analizaremos en el capítulo tres qué tan factible es aplicarla para Grupo Elektron comparándola con un escenario de reemplazo directo de servidores.

Page 18: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

CAPÍTULO 2

DEFINICIÓN, ANTECEDENTES Y USOS DE VIRTUALIZACIÓN DE SERVIDORES

Page 19: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 2.- Definición, antecedentes y usos de virtualización de servidores

19

2.- Virtualización de servidores como solución a la problemática en la asignación de servidores para prueba de aplicaciones de Grupo Elektron.

El objetivo del presente capítulo es exponer conceptos básicos de virtualización, para después enfocarse más de lleno a las técnicas de virtualización de servidores y revisar posibles beneficios que puedan aplicarse para resolver los cuellos de botella generados por la falta de servidores disponibles para el proceso de prueba de aplicaciones expuesta en el capítulo uno. 2.1.- Definición de virtualización en cómputo

Según la Real Academia de la Lengua Española, el concepto de que algo es virtual se refiere a aquello que “tiene virtud para producir un efecto, aunque no lo produce de presente, frecuentemente en oposición a efectivo o real” y es algo que “que tiene existencia aparente y no real” (Real Academia Española, 2001). Es decir, virtualización es representar algo que no existe o representarlo de otra manera (Turban, 2008) .

En cómputo se le conoce como virtualización a la serie de tecnologías que combinan o dividen recursos de cómputo que permiten generar uno o más ambientes aislados e independientes entre sí (Nanda, 2005). Por ejemplo, se puede compartir el poder y recursos de cómputo de un solo equipo, como un servidor central, entre varios usuarios o instancias sin que éstas interfieran la una con la otra. Ilustrando el punto un poco más, se podrían tener varios servidores virtuales, corriendo sobre una infraestructura de hardware común, pero son independientes uno de otro, y están aislados entre sí. 2.2.- Antecedentes históricos de la virtualización en cómputo

El concepto de virtualización en cómputo no es nuevo; el primer producto que usó este tipo de tecnología fue el mainframe VM/370 de IBM en 1972 (Creasy, 1981).

En esta época los recursos de cómputo eran muy limitados y el poder de procesamiento era muy caro. Grandes equipos tenían que ser utilizados para realizar diferentes tareas y en muchas ocasiones los mismos tenían que ser usados por una persona o aplicación a la vez. Por esta razón se empiezan a desarrollar diferentes técnicas que permiten optimizar estos recursos permitiendo a diferentes usuarios acceder a ellos al mismo tiempo, con la ventaja de que sus aplicaciones eran independientes entre sí.

A este encapsulamiento de instancias (aplicaciones o sistemas operativos) se le conoce como máquinas virtuales. Se define este término como un duplicado eficiente y aislado de una máquina real (Popek y Goldberg, 1974). De esta manera un estudiante de Estadística podría hacer cálculos complejos de un censo de población; y otro de informática, compilar un programa en el mismo equipo de manera independiente uno del otro, sin interferir entre sí y con sus propios recursos asignados de hardware.

El control de estos recursos los realiza un capa de software entre el hardware y las máquinas virtuales llamada Monitor de Máquinas Virtuales (VMM) o hipervisor (Barham, 2003). La figura 2.1 ilustra de manera básica esta interacción, donde los cuadros con las siglas MVx equivalen a las máquinas virtuales que se ejecutan en la infraestructura.

Page 20: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 2.- Definición, antecedentes y usos de virtualización de servidores

20

Figura 2.1 – Interacción entre el hardware, el monitor de máquinas virtuales y las máquinas

virtuales

Sin embargo, conforme los años fueron avanzando, el poder de cómputo no sólo se fue haciendo mayor, sino que se fue haciendo considerablemente más barato, al punto en que el paradigma de cómputo centralizado de los años 70 se hizo casi obsoleto con el crecimiento del cómputo personal de la siguiente década. Fue en esta época donde el poder de procesamiento se trasladó del centro de datos al escritorio de los usuarios (Menascé, 2005).

El paradigma de la arquitectura cliente-servidor comienza a cambiar en la primera década del siglo XXI, cuando llega la necesidad de usar al máximo los recursos, por factores ambientales y energéticos. Aunado a la ubicuidad y mejor desempeño de la redes de comunicación y el uso de dispositivos móviles con poder de cómputo limitado, obligan a retomar el concepto de virtualización (Menascé, 2005).

Adicionalmente, la presión de optimizar los recursos económicos obliga a mejorar el Costo Total de Propiedad (Total Cost of Ownership o TCO por sus siglas en inglés), ya que está comprobado que en la actualidad solamente se usa el 10% del poder de cómputo de los servidores instalados actualmente en los centros de datos del mundo, y que el espacio, enfriamiento y el consumo de electricidad constituyen casi el 50% del costo total en la vida de los mismos (Van Doorn, 2006).

La virtualización puede tener muchos beneficios a las organizaciones como por ejemplo (Nanda 2005):

1) Consolidación de equipo físico: actualmente la gran mayoría de los servidores son subutilizados (Van Doorn, 2006), por lo que si se consolidan más aplicaciones en un mismo dispositivo de hardware se pueden obtener ahorros en compra de equipo, así como en el consumo de energía del mismo

2) Consolidación de aplicaciones: algunas organizaciones mantienen aplicaciones viejas que no pueden migrarse a servidores con sistemas operativos más recientes (por ejemplo aplicaciones escritas en Windows 2000 que no puedan migrarse a Windows 2008). En este

Page 21: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 2.- Definición, antecedentes y usos de virtualización de servidores

21

caso se puede virtualizar el sistema operativo antiguo en un equipo de hardware nuevo, manteniendo la funcionalidad deseada.

3) Creación de ambientes más seguros de cómputo: las máquinas virtuales pueden proveer ambientes más seguros para correr aplicaciones que no son tan confiables o pueden ser riesgosas, ya que pueden ser aisladas del resto de la infraestructura, minimizando daños potenciales.

4) Depuración más confiable en el desarrollo de software: al estar aisladas las aplicaciones o equipos virtuales de las demás, se puede ejecutar software en ambientes de prueba de manera más confiable ya que se contiene el impacto que pueda generar un malfuncionamiento de la misma, protegiendo la infraestructura o ambientes de producción.

5) Correr diferentes sistemas operativos de manera simultánea: se puede usar un mismo equipo de cómputo para usar diferentes ambientes, como Linux y Windows, nuevamente optimizando los recursos existentes.

6) Migraciones de software más rápidas: debido a que las máquinas virtuales no están instaladas directamente en un solo servidor, se puede migrar de software de manera más eficiente y dinámica ya que sólo se tiene que modificar el mismo en el equipo virtual y no en el equipo físico.

Sin embargo, las tecnologías más usadas de sistemas operativos y

arquitecturas actuales no fueron diseñadas para ser virtualizadas, en especial la arquitectura X86 (Rose, 2004). La arquitectura X86 fue diseñada para que el sistema operativo sea el único proceso interactuando físicamente en un equipo; por esta razón tiene dos tipos de instrucciones que se ejecutan directamente en el procesador, las privilegiadas y las no privilegiadas . Las instrucciones no privilegiadas en un procesador son aquellas que no cambian la distribución de recursos dentro de un equipo (como memoria, uso de procesador y control de dispositivos de entrada y salida) . Las instrucciones privilegiadas no solamente tienen acceso a los recursos de los equipos, sino que también pueden cambiar el estado del equipo, por ejemplo detener la máquina, controlar teclados, mouse, tarjetas de red, etc. Las instrucciones privilegiadas generan interrupciones al procesador (Rose, 2004). Al virtualizar la arquitectura X86 se hace crucial la tarea del hipervisor al encapsular cada máquina virtual y al manejar las interrupciones que genera cada una simulando que está operando a nivel hardware. 2.3 Dominios de virtualización y concepto de virtualización de servidores Aunque es la virtualización de servidores el foco de estudio del presente trabajo vale la pena enumerar los diferentes tipos o dominios de virtualización para poner en contexto está técnica (Kampert, 2010). La figura 2.2 resume estos dominios para después ser explicados

Page 22: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 2.- Definición, antecedentes y usos de virtualización de servidores

22

Figura 2.2 – Dominios de virtualización

a) Virtualización de aplicaciones

La virtualización de aplicaciones consiste en una serie de tecnologías que aíslan aplicaciones de software del sistema operativo de manera que la aplicación es empaquetada como uno o varios conjuntos de archivos ejecutables que pueden ser distribuidos independientemente del sistema operativo (Kampert, 2010).

Con esa técnica, las aplicaciones se encapsulan de tal forma que no se requiere instalar ningún tipo de controlador para ejecutarse, eliminando conflictos en caso de que se ejecute en equipos diferentes y ayudando a la portabilidad de la misma, tanto que hasta pueden distribuirse en un dispositivo sencillo como un USB. Otra opción es ejecutar la aplicación encapsulada en un servidor remoto, de forma que el usuario sólo recibe los resultados de la misma a través de la red. A esta variante se le denomina transmisión de aplicaciones (o application streaming en inglés). b) Virtualización de escritorios

La virtualización de escritorios consiste en la separación del sistema operativo, aplicaciones y datos de perfil del hardware del usuario final. Esta técnica está dividida en dos enfoques, del lado del servidor y del lado del cliente (Kampert, 2010).

En la virtualización de escritorios del lado del servidor las aplicaciones del usuario final son ejecutadas de manera remota en un servidor central y transmitida a través de la red a una terminal que presenta la información al usuario final. Los datos de usuario y las aplicaciones del mismo están usualmente almacenados en el centro de datos, y como son ejecutados en el mismo, por lo general pueden accederse desde una gran variedad de dispositivos siempre y cuando compartan el mismo protocolo para que puedan ser desplegados. Cada usuario tiene su información completamente aislada, pero comparte aplicaciones y sistemas operativos con otros usuarios.

A su vez, en la virtualización del lado del cliente las aplicaciones son ejecutadas en el hardware del usuario final y presentadas en el mismo dispositivo (aunque éstas residan en un servidor central). c) Virtualización de almacenamiento

Page 23: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 2.- Definición, antecedentes y usos de virtualización de servidores

23

La virtualización de almacenamiento es una serie de técnicas que crean una capa abstracta entre la parte lógica y la parte física de una unidad de almacenamiento (Kampert, 2010). Se divide en dos tipos, virtualización de almacenamiento por bloque y virtualización de almacenamiento por archivo. La virtualización por bloque se enfoca en crear discos virtuales a través de distintas unidades de almacenamiento en red para que parezcan como una sola unidad. A su vez, la virtualización por archivo crea un sistema de archivos virtual a través de los diferentes dispositivos de almacenamiento en la red. Este tipo de virtualización es muy usado en redes de almacenamiento local orientadas para hacer respaldos de información y recuperación de datos en caso de desastre. d) Virtualización de redes La virtualización de redes comprende una serie de técnicas que enmascaran la complejidad de una o varias redes y las separa en partes mucho más manejables. Existen tres tipos de métodos de virtualización de redes, la red virtual de área local, la IP virtual y la red privada virtual (Kampert, 2010). La red virtual de área local es una técnica que crea redes independientes entre sí, usando una red física común. Los dispositivos conectados a la red física no se pueden ver entre sí a menos de que pertenezcan a la misma red virtual, eso es útil para aislar equipos de producción de ambientes de prueba sin tener que invertir en infraestructura nueva. La IP virtual es una red IP que no se encuentra asociada a un adaptador de red o equipo en específico sino a algún ruteador o conmutador que se encuentre en el camino de la red. De esta manera, en caso de fallar alguna tarjeta o adaptador de red en la infraestructura, ésta no falla. Esta técnica se usa mucho en balanceo de cargas en los centros de datos y en sistemas de alta disponibilidad. La red privada virtual es una red de comunicación cerrada que usa un medio público, internet por ejemplo, como medio para dirigir y comunicar el tráfico. Este tipo de redes se diseñaron par asegurar la confidencialidad de los datos enviados entre usuarios cuando se usa un canal público que no tenga seguridad garantizada. e) Virtualización de servidores

En esta técnica de virtualización un servidor físico corre uno o más ambientes independientes. Los recursos del equipo se comparten entre todos los ambientes y son enmascarados y administrados por una capa de software, que como mencionamos anteriormente se llama hipervisor.

Al inicio de la década de los años ochenta la arquitectura cliente/servidor sirvió como el fundamento que hizo crecer y avanzar a las tecnologías de la información como una herramienta fundamental en la empresa. Cuando crecen las organizaciones, sus necesidades de tecnologías de información se hicieron más complejas y una manera rápida de lograr satisfacerlas fue comprar servidores que fueran ayudando a automatizar o modernizar procesos. Algunos ejemplos de los mismos son los servidores dedicados para correo electrónico o sistemas de producción (Menascé, 2005).

En el corto plazo, ésta es una manera económica de cumplir esa necesidad, por ejemplo un área de marketing que necesite un servidor para

Page 24: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 2.- Definición, antecedentes y usos de virtualización de servidores

24

una aplicación de inteligencia de negocios o el departamento de facturación que requiera una máquina exclusiva para administrar sus necesidades de impresión de documentos.

Sin embargo, esta práctica empezó a generar costos adicionales para el mantenimiento de estos equipos y también se requirió de mucho más espacio para poder ubicarlos.

Adicionalmente, el desempeño de los servidores se ha incrementado de manera sustancial. En 1965 el científico y co-fundador de Intel Gordon Moore predijo que el número de transistores que físicamente se pueden poner en un chip se duplica cada dos años (Moore, 1965). Este fenómeno impactó los costos de producción de procesadores, que es el componente más caro en un equipo de cómputo y siguen colapsando; mientras que el desempeño de los equipos se va haciendo cada vez mayor.

Esto ha llevado a que en la actualidad la gran mayoría de los equipos usados en el centro de datos (primordialmente servidores) operen con porcentajes de utilización entre el 10 y 15% (Van Doorn, 2006).

Se estima que el 70% del presupuesto de las organizaciones de tecnología está dedicado a mantener en funcionamiento la infraestructura existente, mientras que el otro 30% solamente se dedica a la adquisición de tecnología que pueda ayudar a innovar o mejorar procesos dentro de la organización (Goth, 2007).

Por esta razón se concluye que un servidor sencillo X86 puede llegar a representar entre 10,000 y 15,000 dólares en costos anualizados por administración. Esto incluye la compra, actualizaciones de software, costos operativos y la implementación del mismo (Goth, 2007).

Ahora, si se estima que un servidor tiene de tres a cinco años de vida útil, tener servidores subutilizados representa una gran área de oportunidad para las organizaciones de tecnología que están siempre obligadas a disminuir sus costos operativos.

La virtualización de servidores se perfila como una opción para consolidar recursos y aprovechar los mismos lo más que se pueda (Vogels, 2008)

Esencialmente, el concepto de virtualización de servidores es el enmascaramiento de recursos de servidor (incluyendo la identidad de servidores físicos individuales, procesadores y sistemas operativos) de los usuarios de servidor, liberándolos de tener que estar conscientes de estos recursos y a su vez optimizar los mismos (Chen, 2005).

Esta técnica está extremadamente ligada con el concepto de máquinas virtuales, que como ya vimos, es la copia de una instancia de sistema operativo que da la apariencia de un conjunto completo de almacenamiento y demás recursos a un usuario (Chen, 2005). 2.4 Beneficios de la virtualización de servidores

A continuación enumeramos algunos de los beneficios que ofrece la virtualización de servidores que resumiremos en la Figura 1.2 (Vogels, 2008),( Wolf, 2007):

Page 25: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 2.- Definición, antecedentes y usos de virtualización de servidores

25

Figura 2.3.- Beneficios de la virtualización de servidores

1) Consolidación de equipos físicos:

Tiene como fin el disminuir la cantidad de recursos físicos donde se ejecutarán los recursos virtuales. Se logra multiplexando el hardware físico sobre una cierta cantidad de ambientes virtuales, logrando una relación de un recurso físico a N equipos virtuales (Vogels, 2008).

Consolidando equipos físicos, las organizaciones pueden bajar costos de administración y sobre todo de consumo de energía al disminuir el hardware involucrado. Sin embargo, el riesgo de falla del hardware siempre es latente. Entre más servidores virtuales estén operando en un solo servidor físico, el impacto que puede tener la falla del mismo es mayor; por lo que siempre se recomienda tener una unidad de respaldo de los servidores virtuales para que las repercusiones sean mínimas.

2) Utilización más eficiente de los activos

Se estima que los servidores actualmente se encuentran con una utilización de entre el 10 y 15% (Van Doorn, 2006). En el momento en que se usan menos equipos físicos para ejecutar más recursos de software virtuales, estamos logrando utilizar mejor la infraestructura ya existente.

El reto más importante en este rubro es el balanceo correcto de la carga de servidores. Esto dependerá mucho de las conductas de uso de los usuarios y de las horas pico de utilización de los mismos. Actualmente existen varias herramientas desarrolladas para balancear dinámicamente el uso de los servidores por los principales proveedores de tecnologías de virtualización como System Center de Microsoft o VSphere de VMWare (Vogels, 2008). 3) Pruebas de software más rápidas y eficientes

Normalmente los ingenieros que desarrollan aplicaciones necesitan tener diferentes recursos y ambientes disponibles para poder hacer pruebas. En muchas ocasiones deben de contar con sistemas complejos de arranque múltiple que les ayuden a manejar diferentes versiones de sistemas operativos.

Mediante la virtualización de servidores, los ingenieros pueden hacer pruebas con diferentes sistemas operativos en un solo equipo, haciendo más sencillas y económicas las pruebas del software. Otra ventaja adicional es que ellos pueden asignar directamente los recursos dedicados a la aplicación de

Page 26: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 2.- Definición, antecedentes y usos de virtualización de servidores

26

manera dinámica, sin tener que estar limitados a los recursos del hardware físico. De esta manera se hacen pruebas más apegadas a la realidad.

Por otro lado, en un ambiente virtualizado es mucho más rápido poder pasar de un ambiente de pruebas a uno de producción (Vogels, 2008). A su vez, en caso de que un servidor virtual llegue a tener un malfuncionamiento por algún defecto de programación de software, es mucho más fácil reiniciarlo que a un servidor físico, lo que agiliza la depuración de los errores de las aplicaciones. Este hecho le da más confianza a las personas que ejecutan las pruebas para tomar más riesgos sin que haya una repercusión o daño a la infraestructura o a otros equipos porque los servidores virtuales están aislados (Wolf 2007).

Este beneficio es crítico para el Departamento de Calidad y Desarrollo del Área de Soporte Técnico de Sistemas de Grupo Elektron, ya que como se mencionó en la sección 1.2 del capítulo uno, todas las aplicaciones del grupo son desarrolladas por ellos mismos y cuentan con un proceso de asignación de recursos para la ejecución de pruebas de las mismas, que no está siendo eficiente para las necesidades de la organización.

4) Mejor seguridad y administración

Una preocupación fundamental para cualquier administración de sistemas es que al haber más servidores físicos descentralizados en la organización, éstos no sólo son más difíciles de administrar, sino que también pueden llegar a ser una amenaza potencial de seguridad para la infraestructura de la empresa.

Si se reemplazan esos servidores físicos por virtuales ubicados en el centro de datos bajo control del área de sistemas, no solamente se facilita la administración de los mismos, sino que se pueden poner más controles de seguridad, como por ejemplo el acceso a los puertos de servidor. 5) Ahorros en energía y hardware

Es claro: a menos servidores físicos, menos gasto en su compra y en el consumo de energía de los mismos.

Sin embargo hay que tomar en cuenta que el hardware es muy importante en un servidor que se va a virtualizar. Por ejemplo, la memoria RAM es crítica, ya que generalmente se tiene que configurar con más memoria de lo usual. Otro elemento crítico son las tarjetas de red. Es muy común que se generen cuellos de botella en las tarjetas de red de los servidores físicos donde se hace virtualización, por lo que se recomienda usar dos o más adaptadores de red como se considere necesario (Wolf, 2007)

6) Portabilidad de servidores

Al no estar forzosamente ligado a un equipo físico para operar, un servidor virtual puede ser trasladado, copiado y/o ejecutado en múltiples recursos físicos. A su vez puede ser configurado como un recurso de respaldo en caso de que llegue a fallar el huésped físico principal

Esto genera enormes beneficios, como la recuperación de la operación en caso de desastres o el balanceo de cargas entre servidores de manera dinámica. 2.5 Tipos de virtualización de servidores

Page 27: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 2.- Definición, antecedentes y usos de virtualización de servidores

27

En la actualidad se considera que existen 2 tipos de virtualización de servidores (Wolf, 2007). La figura 1.3 los ilustra así como a sus subdivisiones para posteriormente explicarlos.

Figura 2.4.- Tipos de virtualización de servidores

1) Virtualización de servidores basada en el huésped (Host Based Server Virtualization)

En este tipo de virtualización se pueden correr diferentes sistemas operativos diferentes en un mismo servidor, con una capa intermedia llamada hipervisor que administra los recursos físicos de hardware.

Existen tres variantes principales: a) Virtualización completa (Full Virtualization): Se considera a ésta la primera arquitectura de virtualización de servidores. En este enfoque el hipervisor o monitor de máquinas virtuales (VMM) logra una emulación completa del hardware para que las máquinas virtuales puedan operar con la impresión de que están trabajando directamente sobre hardware físico. Algunos de sus beneficios son la habilidad de compartir una máquina virtual entre varios servidores y la portabilidad completa entre servidores distintos. Sin embargo esta técnica puede llegar a afectar mucho el desempeño del equipo, ya que al hacer una emulación completa del hardware, la máquina virtual tiene que ejecutar controladores del equipo virtual y del servidor físico. Por lo mismo el desempeño de dispositivos de entrada/salida (como disco duro o tarjetas de red) se puede degradar hasta en un 20%. Esta técnica de virtualización es soportada por empresas como VMWare y Microsoft (Wolf, 2007). b) Paravirtualización: En este enfoque, se usan diferentes medios para avisar al sistema operativo de la máquina virtual de que está siendo virtualizada o de que hay una capa intermedia entre ella misma y el hardware, que generalmente es el hipervisor. Esto se logra ya sea recompilando el núcleo del sistema operativo o instalando controladores que ayuden en esa tarea.

Page 28: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 2.- Definición, antecedentes y usos de virtualización de servidores

28

Esta técnica requiere que muchas veces los proveedores recompilen sus ofertas de sistemas operativos. Esto no es tan complejo en arquitecturas de sistemas operativos abiertos como Linux. Pero se complica mucho más con sistemas operativos cerrados como Windows, que no pueden modificarse o recompilarse de ninguna manera. La paravirtualización sigue siendo vigente debido a que mitiga muchos de los problemas de desempeño que se encuentran en la virtualización completa, ya que los niveles de degradación de los componentes bajan hasta el 2%. Además, Novell y Microsoft lanzaron en el 2007 controladores para soportar esta técnica de virtualización. Esta arquitectura es soportada por VMWare y otros proveedores de software basados en Xen (Wolf, 2007). c) Virtualización asistida por Hardware: En este enfoque los fabricantes de procesadores (en este caso los más importantes, Intel y AMD) han rediseñado el conjunto de instrucciones de sus productos de manera que las máquinas virtuales puedan ejecutar instrucciones privilegiadas a nivel procesador, sin necesidad de que sean traducidas por el hipervisor y a su vez evitar el uso de controladores o sistemas operativos recompilados como en la paravirtualización. La virtualización asistida por hardware se perfila para ser el estándar de industria por las ventajas que ofrece; sin embargo, también tiene sus limitantes en desempeño, por lo que hay combinaciones con paravirtualización que ayudan a mitigar este fenómeno (Wolf 2007) . Esta técnica es soportada por Microsoft y VMWare.

2) Virtualización de sistemas operativos en servidor:

En esta técnica de virtualización un sistema operativo sirve como huésped y genera particiones para crear otros ambientes virtuales independientes (no se les llama máquinas virtuales).

La ventaja de este enfoque es que los ambientes virtuales no necesitan controladores o emulaciones especiales, por lo que no hay degradación en el desempeño y corren prácticamente a nivel nativo. La desventaja es que como los ambientes virtuales se conectan al mismo sistema operativo huésped no puede ser soportado más de un tipo de sistema operativo; por ejemplo una máquina con sistema operativo Windows no podría ejecutar un ambiente virtual de Linux.

Por otro lado, los ambientes virtuales nunca están completamente aislados, ya que el sistema operativo huésped es el que administra los recursos de todos los demás. 2.6.- Virtualización de servidores en contexto para el proceso de asignación de servidores de prueba de aplicaciones de Grupo Elektron

Después de detallar los diferentes beneficios que ofrece la virtualización de servidores podemos suponer que algunos pueden ser aplicables para resolver la problemática presentada en el proceso de asignación de servidores para prueba de aplicaciones que se revisó en el capítulo uno.

Por ejemplo, en la en la sección 1.4 inciso c, mencionamos que el espacio ya era un problema para Grupo Elektron, por lo que los beneficios en consolidación de servidores podría ayudar a mitigar este problema. También en

Page 29: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 2.- Definición, antecedentes y usos de virtualización de servidores

29

la sección 1.3 se mencionó un proceso de asignación de recursos para pruebas de software, y como se describió en la sección 2.4, la virtualización de servidores ofrece beneficios para la ejecución de pruebas del software desarrollado. En el siguiente capítulo se revisará si estos beneficios pueden aplicarse al caso específico de Grupo Elektron.

Page 30: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

CAPÍTULO 3

ANÁLISIS DE ESCENARIOS: VIRTUALIZACIÓN DE SERVIDORES Y REEMPLAZO DIRECTO DE EQUIPOS

Page 31: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

31

3.1.- Contexto para el análisis de solución de la problemática presentada en la asignación de servidores para prueba de aplicaciones

En la sección 1.4 se mencionaron el conjunto de retos a los que actualmente se está enfrentando Grupo Elektron en la asignación de servidores para pruebas de aplicaciones desarrolladas internamente.

Por un lado, las limitaciones de la infraestructura actual para aprovisionar adecuadamente recursos para probar aplicaciones demora considerablemente la liberación de las mismas a producción, y por otro, el que el equipo donde se ejecutan todos los procesos de prueba cuenta con más de cinco años de vida, por lo que es más propenso a fallas sin mencionar que ocupa espacio de oficina que limita las labores del personal.

El capítulo dos explica nociones generales de la tecnología de virtualización, antecedentes y aplicaciones deteniéndonos, con un poco más de detalle en la virtualización de servidores. El objetivo del presente capítulo es demostrar la factibilidad de la aplicación de una solución de virtualización de servidores o una de reemplazo directo de equipos a la problemática presentada en la infraestructura de pruebas de Grupo Elektron.

Como mencionamos en el capítulo uno, el mantener la infraestructura actual le empezó a generar a Grupo Elektron tres problemas muy fuertes:

1. Tiempos de espera muy prolongados para poder probar aplicaciones ya que no hay servidores dónde hacerlo.

2. Alto consumo de energía por la operación normal de los servidores y el aire acondicionado para enfriarlos.

3. Mucho espacio ocupado ya que los mismos no cabían en el lugar que se les asignó. Recordemos que los servidores no están en el centro de datos sino en espacio de oficina. En la sección 2.4 se menciona que precisamente el desarrollo y pruebas

de software puede explotar al máximo los beneficios de las diferentes técnicas de virtualización, ya que éstas proveen la rapidez necesaria de aprovisionamiento de equipos y el funcionamiento aislado de los mismos sin tener que invertir en hardware físico adicional.

Otro beneficio expuesto en esta sección es la consolidación de servidores, que permite atacar el problema del espacio y de cierta manera el consumo de energía ya que se hace más con menos equipo.

La infraestructura actual no es óptima para manejar procesos de virtualización, ya que no sólo no se tiene el desempeño adecuado, sino que no se tienen las instrucciones que a nivel procesador los fabricantes han implementado para soportar las limitaciones que tiene la arquitectura X86 para ser sometida a técnicas de virtualización (Rose, 2004). En el presente capítulo se analizarán a detalle dos enfoques para atacar la problemática en la asignación de servidores de prueba; uno usando virtualización como centro de la solución y otro reemplazando directamente la infraestructura actual por servidores similares pero más modernos.

Los indicadores que usaremos para evaluar los diferentes escenarios son el tiempo en que se aprovisionan los recursos para probar aplicaciones, el consumo de energía de cada escenario, el espacio que ocuparía cada solución y el costo monetario de implementación de cada una.

Page 32: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

32

3.2.- Análisis de solución de la problemática presentada en la asignación de recursos de prueba usando un escenario con virtualización de servidores A continuación se presenta una propuesta para resolver los cuellos de botella generados por la asignación ineficiente de recursos para prueba de aplicaciones, usando un escenario con virtualización de servidores. En la tabla 3.1 se muestra de una manera básica los componentes de la misma.

Tabla 3.1 – Hardware y software utilizado para la solución de virtualización a proponer

Se describirá a detalle los componentes principales que conforman a la misma: 3.2.1 Servidor 2U con dos procesadores de cuatro núcleos:

Se proponen dos servidores de gabinete de 2U con capacidad de integrar dos procesadores Intel Xeon familia 5500 ó 5600 de 4 núcleos cada uno. Lo que nos da la posibilidad de tener hasta 8 núcleos de procesador en cada equipo.

El chasis de un servidor de 2U es mediano y como el almacenamiento de las máquinas virtuales se ubicaría en una red de área de almacenamiento (descrita en la sección 3.1.2) los servidores no necesitan una gran cantidad de discos duros internos, lo que beneficia considerablemente el espacio ocupado en el gabinete.

Como se mencionó en la sección 2.1, la arquitectura X86 no fue diseñada tomando en cuenta que pudiera ser virtualizada (Rose, 2004). Sin embargo los fabricantes de procesadores empezaron a buscar métodos para administrar de mejor manera las interrupciones generadas por máquinas virtuales sobre esta arquitectura, mejorando la función de administración que tiene el hipervisor de las mismas.

La familia Nehalem (o Xeon 5500 ó 5600) de procesadores Intel cuenta con tecnologías desarrolladas específicamente para soportar entornos de virtualización de servidores. Algunas de de estas tecnologías son (Intel, 2009):

1) Tecnología Intel VT-x: incluída en el procesador Nehalem, permite que los sistemas operativos de los equipos virtuales tengan una comunicación más directa con el hardware del equipo, reduciendo lo más posible la intervención del hipervisor en este tipo de transacciones. Esto funciona activando distintos estados del procesador que permiten gestionar de mejor manera la intervención del hipervisor a diferentes niveles de interrupciones del procesador (Neiger, 2006)

Page 33: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

33

2) Tecnología Intel VT-d (o Intel Virtualization Technology for Directed I/O):

incluída en el chipset Intel ayuda a acelerar la comunicación entre las máquinas virtuales y los dispositivos de entrada y salida del hardware.

A pesar de que el escenario propuesto contempla menos servidores que lo

que ya estaba implementado, los avances en las arquitecturas de procesadores Intel Xeon permiten obtener mejor desempeño en el proceso de aplicaciones y equipos más eficientes en el consumo de energía, ambos puntos clave para la solución de Grupo Elektron.

La tabla 3.2 muestra los procesadores de los equipos actuales (ver tabla 1.6 de capítulo uno) y los de los procesadores propuestos, así como el nombre de la arquitectura que Intel le da a cada familia de producto así como el consumo de energía de cada procesador.

Tabla 3.2 – Comparación de consumo de energía de procesadores entre la arquitectura actual

y la propuesta de virtualización

El consumo combinado de energía de los procesadores viejos es de 1970W, mientras que el de la arquitectura nueva es de 540W. Se ve claramente que la tecnología más reciente es mucho más eficiente en este sentido.

A continuación se describe una comparación que puede permitir medir el desempeño de la nueva familia de procesadores. La figura 3.1 muestra los puntos de referencia de desempeño entre familias de procesadores para servidores Intel basada en el estándar SPECint para medir el procesamiento de dígitos de un procesador y la capacidad que tiene de manejar su número flotante.

En la figura 3.1 se alcanza a apreciar el desempeño superior que tiene la familia de procesadores Nehalem sobre sus predecesores (Intel, 2009). La familia Clovertown se situaría entre la Woodcrest y la Harpertown (que es predecesora a Nehalem). Paxville estaría entre “SC Xeon” y Woodcrest. Prestonia pertenece a la categoría de SC Xeon (Single Core Xeon).

Page 34: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

34

Figura 3.1 – Comparación de consumo de energía de procesadores entre la arquitectura actual

y la propuesta de virtualización

La figura 3.2 ilustra de manera simplificada la comparación de desempeño entre los procesadores de la arquitectura actual y el procesador de la arquitectura propuesta (Nehalem)

Figura 3.2 – Comparación de desempeño entre procesadores actuales y arquitectura propuesta

Cabe mencionar que se eligió la arquitectura de procesadores Intel porque el 90% de la arquitectura de Grupo Elektron está estandarizada con este proveedor de procesadores. AMD puede otorgar funcionalidades similares, pero Grupo Elektron quiere estandarizar lo más posible su base instalada. La tabla 3.3 describe la configuración propuesta para los tres servidores del escenario con virtualización.

Page 35: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

35

Tabla 3.3 – Configuración de servidores para solución con virtualización

Debido a la naturaleza confidencial de las aplicaciones desarrolladas por

Grupo Elektron, la única información que pueden proporcionar es que la aplicación promedio usa 2GB en RAM y de 120 a 160 GB en disco duro. El número máximo de aplicaciones que han estado en cola al mismo tiempo es de cincuenta. Por esa razón se dimensionó la configuración con ese límite en mente.

La mejora en desempeño de procesadores de la generación Nehalem es aproximadamente del 30 al 50% por núcleo de procesador (ver figura 3.2). Si las aplicaciones podían ejecutarse en un procesador de un solo núcleo con la mitad del desempeño, entonces un núcleo de un procesador de cuatro núcleos teóricamente puede ejecutar dos aplicaciones. La tabla 3.4 resume los requerimientos de memoria y procesador tomando en cuenta una carga máxima de 50 máquinas virtuales dividida en los tres servidores..

Tabla 3.4 – Recursos necesarios de procesamiento y memoria usando virtualización de

servidores

Se dejó un espacio adicional en memoria por servidor para que el hipervisor tenga lugar para ejecutarse, en caso de que haya un pico importante de carga en las máquinas virtuales.

Por otro lado un servidor con dos procesadores de cuatro núcleos puede soportar de 15 a 20 servidores virtuales (Chahal, 2007) siempre y cuando las aplicaciones sean candidatas a ser virtualizadas. . 3.2.2 Unidad de Almacenamiento iSCSI de 8TB

Al momento de consolidar servidores los equipos físicos disminuyen, sin embargo hay una alta probabilidad de que el número de máquinas virtuales

Page 36: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

36

corriendo en un equipo físico aumente de manera considerable ya que se están corriendo el mismo número de aplicaciones que antes.

Por esa razón es recomendable tener la capacidad de no sólo poder respaldar las máquinas virtuales de manera redundante, sino también al hipervisor que controla todos los mecanismos de virtualización (Wolf, 2007). Comúnmente se usa alguna opción de almacenamiento que sea rápida, segura y confiable que permita tener acceso a los servidores virtuales en cualquier momento a través de la red. Por esta razón una red de área de almacenamiento es útil.

Usando esta tecnología podemos hacer que los servidores físicos sólo ejecuten las máquinas virtuales y éstas residan físicamente en la unidad de almacenamiento. Los beneficios logrados son:

1) Mayor seguridad: Una unidad de almacenamiento dedicado es más segura para almacenar información que un servidor. Además, en caso de fallar un servidor, inhabilitaría todos los servidores virtuales que se encuentren almacenados en él (no como en un escenario físico que en caso de falla sólo se inhabilitaría un servidor).

2) Portabilidad: Se pueden transportar máquinas virtuales de un servidor físico a otro a través de la red.

3) Migración en vivo: Permite migrar un servidor virtual de un equipo a otro aun cuando este se encuentre ejecutando algún proceso.

4) Balanceo de cargas en el centro de datos: El consumo de recursos de cómputo en la empresa no siempre es lineal. Hay momentos en los que los servidores con aplicaciones reciben más carga que otros (por ejemplo en un martes a mediodía en una oficina hay más carga que quizá un fin de semana). El usar una red de área de almacenamiento nos permite migrar servidores virtuales a menos servidores físicos que soporten la carga reducida, ahorrando en costos de electricidad.

Existen diferentes protocolos de red de área de almacenamiento, los más usados son Fibra Canal (Fiber Channel Protocol) y iSCSI. Algunas de las ventajas que la tecnología iSCSI cuenta sobre Fibra Canal son las siguientes (Sacks, 2001):

- ISCSI usa estándares de red TCP/IP, los cuales son muy sencillos de administrar por los profesionales de sistemas ya que están muy familiarizados con él (a diferencia de Fibra Canal que usa un protocolo propietario más complejo)

- Los costos totales de almacenamiento bajan ya que la red de área de almacenamiento puede operar en la misma red TCP/IP de las organizaciones, reduciendo los gastos iniciales de adquisición y de administración

Una de las desventajas que tiene la tecnología iSCSI sobre Fibra Canal es

la velocidad. Aunque la velocidad de las redes TCP/IP están alcanzando los 10 Gigabit, éstas aún no están estandarizadas. por lo que la tecnología de Fibra Canal aún se recomienda para sistemas donde la alta disponibilidad es requerida.

En el caso de la infraestructura para prueba de aplicaciones de Grupo Elektron, la alta disponibilidad no es un factor crítico, por lo que la tecnología

Page 37: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

37

iSCSI ofrece un desempeño adecuado adaptándose a la infraestructura en redes que el Grupo Elektron posee actualmente. En la sección 3.1.1se explicó que para aplicación consume 160 GB aproximadamente de disco duro para simular el entorno de un servidor promedio real. Si Grupo Elektron quiere probar 50 servidores al mismo tiempo quiere decir que requiere almacenamiento por 8,000 GB (aproximadamente 7.8 Terabytes). Por esta razón se proponen dos unidades de almacenamiento con 16 discos de 500GB a 7200 RPM sumando 8 Terabytes de capacidad por equipo. En total sumarían 16 Terabytes crudos de información, pero siempre se tiene que tomar en cuenta el espacio que ocuparán los arreglos RAID. Por lo que usables tendremos aproximadamente 6 Terabytes de información disponible por unidad de almacenamiento.

Se dimensionaron 12 TB para dejar un espacio aproximadamente 30% superior a la capacidad necesaria real, y así poder cubrir crecimientos posteriores. La tabla 3.5 resume los requerimientos de almacenamiento.

Tabla 3.5 – Recursos necesarios de almacenamiento usando virtualización de servidores

3.2.3 Hipervisor

En la sección 2.2 se mencionó que el componente que administra la relación entre los equipos virtuales y el hardware es una capa de software entre los dos llamada hipervisor, como se muestra en una figura 2.1.

Actualmente hay muchas ofertas de software de virtualización, sin embargo destacan tres propuestas líderes en el mercado. A continuación delinearemos sus características, ventajas y desventajas (CDW, 2010 y Computer Associates, 2010): a) VMWare

VMware es considerado pionero en materia de virtualización de servidores ya que fue, durante mucho tiempo, el único proveedor de soluciones de este tipo en la industria. Esto le permitió establecerse como el líder en este segmento por lo que desarrolló una base instalada considerable, sin mencionar el lograr el posicionamiento como la empresa que marca la pauta en materia de virtualización de servidores.

El producto principal de VMWare se llama Vsphere que está disponible en diferentes versiones, dependiendo de las necesidades del usuario. Algunas características importantes de VMWare son (Computer Associates, 2010):

- Es un hipervisor real, ya que tiene una capa de software que interactúa directamente con el hardware

- Soporta cambios de tamaño de volúmenes de manera dinámica - Es compatible con diferentes tecnologías de almacenamiento como

SAN, DAS, NAS, iSCSI, Fibra Canal. - Soporta diferentes sistemas operativos como máquinas huésped (Linux,

Windows, Solaris, etc.)

Page 38: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

38

VMware también cuenta con una plataforma centralizada de administración llamada VCenter Server que controla la administración de todos los servidores virtuales que se tengan, ya sea ver su desempeño, las cargas que están soportando, el aprovisionamiento de los mismos, etc.

Una de las desventajas que tiene la solución de VMWare es el precio en la adquisición y sobre todo en el soporte postventa del producto.

Pero quizá su desventaja más grande son los costos generales de licenciamiento. Cada servidor virtual debe contar con su propio licenciamiento de sistema operativo. b) Microsoft Hyper V

Microsoft decide entrar al mercado de virtualización con su producto Hyper-V cuando VMware ya se encontraba consolidado como el líder de este tipo de soluciones. Por esta razón Microsoft integra a Hyper V en su sistema operativo Windows 2008 Server R2. Esto se tradujo en ahorros importantes para los usuarios, ya que al adquirir el licenciamiento de Windows Server para sus servidores (que de todas maneras necesitaban comprar) ya tenían la opción de poder usar virtualización sin tener que incurrir en costos adicionales por un hipervisor extra. El nivel de sofisticación y funcionalidad de la suite de virtualización dependía de la versión de Windows Server que se adquiriera, siendo la Datacenter la más completa.

Algunas características importantes de Hyper V son (Computer Associates, 2010):

- Al igual que VMware, también es un hipervisor que opera directamente en el hardware.

- Soporta hasta 64 unidades de procesamiento lógicas (servidores de 8 sockets con procesadores de hasta 8 núcleos cada uno)

- Ejecuta hasta 384 máquinas virtuales por huésped. - Es compatible con múltiples tecnologías de almacenamiento como redes

de almacenamiento de área, redes de almacenamiento directo, iSCSI y Fibra Canal.

- Puede controlar procesadores o núcleos de procesador de manera individual.

- Soporta sistemas operativos huésped basados en Windows o Linux. La ventaja más clara que tiene Microsoft sobre sus competidores es su suite

unificada llamada System Center. Esta suite permite administrar sistemas físicos y virtuales. Así como aprovisionar servicios de virtualización de servidores, escritorios y aplicaciones.

La interfaz de la solución también es familiar porque es basada en Windows, que es el sistema operativo más usado en el mundo. También resulta ser una opción más económica que su competencia, especialmente VMware, ya que el hipervisor ya se encuentra en el sistema operativo del servidor que se va a adquirir (aunque las características avanzadas sólo están disponibles para las versiones Windows Datacenter que son considerablemente más caras).

Una ventaja adicional que tiene la versión Datacenter de Windows es que no solamente permite tener un número ilimitado de máquinas virtuales, sino que también todos los servidores virtuales generados con sistema operativo

Page 39: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

39

Windows Server tendrán licenciamiento legal, ahorrando al usuario el costo de dichas licencias.

Microsoft también tiene sus desventajas. Su solución de virtualización de servidores no es tan robusta o estable como la de VMWare; así mismo como la solución de migración en vivo. Por otro lado Microsoft entró al mercado tarde de virtualización, por lo que no tiene aún la experiencia ni el reconocimiento con sus clientes.

c) Citrix

Citrix Xenserver es la aplicación de virtualización de servidores de Citrix; ésta se encuentra desarrollada en Xen que es una plataforma de código abierto que lleva mucho tiempo en el mercado y que cuenta con una base robusta de desarrolladores. Esto permite hasta cierto punto que las organizaciones puedan desarrollar un software a la medida de sus necesidades.

Citrix también ofrece una solución de alta disponibilidad en su suite de manera en que reinicia los servidores virtuales de modo automático en caso de haber un fallo en alguno de ellos.

Xenserver también puede balancear automáticamente las cargas asignadas a los servidores virtuales sin que el usuario los monitoree en una consola de administración. La finalidad de este balanceo es optimizar el desempeño de los mismos o mejorar la densidad de los mismos. Xenserver también cuenta con herramientas de migración en vivo y de administración centralizadas como su competencia.

Algunas características importantes de Xen Server son (Computer Associates 2010):

- XenServer en sí es gratuito, pero para poder tener las características más avanzadas se necesita adquirir las versiones Platinum o Enterprise que sí tienen costo.

- Soporta diferentes sistemas operativos basados en Linux o Windows de 32 o 64 bit.

- XenServer es compatible con Hyper V, de forma que se puede hacer balanceo de cargas entre las dos plataformas.

Xen tiene mucho tiempo en el mercado, y como se mencionó, cuenta con mucho apoyo de desarrolladores, sin embargo la solución de virtualización de servidores no es tan robusta como la de VMWare. Por lo mismo Citrix se ha enfocado mucho más en el mercado de virtualización de escritorios, donde es líder. Una ventaja que tiene Citrix es que su esquema de precios es mucho más agresivo que el de VMWare, aunque no tanto como el de Microsoft. Además de que al igual que VMWare, todos los servidores virtuales que se generen en esta plataforma deberán de tener licenciamiento adicional, subiendo los costos generales de la solución.

VMWare se presenta como la solución más robusta para soluciones de virtualización ya que es muy estable la funcionalidad de aprovisionamiento de servidores, así como la manera en que se pueden migrar en vivo los mismos, pero desafortunadamente es la más cara en el mercado.

Microsoft ofrece un buen balance en su relación desempeño/precio, una funcionalidad adecuada para aprovisionamiento y administración de servidores virtuales.

Page 40: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

40

Además, Windows Server Datacenter Edition puede tener una cantidad ilimitada (mientras el hardware lo alcance a soportar) de servidores virtuales con licenciamiento legal de Windows Server incluido.

Citrix ofrece la solución menos robusta de las tres, ya que el foco de sus soluciones siempre ha sido la virtualización de escritorios y no de servidores. Por esta razón se elige a Microsoft como la opción que ofrece mejor relación precio/beneficio para Grupo Elektron. 3.2.4 Gabinete 42U

Para poder unificar el hardware en un solo lugar se decidió usar un gabinete estándar de 42 U, de los cuales se usaran 6U para los tres servidores y 6U para las dos unidades de almacenamiento iSCSI. Dejando espacio suficiente para futuras capacidades de expansión. 3.3. Evaluación de la solución de virtualización de servidores.

En la introducción del presente capítulo se explicó que los indicadores que usaremos para evaluar la eficacia de las soluciones propuestas son el tiempo de aprovisionamiento de servidores de prueba, consumo de energía de la solución, espacio utilizado y precio.

A continuación se detalla cómo este escenario usando virtualización de servidores, atacaría cada uno de estos rubros comparándolos con lo que se tiene en la infraestructura actual a) Tiempo de aprovisionamiento de servidores de prueba

En el capítulo uno se detalla que el principal problema del proceso de pruebas del software desarrollado es la asignación de recursos para prueba de aplicaciones, ya que el entregar un servidor para las mismas podía demorar de uno a dos meses cuando se probaban más de 21 aplicaciones al mismo tiempo.

El hardware es muy limitado y la única manera de poder garantizar un entorno 100% aislado para pruebas es esperar a que el proceso se complete en un solo servidor. Es decir, todo el poder de procesamiento de un servidor está dedicado a una sola aplicación.

En el escenario usando virtualización el tiempo de aprovisionamiento se reduce prácticamente a cero ya que con sólo una instrucción de la consola de administración del hipervisor se pueden generar los servidores virtuales que se requieran. Además cada servidor virtual está completamente aislado del otro, por lo que se pueden correr múltiples servidores a la vez en el mismo equipo físico.

La única limitante en la cantidad de servidores virtuales que se pueden tener corriendo en la infraestructura a la vez la determina el hardware y el tipo de aplicaciones que se estén corriendo en cada servidor virtual.

Como se detalló en la sección 3.2.1, el límite de servidores virtuales es de 50. Grupo Elektron prueba en promedio entre 30 a 40 aplicaciones al mismo tiempo (en base a la información obtenida de la gerencia del Departamento de Calidad y Desarrollo).

b) Consumo de energía de la solución

Page 41: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

41

En tabla 3.6 presentamos el consumo general en Watt y los BTU generados por la infraestructura actual

Tabla 3.6 – Consumo de energía con infraestructura actual

La tabla 3.7 muestra el consumo de energía del escenario con virtualización

de servidores

Tabla 3.7 – Consumo de energía con infraestructura propuesta con virtualización de servidores

Comparando ambos escenarios vemos claramente qué tanto el

consumo de energía de los equipos y el calor generado por los mismos es menor en el escenario con virtualización de servidores.

c) Espacio utilizado

La tabla 3.8 muestra el consumo en unidades de gabinete (U) de la infraestructura actual

Tabla 3.8 – Consumo de espacio de infraestructura actual

A su vez la tabla 3.9 detalla el espacio que ocuparía la solución propuesta

con virtualización de servidores

Page 42: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

42

Tabla 3.9 – Consumo de espacio con infraestructura propuesta con virtualización de servidores

De igual manera que el consumo de energía, el usar menos servidores contribuye sensiblemente a disminuir el espacio usado, ya que en este ejercicio se disminuyó casi en siete veces el espacio utilizado para este proceso. La solución propuesta nos ayudaría a pasar prácticamente de dos gabinetes de altura completa (44 U cada uno) a usar menos de la mitad de uno.

c) Precio de la solución

Para integrar el costo de la solución con virtualización de servidores se tiene que incluir un costo de implementación de la misma que implica la instalación y puesta a punto del equipo propuesto.

Aunque este rubro es necesario para el funcionamiento del equipo, cualquier solución con o sin virtualización necesita tener un componente de este tipo. En el caso del escenario con virtualización sí impacta directamente al factor económico, ya que la implementación es más compleja que la que aplicaría en un escenario sin virtualización.

Se incluye también un rubro de capacitación para el uso de la unidad de almacenamiento iSCSI para que Grupo Elektron pueda hacer uso al 100% de las capacidades del equipo.

La tabla 3.10 detalla el costo completo proyectado de la solución y cada uno de sus componentes.1

1 Precio promedio obtenido de propuestas de tres proveedores distintos de la solución (Dell, HP, IBM)

Page 43: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

43

Tabla 3.10 – Precio en dólares proyectado de la solución propuesta de virtualización de servidores

Es complejo saber cuánto pagó Grupo Elektron por la infraestructura actual ya que ésta se fue construyendo poco a poco y se fueron comprando y heredando servidores de otras áreas conforme se fueron necesitando. Además, al ser equipo muy viejo, es muy probable que el precio con el que se

Page 44: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

44

adquirieron en su momento sea superior a lo que costaría algo similar en este momento.

Por lo mismo no se puede hacer una comparación directa entre los costos de adquisición de la infraestructura actual y la propuesta con virtualización de servidores. 3.4. Solución a la problemática presentada en la asignación de recursos de prueba de aplicaciones reemplazando directamente los servidores Como se comentó en la introducción del presente capítulo se analizará también un escenario en el que simplemente se reemplazarían los servidores existentes.

Se parte de la base en que sólo se cambiara equipo viejo por servidores más actuales. En la tabla 3.11 podemos ver los equipos de la arquitectura actual y el equipo que se propone que sea su reemplazo respetando el número de equipos.

Tabla 3.11 – Servidores usados en propuesta de reemplazo directo

3.4.1.- Servidor 2U – un procesador de cuatro núcleos

Para efectos de este escenario se usará un servidor de arquitectura Nehalem de Intel, similar al que se usó en la sección 3.2, pero con una configuración distinta.

En esa misma sección se habló mucho de las ventajas de esta arquitectura sobre sus predecesores en materia de desempeño, por lo que en este escenario se estimó una ventaja de desempeño de aproximadamente el 25% y 30% sobre los servidores que se están reemplazando en base a la tabla de desempeño de manejo de punto flotante de esta misma sección.

Básicamente se propone que todos los servidores sean de 2U de una misma configuración. La ventaja es que se reemplazan siete servidores que anteriormente eran de torre y se cambian por equipos de gabinete, aprovechando de mejor manera el espacio.

La tabla 3.12 muestra la configuración del servidor propuesto para esta solución.

Page 45: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

45

Tabla 3.12 – Configuración de servidor para escenario de reemplazo directo

Se tomó de base el hecho de que cada aplicación promedio necesita al

menos entre 2 a 4GB en RAM y entre 120 a 160 GB en disco duro para poder ejecutarse. Se subió la memoria para poder soportar picos de alguna aplicación que pueda necesitar más desempeño que otras.

Como se mencionó en la sección 3.2.1 se propone arquitectura Intel porque Grupo Elektron es la que desea estandarizar en su infraestructura.

En este escenario no se propone una unidad de almacenamiento externo o una red de almacenamiento como en el escenario de virtualización de servidores ya que al reemplazar directamente los servidores la relación aplicación-servidor físico es 1:1. Una red de almacenamiento estaría subutilizada y una unidad de almacenamiento sólo serviría para hacer respaldo a los servidores, lo cual es útil pero no ayuda al proceso de asignación de servidores de prueba. 3.4.2 Gabinete 42U Para el escenario de reemplazo directo de servidores también se propone un gabinete de 42U similar al que se planteó en la sección 3.2.4. para el escenario usando virtualización de servidores. 3.5.- Evaluación de la solución de reemplazo directo de servidores para la solución de la problemática en la asignación de recursos para prueba de aplicaciones.

En la presente sección se evaluarán los mismos indicadores que se tomaron en cuenta para la sección 3.3 comparando la propuesta de reemplazo directo de servidores con lo que se tiene en la infraestructura actual. a) Tiempo de aprovisionamiento de servidores de prueba

Page 46: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

46

Como se mencionó en la sección 1.3, el problema principal que tiene Grupo Elektron con la arquitectura actual de prueba de aplicaciones es el tiempo en que se tardan en tener recursos disponibles para poder realizar las pruebas del software que es desarrollado internamente.Se estima en base a los puntos de referencia mostrados en la sección 3.2.1. mejoras en alrededor del 25% o 30% en el desempeño del hardware al probar las aplicaciones desarrolladas.

Sin embargo, estas mejoras son solamente en el cómputo del proceso de pruebas (llámese compilación, correr aplicaciones, etc.) . Todo el ciclo de asignación de recursos de prueba en sí, sigue teniendo la misma limitante que la arquitectura actual. Una vez que se superan las 21 aplicaciones de prueba en la infraestructura seguiremos teniendo los mismos cuellos de botella ya que el hardware no cambia el ciclo general del proceso de prueba de aplicaciones.

Por esta razón no podemos concluir qué tanto impacto puede tener las ventajas en desempeño, porque el resto del proceso sigue siendo ineficiente. b) Consumo de energía de la solución

A continuación la tabla 3.13 muestra el consumo de energía de la infraestructura actual.

Tabla 3.13 – Consumo de energía infraestructura actual

En la tabla 3.14 podemos ver el consumo de energía de la opción de

reemplazo directo de servidores.

Tabla 3.14 – Consumo de energía reemplazando directamente los servidores

Se observa que el consumo de energía en watts se incrementó en la

solución de reemplazo directo de servidores. Se tomó en cuenta el tamaño de las fuentes de poder para calcular este dato.

En la tabla 3.2 se mencionó que los procesadores de la nueva familia de servidores son más eficientes en el consumo de energía. Sin embargo los servidores nuevos cuentan con fuentes de poder más robustas que los equipos

Page 47: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

47

anteriores para soportar más discos duros internos, tarjetas controladoras y adaptadores de red. Es por esa razón por la que en general consumen más energía que la infraestructura actual. c) Espacio ocupado

En la tabla 3.15 se detalla el espacio ocupado en unidades de servidor de la arquitectura actual

Tabla 3.15 – Consumo de espacio de infraestructura actual

En contraparte se puede observar en la tabla 3.16 el espacio ocupado por

la infraestructura propuesta en esta sección

Tabla 3.16 – Consumo de espacio de propuesta de reemplazo directo de servidores

Se puede observar que se reduce el consumo de espacio en poco más

de 40 unidades de gabinete. Esto se debe principalmente por el uso de servidores de gabinete para reemplazar los de torre que ocupaban demasiado espacio. Además se reemplazaron servidores de gabinete de 4U por equipos de 2U, de manera que se aprovechó considerablemente el espacio. La diferencia es clara ya que se libera un gabinete completo de 44U con la infraestructura propuesta. d) Precio de la solución

La tabla 3.17 presenta el precio proyectado de la solución de reemplazo directo de servidores2

2 Precio promedio obtenido de tres proveedores distintos de la solución (Dell, HP, IBM)

Page 48: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

48

Tabla 3.17 – Precio proyectado para la solución de reemplazo directo de servidores

El precio de los servidores contempla instalación de los mismos

(montaje en el gabinete, conexión a toma eléctrica e instalación de sistemas operativos). Se incluyeron también en la propuesta un gabinete de 42U para poder instalar los servidores nuevos y 21 licencias de sistemas operativos Microsoft Windows 2008 para poder operar los mismos.

Como se detalló en la sección 3.2, es difícil comparar el costo de la arquitectura actual porque los servidores se fueron adquiriendo conforme se fueron necesitando o en los tiempos que otras áreas los fueran liberando. 3.6 Comparación de escenarios de virtualización de servidores contra reemplazo directo de equipos

En la presente sección compararemos los dos escenarios propuestos como solución de la problemática en la asignación de recursos para la prueba de aplicaciones que tiene Grupo Elektron y concluir cuál sería el más idóneo para la empresa, usando los indicadores que se establecieron en la sección 3.1 del presente capítulo. a) Tiempo de aprovisionamiento de servidores para pruebas.

Como se detalló en la sección 1.3 un tema crítico para Grupo Elektron es el tiempo que demora el aprovisionamiento de servidores para que se puedan realizar pruebas de las aplicaciones desarrolladas. En la tabla 3.18 se realiza la comparación entre ambos escenarios.

Tabla 3.18 – Tiempo de aprovisionamiento entre escenarios y capacidad máximo de

aplicaciones de prueba corriendo al mismo tiempo

El escenario usando virtualización ofrece una ventaja sustancial contra el escenario de reemplazo directo de dos maneras. Primero en la cantidad de servidores que cada infraestructura puede soportar. El escenario de reemplazo directo de servidores soporta hasta 21 aplicaciones de prueba al mismo tiempo.

Page 49: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

49

En el caso del escenario usando virtualización se pueden soportar hasta 50 servidores virtuales corriendo al mismo tiempo (ver sección 3.2.1 del presente capítulo) ya que se dimensionó la arquitectura tomando en cuenta este límite máximo (que estableció la gerencia del Departamento de Calidad y Desarrollo).

En la tabla 3.19 se compara el tiempo de aprovisionamiento teórico entre ambos escenarios. En la misma se puede observar que no sólo el tiempo de aprovisionamiento es muy alto en el escenario de reemplazo de directo de servidores cuando se llega al límite de su capacidad (que llega a ser casi de tres meses) sino que se llega al mismo de manera súbita.

Tabla 3.19 – Tiempo de aprovisionamiento del escenario de reemplazo directo de servidores en

minutos

En cambio en el escenario usando una solución de virtualización de servidores, no sólo es más rápido el aprovisionamiento sino que también la utilización de los recursos es mejor ya que el tiempo en que se entregan los

Page 50: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

50

servidores virtuales depende mucho de la carga que tenga la infraestructura. Entre más carga tenga la infraestructura más se degradará el desempeño.

El límite máximo de máquinas virtuales puede ser superior ya que es probable que el hardware sea capaz de ejecutar más máquinas virtuales, pero no lo podemos validar sin tener la solución ejecutándose en la realidad.

Y segundo, en el tiempo en que se aprovisiona un servidor nuevo destinado a pruebas. Mientras el número de aplicaciones que se estén probando al mismo tiempo sea menor o igual 21 el tiempo entre ambos escenarios puede ser prácticamente el mismo. Una vez que se supera ese límite el escenario de reemplazo directo sufre las mismas limitaciones que la arquitectura actual. Se llega al límite de aplicaciones en ejecución mucho más rápido en el escenario de reemplazo directo de servidores que en el escenario con virtualización.

Si Grupo Elektron está probando entre 30 y 50 aplicaciones al mismo tiempo, el aprovisionamiento de servidores en el escenario de reemplazo de servidores sube de 20 a 30 días. Mientras que en el escenario con virtualización sigue siendo prácticamente instantáneo.

Concluimos que el escenario con virtualización es una mejor opción para atacar el problema del tiempo de aprovisionamiento de servidores para pruebas, siempre y cuando se estén probando entre 30 y 50 aplicaciones al mismo tiempo. b) Consumo de energía entre escenarios. La tabla 3.20 muestra el consumo de energía y generación de calor de los dos escenarios propuestos.

Tabla 3.20 – Comparación de consumo de energía y calor generado entre escenarios

propuestos

En base a la tabla 3.20 el escenario usando una solución de virtualización es más eficiente en el consumo de energía que el reemplazar la infraestructura actual con servidores nuevos.

Esto se explica por el número de equipos usados, ya que en la solución con virtualización estamos usando solamente tres servidores y dos unidades de almacenamiento. Mientras que en el segundo estamos usando 21 equipos.

Se llega a esta conclusión asumiendo que Grupo Elektron usará ambas infraestructuras a su máxima capacidad, es decir, 21 aplicaciones de prueba para el escenario de reemplazo directo de servidores; y de 30 a 50 en el escenario con virtualización.

c) Espacio utilizado

Page 51: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

51

En la tabla 3.21 se realiza una comparación en el consumo de espacio entre el escenario usando virtualización y el escenario de reemplazo directo de servidores.

Tabla 3.21 – Comparación de consumo de espacio entre escenarios

Se observa el hecho de que al usar menos servidores en el escenario de la

solución con virtualización de servidores se impacta de manera importante en el espacio ya que esta propuesta sólo ocupa el 28% de espacio que ocuparía la otra.

Si tomáramos de referencia un gabinete de 44 U como medida, la solución de reemplazo directo ocuparía un gabinete completo. Mientras que en la solución con virtualización podríamos usar la cuarta parte de un solo gabinete, optimizando de manera importante el espacio, mismo que se podría usar para otro tipo de proyectos. d) Costos La tabla 3.22 detalla los costos de adquisición de ambas soluciones.

Tabla 3.22 – Comparación de costo de adquisición entre escenarios

Se observa que el costo de adquisición del escenario usando una solución

de virtualización es más alto que el reemplazo directo de servidores con una diferencia de 37,689 dólares antes de IVA.

Este dato es interesante ya que se obtienen menos equipos en la primera solución (tres servidores, gabinete, dos unidades de almacenamiento y conmutadores) que en la segunda (21 servidores). Sin embargo, hay que tomar en cuenta que la solución de virtualización incluye una red de almacenamiento basada en iSCSI. En la tabla 3.23 se realiza una comparación entre costos de administración de ambos escenarios

Page 52: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Capítulo 3.-Análisis de escenarios: Virtualización de servidores y Reemplazo directo de equipos

52

Tabla 3.23 – Comparación de costos de administración entre escenarios

Para llegar a estos números se tomó de base el hecho de que los costos de

administración anualizados de cada servidor son de promedio 10,000 dólares (Goth, 2007).

Las máquinas físicas que correrán la solución de virtualización también tienen costos de administración; los mismos 10,000 dólares que mencionamos anteriormente. Se realizó la proyección a tres años que es el tiempo de garantía que tienen ambas soluciones, y vemos que los costos de administración de la solución de virtualización son considerablemente más bajos que la solución de reemplazo de servidores.

En el primer año la solución de reemplazo de servidores generaría costos de administración de 210,000 dólares, mientras que la solución de virtualización de servidores generaría 50,000. La diferencia de 160,000 dólares ayuda a justificar el costo inicial de adquisición de la segunda solución. Concluimos que, aunque la solución de virtualización es más cara en el costo de adquisición inicial, esta diferencia se recupera en el primer año utilización de la misma. Después de revisar los escenarios propuestos para resolver la problemática, se concluye que es la solución basada en virtualización de servidores la que mejor resolvería la problemática presentada en el proceso de aprovisionamiento de recursos para prueba de aplicaciones de Grupo Elektron.

El tiempo de aprovisionamiento de servidores de prueba que originalmente era de uno a dos meses se reduce a cuestión de minutos, disminuye de manera significativa el espacio ocupado por la infraestructura, baja el consumo de energía de la misma y como beneficio adicional se reducen los costos de administración que ayudan a justificar la adquisición de este escenario que de entrada es más caro.

Este es un ejemplo claro y factible en que los beneficios la virtualización de servidores pueden ser aplicados a un proceso de pruebas de software como se había planteado en la sección 2.4 y en la hipótesis de la introducción del presente trabajo.

Page 53: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

CONCLUSIÓN

Page 54: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Conclusión

54

El objetivo del presente trabajo era estudiar la problemática presentada en

el proceso de aprovisionamiento de servidores para pruebas de aplicaciones de software de Grupo Elektron, analizar dos posibles escenarios que pueden ayudar a resolverla y concluir qué es que lo podría hacer de manera más convincente.

Después de analizar los resultados proyectados en el capítulo tres podemos concluir que es más viable implementar una solución basada en virtualización de servidores para atacar la problemática en la asignación de recursos para el proceso de pruebas de software de Grupo Elektron en base a lo siguiente:

1) El tiempo que demora la solución de virtualización de servidores en aprovisionar recursos para ejecución de pruebas toma solamente el tiempo que se tarde en ejecutarse un servidor virtual (que puede ser de unos cuantos minutos dependiendo de la complejidad del mismo), mientras que reemplazar los servidores directamente no soluciona el cuello de botella que se genera una vez que se sobrepasa el número de servidores físicos disponibles para pruebas.

2) El espacio ocupado por la solución de virtualización de servidores es menor, de 12 unidades de gabinete. Mientras que el reemplazo directo de servidores ocupa un gabinete completo de 44 unidades

3) La energía consumida por la solución de virtualización de servidores es menor, de 6,980 Watts contra 36,540 del reemplazo directo de servidores.

4) Los costos de adquisición son más altos en la solución de virtualización de servidores, pero como se detalló en la tabla 3.22, éstos se compensan en el primer año de operación de los equipos, debido a que los costos de administración del reemplazo directo de servidores son más altos.

5) La solución de virtualización de servidores es más flexible para soportar cargas de trabajo más fuertes ya que, aunque el límite teórico es de 50 aplicaciones, es probable que se puedan probar más en la misma infraestructura. Por supuesto esto implicaría una pérdida en desempeño, pero no implicaría comprar más equipos. En el caso de la solución de reemplazo directo de servidores, si se quieren probar más allá de las 21 aplicaciones es necesario comprar un servidor nuevo por cada aplicación adicional. Por los puntos anteriores podemos deducir que las técnicas de

virtualización de servidores sí pueden ayudar a resolver la problemática presentada en el proceso de asignación de servidores para prueba de aplicaciones de Grupo Elektron en este momento.

La infraestructura de virtualización de servidores es flexible y tiene la capacidad de poder irse adaptando en caso de que las aplicaciones que se sigan desarrollando vayan creciendo en complejidad en el futuro.

Hay dos aspectos importantes a cuidar: primero el número de equipos virtuales que se corre en la infraestructura para no caer una expansión descontrolada de servidores virtuales; y segundo los requerimientos adicionales que puedan demandar las aplicaciones al irse haciendo más complejas.

Page 55: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Conclusión

55

La ventaja de usar un enfoque de virtualización de servidores, es que éste se puede hacer modular. Teniendo esta base se pueden añadir más servidores a la infraestructura conforme sea necesario y así balancear cargas para mejorar el rendimiento de la misma. La ventaja es que añadir un servidor más puede ayudar a ejecutar en promedio de 15 a 20 máquinas virtuales, que optimiza enormemente la inversión.

Si no se cuentan con los recursos para invertir en hardware adicional se puede implementar un esquema bajo demanda, donde en caso de requerirse se puedan tomar recursos de cómputo prestado de otras organizaciones para administrar una demanda inesperada de poder de procesamiento.

En el futuro quizá se pueda migrar toda esta infraestructura a una nube, donde alguien más, ya sea un proveedor externo o interno, se encargue de administrar los servidores físicos; y el área encargada de las pruebas sólo se preocupe por pagar por el procesamiento que realmente usa y no por una infraestructura física. De esa manera se olvidan de los costos de administración de servidores físicos y virtuales (que no son tan sencillos de cuantificar, pero pueden ser considerables si no hay una disciplina en la generación de máquinas virtuales).

El usar virtualización de servidores en este caso abre espacio a muchas posibilidades a futuro que definitivamente no podríamos tener soportando la misma arquitectura y comprando más equipo.

Page 56: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

BIBLIOGRAFÍA

Page 57: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Bibliografía

57

BARHAM, Paul y DRAGOVIC, Boris. Xen and the Art of Virtualization. University of Cambridge Computer Laboratory, Proc. ACM Symposium on Operating Systems, Bolton Landing , 2003, pp. 1-4. CDW. Server Virtualization. CDW Corporation, 2010. Pp. 3-6 COMPUTER ASSOCIATES. Virtualization Best Practices. Computer Associates, 2010, pp. 23-30 CHAHAL, Sudip. Memory Sizing for Server Virtualization. Intel, 2007, pp. 5-9 CHEN, Qiyang y XIN, Rubin. Optimizing Enterprise IT Infrastructure through virtual Server Consolidation. Proceedings of the 2005 Informing Science and IT Education Joint Conference, Montclair State University, Montclair, 2005, pp. 43-47. CREASY, R.J. The Origin of the VM/370 Time-Sharing System, IBM J. Research and Development , Sept.1981, pp. 483–490. GOTH, Greg. Virtualization: Old Technology Offers Huge New Potential. IEEE Distributed Systems Online, vol. 8, no. 2, art. no. 0702-o2003, 2007, pp. 1-3 INTEL. Intel Xeon Processor 5500 Series – An Intelligent Approach to IT Challenges. 2009, pp. 4 KAMPERT, PAULIS. A taxonomy of virtualization technologies. tbm.tudelft.nl, Delft University of Technology, Faculty of Systems Engineering Policy Analysis & Management, 2010, pp. 9-22 MENASCÉ, Daniel. Virtualization: Concepts, applications and performance modeling. George Mason University, 2005, pp. 1-4 MOORE, Gordon. Cramming More Components Onto Integrated Circuits. Electronics Magazine, 1965, 1-3 NANDA, Susanta, CHIUEH, Tzi-cker. A Survey on Virtualization Technologies. Department of Computer Science, SUNY at Stony Brook, 2005, pp. 1-4 NEIGER, Gil, SANTONI, Amy, LEUNG,Felix, RODGERS,Dion, UHLIG, Rich. Intel Virtualization Technology: Hardware Support for Efficient Processor Virtualization. Intel, 2006, pp. 167,168 OLAN, Michael. Unit Testing: Test Early, Test Often. Richard Stockton College, 2003, pp. 1-2 POPEK, G.J. y GOLDBERG, R.P.Formal Requirements for Virtualizable Third Generation Architectures. Comm. ACM, 1974, pp. 412–421.

Page 58: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Bibliografía

58

REAL ACADEMIA ESPAÑOLA. Diccionario de la Lengua Española (22ª Ed.). ESPASA-CALPE, 2001 ROSE, Robert. Survey of System Virtualization Techniques. The Pennsylvania State University, 2004, pp. 1-7. SACKS, David. Demystifying DAS, SAN, NAS, NAS, Gateways, Fibre Channel, and iSCSI. IBM Corporation, 2001.pp. 5-14 TURBAN, E; King, D; Lee, J; Viehland, D. Building E-Commerce Applications and Infrastructure, Electronic Commerce A Managerial Perspective (5ª edición). Prentice-Hall. pp. 27 VAN DOORN, Leendert. Hardware Virtualization Trends. T.J. Watson Research Center, IBM, 2006, pp. 4 VOGELS, Werner. Beyond Server Consolidation. Association for Computer Machinery Queue, 2008., pp. 22-27 WOLF, Chris. Let's Get Virtual: A Look at Today's Server Virtualization Architectures. Burton Group, 2007, pp. 6-12, 20-21, 23-31 Páginas de Internet: DELL. Especificaciones servidor Dell R710 (consultado el 5 de febrero 2012). http://www.dell.com/downloads/global/products/pedge/PowerEdge_Port olio_brochure_2011.pdf, 2011. DELL. Especificaciones Unidad de almacenamiento iSCSI Equalogic PS6000E (consultado el 5 de febrero 2012). http://www.equallogic.com/products/default.aspx?id=10629. 2011

HP. Especificaciones Servidor HP DL380 (consultado el 5 de febrero 2012). http://h10010.www1.hp.com/wwpc/us/en/sm/WF06b/15351-15351 3328412-241644-241475-1121516-3330048 3330049.html?jumpid=reg_R1002_USEN,2008.

HP. Especificaciones Servidor HP DL580 (consultado el 5 de febrero 2012). http://h18004.www1.hp.com/products/servers/proliantdl580/specification -g3.html. 2012. HP. Especificaciones Servidor HP ML530 (consultado el 5 de febrero 2012). http://h20000.www2.hp.com/bizsupport/TechSupport/Document.jsp?obj ctID=c00345635&lang=en&cc=us&taskId=101&prodSeriesId=316545& odTypeId=15351. 2012.

INTEL. Procesadores Clovertown Intel Xeon (consultado el 5 de febrero 2012). http://ark.intel.com/ProductCollection.aspx?codeName=23349. 2007

Page 59: ANÁLISIS COMPARATIVO DE ESCENARIOS DE VIRTUALIZACIÓN DE ...biblio.upmx.mx/tesis/137765.pdf · virtualización de servidores es una técnica que podría atacar el problema de tiempo

Bibliografía

59

INTEL. Procesadores Paxville Intel Xeon (consultado el 5 de febrero 2012). http://ark.intel.com/ProductCollection.aspx?codeName=6191. 2007 INTEL. Procesadores Prestonia Intel Xeon (consultado el 5 de febrero 2012). http://ark.intel.com/ProductCollection.aspx?codeName=1838. 2002