40
119 CAPITULO IV DISEÑO DEL PROTOTIPO DE CLÚSTER PARA BALANCEO DE CARGA Y ALTA DISPONIBILIDAD 4.1 GENERALIDADES En este capítulo se presenta el diseño de la propuesta de un prototipo de Clúster, que tiene su base en la investigación de campo realizada a los estudiantes, personal docente y administrativo en la UFG. Para dar solución a los problemas anteriormente planteados; hemos propuesto tres alternativas de solución: Solución con software Propietario Lifekeeper. Solución con software Propietario VMware. Solución con software GNU/Linux. 4.2 FORMULACION DE LAS SOLUCIONES 4.2.1 SOLUCIÓN CON SOFTWARE PROPIETARIO LIFEKEEPER. LifeKeeper de SteelEye para linux es una aplicación informática que asegura la disponibilidad continua de usos uptime del sistema. LifeKeeper mantiene un gran nivel de disponibilidad de los sistemas en Clúster de Linux y mantiene la salud del sistema de vigilancia, ayuda a la conectividad del cliente y de proporcionar el acceso de datos ininterrumpido sin importar donde residen los clientes - en el Internet, el intranet o la extranet corporativo. LifeKeeper permite la recuperación del sistema automático los usos de failover a otros servidores en el Clúster. Esto ayuda a LifeKeeper a reducir al mínimo el riesgo de un monopunto de la falta y permite que los sistemas del Linux cumplan

CAPITULO IV DISEÑO DEL PROTOTIPO DE CLÚSTER PARA …ri.ufg.edu.sv/jspui/bitstream/11592/7364/5/005.1-P855c-Capitulo IV.pdf · VMware Infrastructure mejora la capacidad de respuesta,

Embed Size (px)

Citation preview

119

CAPITULO IV

DISEÑO DEL PROTOTIPO DE CLÚSTER PARA BALANCEO

DE CARGA Y ALTA DISPONIBILIDAD

4.1 GENERALIDADES

En este capítulo se presenta el diseño de la propuesta de un prototipo de

Clúster, que tiene su base en la investigación de campo realizada a los

estudiantes, personal docente y administrativo en la UFG.

Para dar solución a los problemas anteriormente planteados; hemos propuesto

tres alternativas de solución:

Solución con software Propietario Lifekeeper.

Solución con software Propietario VMware.

Solución con software GNU/Linux.

4.2 FORMULACION DE LAS SOLUCIONES

4.2.1 SOLUCIÓN CON SOFTWARE PROPIETARIO LIFEKEEPER.

LifeKeeper de SteelEye para linux es una aplicación informática que asegura la

disponibilidad continua de usos uptime del sistema. LifeKeeper mantiene un gran

nivel de disponibilidad de los sistemas en Clúster de Linux y mantiene la salud

del sistema de vigilancia, ayuda a la conectividad del cliente y de proporcionar el

acceso de datos ininterrumpido sin importar donde residen los clientes - en el

Internet, el intranet o la extranet corporativo.

LifeKeeper permite la recuperación del sistema automático los usos de failover a

otros servidores en el Clúster. Esto ayuda a LifeKeeper a reducir al mínimo el

riesgo de un monopunto de la falta y permite que los sistemas del Linux cumplan

120

los requisitos rigurosos de la disponibilidad de operaciones me misión-critica,

creando un ambiente resistente al fallo.

LifeKeeper proporciona protección para los componentes de hardware,

aplicaciones, datos y comunicación. Si cualquier componente en Clúster falla,

LifeKeeper asegura que los usuarios pueden acceder a sus datos con otro

(servidor) de la red.

Como funciona Lifekeeper:

LifeKeeper detecta fallas.

Toma medidas correctivas basadas en políticas de recuperación local, o

fallas.

Alerta de fallas del sistema.

4.2.1.1. HARDWARE A UTILIZAR

REQUERIMIENTOS MÍNIMOS PARA UTILIZAR LIFEKEEPER

Procesador Memoria Ram Disco Duro 22.0 Ghz 128 mb 10 MB

Nota: Se debe tener en cuenta los requerimientos de todas las aplicaciones que

se instalaran.

4.2.1.2. SOFTWARE A UTILIZAR

Clúster Herramienta

Alta Disponibilidad

Steeleye ha clustering and Data replication for linux

Balanceo de carga Dns

Sistema operativo Sles 10

Gestor de contenidos Moodle

Correo electronico Squirrelmail

121

4.3 PRESUPUESTO DEL PROYECTO

4.3.1 PRESUPUESTO DE RECURSO HUMANO

TIPO DE RECURSO

CANTIDAD DIAS DE

DURACION HORAS

/DIA TOTAL HORAS

COSTO

COSTO TOTAL

Técnico Especialista 1 5 7 35 $100.00 $3,500.00

TOTAL $3,500.00

4.3.2 PRESUPUESTO DE HARDWARE

TIPO DE RECURSO

CANTIDAD SERVER VALOR TOTAL

SERVIDOR 1 1 SYSTEM X 3650 $3000 $3000

SERVIDOR 2 1 SYSTEM X 3650 $3000 $3000

SERVIDOR DB (LB Aplication)

1 SYSTEM X 3650 $3000 $3000

SERVIDOR BDB 1 SYSTEM X 3650 $3000 $3000

TOTALES $12,000.00

4.3.3 PRESUPUESTO DE LICENCIAMIENTO

LICENCIA TIPO DE

LICENCIAMIENTO VALOR CANTIDAD TOTAL

Steeleyes protection Suite For

linux Por Servidor

$2500 * 650

por año 5 $15,625.00

SLES High HAvailability Storage

Infrastructure Por Servidor $1455 por año 5 $7,275.00

TOTALES $ 22,900.00

122

Figura No.1 Diagrama de Clúster con Lifekeeper

4.3.4 TOTAL DE LOS RECURSOS A UTILIZAR

CONCEPTO TOTAL

PRESUPUESTO DE RECURSO

HUMANO $ 3,500.00

PRESUPUESTO DE HARDWARE $ 12,000.00

PRESUPUESTO DE

LICENCIAMIENTO $ 22,900.00

SUBTOTAL $ 38,400.00

IMPREVISTO 3% $ 4992.00

TOTAL PRESUPUESTADO $43,392.00

4.4. DISEÑO FÍSICO DE LA SOLUCIÓN

123

4.5 SOLUCIÓN CON SOFTWARE PROPIETARIO VMWARE.

VMware Infrastructure es la serie de software más ampliamente implementada

para optimizar y administrar entornos de TI estándar de la industria mediante la

virtualización, desde la computadora hasta el centro de datos. La única serie de

software de virtualización lista para producción, VMware Infrastructure ha

ofrecido resultados comprobados a más de 20,000 clientes de todos los tamaños

y ha sido utilizada en una amplia variedad de entornos y aplicaciones. La serie se

encuentra completamente optimizada, ha sido rigurosamente probada y

certificada para la más extensa gama de aplicaciones de hardware, sistemas

operativos y software.

VMware Infrastructure proporciona funcionalidades incorporadas de

administración, optimización de recursos, disponibilidad de las aplicaciones y

automatización de operaciones que ofrecen ahorros de costos por

transformaciones y aumento de la eficiencia operacional, de la flexibilidad y de

los niveles de servicio de TI.

4.5.1 ¿CÓMO SE USA VMWARE INFRASTRUCTURE?

VMware Infrastructure brinda una TI con capacidad de respuesta: dinámica,

eficiente y disponible. Al eliminar muchas de las restricciones del hardware

tradicional, VMware Infrastructure permite a las empresas:

Implementa la Consolidación y Contención del Servidor de Producción.

Controla el crecimiento desmedido de los servidores al ejecutar aplicaciones de

software en máquinas virtuales en una menor cantidad de servidores, altamente

escalables y de clase empresarial.

124

Los clientes de VMware Infrastructure han podido consolidar 10 o más máquinas

virtuales por procesador físico, aumentando en forma considerable la utilización

de los servidores y controlando su crecimiento desmedido.

Proporciona Protección Avanzada de Continuidad del Negocio a un

Menor Costo.

Ofrece alta disponibilidad para las aplicaciones críticas con soluciones rentables

basadas en la virtualización. Con VMware Infrastructure, los clientes pueden

implementar una plataforma de recuperación ante desastres en forma unificada

que permita recuperar muchas máquinas virtuales de producción en el caso de

una falla de hardware sin la necesidad de invertir en un costoso 1:1 en hardware

para recuperación ante desastres.

Optimiza las Pruebas y Desarrollo de Software.

Consolida entornos de desarrollo, pruebas y escenificación disgregados que

implican diversos sistemas operativos y aplicaciones de múltiples niveles.

Configure portales de autoservicio para desarrolladores a fin de aumentar su

productividad.

Asegura y Administra las Computadoras Empresariales.

Asegura las computadoras empresariales de los empleados ubicados en distintas

áreas geográficas al proporcionar una imagen de microinformática corporativa

estándar en una máquina virtual. Al mismo tiempo, proporcione entornos

estandarizados de computadoras empresariales hospedados en máquinas

virtuales a las que se accede mediante clientes ligeros (thin client) o PCs.

125

Simplifica el Aprovisionamiento de Infraestructura.

Disminuye a minutos el tiempo necesario para hacer aprovisionamiento de una

nueva infraestructura con sofisticadas funcionalidades de automatización. Los

dispositivos virtuales combinan la implementación simple de software con los

beneficios de los dispositivos pre-configurados. Centraliza el control y la

responsabilidad de los recursos de hardware y dé a las unidades de negocios y

propietarios de aplicaciones un completo control sobre la utilización de los

recursos.

Realmacena Aplicaciones Heredadas.

Migra sistemas operativos y aplicaciones de software heredados a máquinas

virtuales que se ejecutan en nuevas herramientas de hardware para brindar una

mayor confiabilidad.

4.5.2. ¿CUÁLES SON LOS BENEFICIOS DE VMWARE

INFRASTRUCTURE?

VMware Infrastructure usa la tecnología de virtualización para brindar ahorros de

costos de capital y de operación, además de un aumento de la eficiencia

operacional, de la flexibilidad y de los niveles de servicio de TI.

VMware Infrastructure ofrece ahorros medibles en costos de capital y de

operación

Aumenta la utilización de hardware y disminuye los requerimientos de

hardware con índices de consolidación de servidores que comúnmente

superan las diez máquinas virtuales por procesador físico.

126

Disminuye el costo de espacio en rack y de energía en proporción al nivel

de consolidación alcanzado

Disminuye los costos de mano de obra al simplificar y automatizar las

operaciones de TI que requieren gran cantidad de trabajo y recursos entre

entornos de hardware, sistema operativo y aplicaciones de software

dispares.

VMware Infrastructure mejora la capacidad de respuesta, la capacidad de

servicio, la disponibilidad y la flexibilidad de la infraestructura de TI

Hace posible la disponibilidad amplia y rentable de las aplicaciones y la

continuidad del negocio independientemente del hardware y los sistemas

operativos.

Hace posible el tiempo activo constante y el mantenimiento no disruptivo

de los entornos de TI con migración activa de sistemas completos en

ejecución.

Elimina la necesidad de realizar complejas instalaciones y

configuraciones de software con dispositivos virtuales.

Acelera los ciclos de vida de desarrollo e implementación de las

aplicaciones.

Mejora la capacidad de respuesta a las necesidades del negocio con

aprovisionamiento instantáneo y optimización dinámica de los entornos de

aplicaciones.

Permite que los sistemas heredados coexistan con los nuevos entornos.

127

4.5.3. ¿CÓMO FUNCIONA VMWARE INFRASTRUCTURE?

VMware Infrastructure virtualiza y agrega servidores estándar de la industria y su

red y almacenamiento de información conectados a depósitos de recursos

unificados. Entornos completos, incluidos sistemas operativos y aplicaciones, se

encuentran encapsulados en máquinas virtuales independientes del hardware.

Un conjunto de servicios de infraestructura distribuida basada en la virtualización

para máquinas virtuales brinda niveles sin precedentes de flexibilidad, capacidad

de servicio y eficiencia a los entornos de TI:

La centralización de la administración y el monitoreo de máquinas

virtuales automatiza y simplifica el aprovisionamiento.

La optimización de los recursos distribuidos asigna en forma dinámica e

inteligente los recursos disponibles entre las máquinas virtuales, dando

como resultado una utilización significativamente mayor del hardware y un

mejor alineamiento de los recursos de TI con las prioridades del negocio.

La alta disponibilidad fácil de usar proporciona mejores niveles de servicio

a las aplicaciones a un menor costo que la infraestructura física y estática.

VMware Infrastructure no está sujeto a ningún sistema operativo, lo cual brinda a

los clientes la posibilidad de elegir libremente el sistema operativo y las

aplicaciones de software. VMware Infrastructure escala para dar soporte a

entornos de TI de cualquier tamaño.

128

4.5.4. ¿QUÉ INCLUYE VMWARE INFRASTRUCTURE?

4.5.4.1. VMWARE ESX SERVER

VMware ESX Server es la base de la infraestructura de TI dinámica y de

optimización automática. VMware ESX Server es una capa de virtualización

sólida y comprobada en producción, que abstrae los recursos del procesador,

memoria, almacenamiento de información y conexión en red en varias máquinas

virtuales. ESX Server aumenta la utilización de hardware y disminuye

considerablemente los costos operacionales y de capital al compartir los recursos

de hardware entre una gran cantidad de máquinas virtuales. ESX Server mejora

los niveles de servicio incluso para las aplicaciones que consumen más recursos

con las funcionalidades avanzadas de administración de recursos, alta

disponibilidad y seguridad.

4.5.4.2. VMWARE VMFS

VMware Virtual Machine File System (VMFS) es un sistema de archivos de

cluster de alto respaldo que permite que múltiples instalaciones de ESX Server

accedan al mismo almacenamiento de información de máquina virtual en forma

concurrente. VMFS hace posible los servicios de infraestructura distribuida

basados en virtualización que ofrecen VMware VirtualCenter, la tecnología

VMware VMotion, VMware DRS y VMware HA.

129

4.5.4.3. VMWARE VIRTUAL SMP

VMware Virtual Symmetric Multi-Processing (SMP) aumenta el respaldo de las

máquinas virtuales al permitir que una sola máquina virtual use varios

procesadores físicos en forma simultánea. Una funcionalidad exclusiva de

VMware, Virtual SMP permite la virtualización de las aplicaciones empresariales

que hacen el uso más intensivo de los procesadores y los recursos, como son

bases de datos, ERP y CRM.

4.5.4.4. VMWARE VIRTUALCENTER

VirtualCenter ofrece administración centralizada, automatización de operaciones,

optimización de recursos y alta disponibilidad a los entornos de TI. Estas

capacidades brindan a los entornos de TI niveles sin precedentes de capacidad

de servicio, eficiencia y confiabilidad. VirtualCenter ofrece un amplio conjunto de

interfaces de servicio Web programáticas que permiten la integración con

productos de administración de sistemas de otros proveedores, así como

desarrollo personalizado.

Los siguientes productos también se encuentran disponibles como productos con

licencia separada:

VMware DRS

VMware VMotion

VMware HA

VMware Consolidated Backup

130

4.5.4.4. VMWARE DRS

VMware Distributed Resource Scheduler (DRS) alinea los recursos disponibles

con prioridades predefinidas del negocio y optimiza al mismo tiempo las

operaciones que requieren gran cantidad de trabajo y recursos.

4.5.4.5. VMWARE VMOTION

La tecnología de VMotion permite la migración de máquinas virtuales activas,

haciendo posible el mantenimiento no disruptivo de entornos de TI.

4.5.4.6. VMWARE HA

VMware High Availability (HA) hace posible la disponibilidad rentable de

aplicaciones, independientemente del hardware y los sistemas operativos.

4.5.4.7. VMware Consolidated Backup

VMware Consolidated Backup proporciona una herramienta de respaldo

centralizada y fácil de usar para las máquinas virtuales. Permite hacer respaldo

de los contenidos de las máquinas virtuales desde un servidor proxy Microsoft

Windows 2003 centralizado, en lugar de hacerlo directamente desde ESX Server.

4.6. HARDWARE A UTILIZAR

REQUERIMIENTOS MÍNIMOS PARA UTILIZAR VMWARE

PROCESADOR MEMORIA RAM DISCO DURO

Todos los AMD Opterons support 64 bit.

Todos los Intel Xeon 3000/3200, 3100/3300,

5100/5300, 5200/5400, 7100/7300, y

7200/7400.

Todos los Intel Nehalem

2 GB mínimo.

Basic SCSI controllers – Adaptec Ultra-160 or Ultra-320, LSI Logic

Fusion-MPT, o NCR/Symbios SCSI.

RAID controllers – Dell PERC

(Adaptec RAID or LSI MegaRAID) o

IBM (Adaptec) ServeRAID

Nota: Se debe tener en cuenta los requerimientos de todas las aplicaciones que se instalaran.

131

4.7. SOFTWARE A UTILIZAR

CLUSTER HERRAMIENTA

Alta Disponibilidad VMWare HA

Balanceo de carga Vmware DRS

Sistema operativo Suse Linux Enterprise Server 10

Gestor de Contenidos Moodle

Correo Electrónico Squirrelmail

4.8. PRESUPUESTO DEL PROYECTO

4.8.1. PRESUPUESTO DE RECURSO HUMANO

TIPO DE RECURSO

CANTIDAD DIAS DE

DURACION HORAS

/DIA TOTAL HORAS

COSTO

COSTO TOTAL

Técnico especialista 1 4 8 32 $100.00 $3,200.00

TOTAL $3,200.00

4.8.2. PRESUPUESTO DE HARDWARE

TIPO DE RECURSO

CANTIDAD SERVER VALOR TOTAL

BladeCenter 1 Express IBM

BladeCenter 19,123.00 19,123.00

TOTALES $19,123.00

132

4.8.3. PRESUPUESTO DE LICENCIAMIENTO

LICENCIA TIPO DE

LICENCIAMIENTO CANTIDAD VALOR TOTAL

Vmware Infrastructure Media Kit

Licenciamiento

por cada 2

procesadores

1 $ 149.00 $ 149.00

VMware Infrastructure Foundation

(2 Sockets License Only)

Licenciamiento

por cada 2

procesadores

3 $ 995.00 $ 2985.00

Subscription Only VMware Infrastructure Fndn

(2 Sockets - 1 Año)

Licenciamiento

por cada 2

procesadores

3 $ 389.00 $ 1167.00

VMware HA

(2 Sockets License Only)

Licenciamiento

por cada 2

procesadores

3 $ 2495.00 $ 7485.00

Subscription Only VMware HA

(2 Sockets - 1 Año)

Licenciamiento

por cada 2

procesadores

3 $ 349.00 $ 1047.00

VMware DRS

(2 Sockets License Only)

Licenciamiento

por cada 2

procesadores

3 $ 1995.00 $ 5985.00

Subscription Only VMware DRS

(2 Sockets - 1 Año)

Licenciamiento

por cada 2

procesadores

3 $ 279.00 $ 837.00

VMware VCMS Foundation

(License Only) Por Servidor 3 $ 1495.00 $4485.00

Subscription Only VMware VCMS Foundation

(1 Año) Por cada licencia 3 $ 389.00 $1167.00

TOTAL $ 25,307.00

133

Figura No.2 Diagrama de Clúster con VMware

4.8.4. TOTAL DE LOS RECURSOS A UTILIZAR

CONCEPTO TOTAL

PRESUPUESTO DE RECURSO

HUMANO $ 3,200.00

PRESUPUESTO DE HARDWARE $ 19,230.00

PRESUPUESTO DE

LICENCIAMIENTO $ 25,307.00

TOTAL PRESUPUESTADO

$47,737.00

4.9. DIAGRAMA FISICO

134

4.10. SOLUCIÓN CON SOFTWARE GNU/LINUX(PROTOTIPO DE

CLUSTER DE BALANCEO DE CARGA Y ALTA

DISPONIBILIDAD)

4.10.1. DESCRIPCION DEL PROTOTIPO

La propuesta del prototipo de Clúster, está diseñado para que pueda

proporcionar alta disponibilidad en el servicio de U-Virtual y Correo Electrónico; y

balanceo de carga en el Correo Electrónico, esto se debe a la naturaleza de los

servicios, ambos servicios son de los más utilizados por la población estudiantil

y personal administrativo de la UFG.

4.10.2. DESCRIPCIÓN DE LOS COMPONENTES NECESARIOS

PARA LA PROPUESTA

A continuación se describe el hardware y software que se necesitará instalar para llevar a cabo la propuesta de la Arquitectura de Clúster.

SOFTWARE

TIPO NOMBRE

Sistema Operativo SUSE Linux Enterprise 10.0 (o distribuciones

similares con kernel 2.6 o superior)

Aplicación de Alta Disponibilidad Hearbeat

Aplicación de Balanceo de Carga Ldirectord

Aplicación de Sincronización (Base de Datos)

RSync

Servidor de Correo Postfix

Servidor de Enseñanza Virtual (U Virtual)

Moodle

Servidor de Base de Datos MySQL

Servidor Web Apache

Protocolo de Acceso de Mensajes de Internet Cyrus IMAP

HARDWARE

DESCRIPCION CANTIDAD Tarjetas de Red (10/100, Full Duplex) 6

Servidores 4

(2 de ellos con 2 tarjetas de red 10/100, los otros 2 solamente con una)

Switch Ethernet (con puertos 10/100, Full Duplex)

1 (al menos con 8 puertos disponibles full

duplex10/100)

Cables Estándar UTP (Categoría 5 o 6)

4

Cables UTP Cruzado (Crossover)

1

Cuadro No. 2 Software necesario para la propuesta

Cuadro No. 1 Hardware necesario para la propuesta

135

Nota: En la investigación realizada a la Dirección de Tecnología y

Comunicaciones se observó que no existen backups automáticos en ambos

servicios, lo que ocasionaría pérdida de información y tiempo al tratar de

recuperar y restablecer los servicios.

Como un aporte adicional de nuestro proyecto, planteamos una alternativa de

solución a esta dificultad, proponiendo realizar backup al servidor que contiene la

información.

4.11. ESTUDIO DE FACTIBILIDAD

El estudio de factibilidad ayudara a comprobar si el proyecto presentado es

factible tanto económica, operativa y tecnológicamente, y así poder definir la

mejor forma de desarrollar e implementar el proyecto

4.11.1. FACTIBILIDAD TÉCNICA

Define los recursos humanos, hardware y software que se necesita para el

diseño y la posterior implementación del proyecto.

4.12. HARDWARE A UTILIZAR

Debido a la naturaleza del proyecto, las recomendaciones de hardware son

factibles, teniendo en mente el objetivo de poder reducir los costos de

implementación para la Universidad Francisco Gavidia, institución educativa en

donde se espera sea implementado el prototipo.

El presente prototipo está diseñado para equipos de cómputo con los cuales

trabajamos diariamente; ya que existe equipo que especializado para trabajar

en Clúster; sin embargo el prototipo propuesto funcionara con equipo de

arquitectura de maquinas de escritorio.

136

Cuadro No.3: Éstos son los requerimientos mínimos de cada uno de los servidores en los que se instalarán los servicios en línea (U-

Virtual y Correo Electrónico). Partiendo de los requerimientos de los softwars a instalar.

Cuadro No.4: Éstos son los requerimientos sugeridos de cada uno de los servidores en los que se instalarán los servicios en línea

(Uvirtual y Correo Electrónico). Partiendo del equipo con que cuenta actualmente la UFG y los equipos que distribuyen los proveedores de

equipo informático en la actualidad.

4.13. REQUERIMIENTOS DE HARDWARE

La cantidad de espacio requerido para los servidores a utilizar, se calculó en

base a las estadísticas provistas por la DTC de la siguiente manera:

REQUERIMIENTOS MINIMOS PARA LOS SERVIDORES DEL PRESENTE PROYECTO

SERVIDOR DE CORREO ELECTRONICO (Postfix)

PROCESADOR MEMORIA RAM DISCO DURO OTROS

Celeron / Pentium 4 800

Mhz 256 MB 25 GB

Servidor Web con PHP >= 4.1.0, acceso a

un servidor IMAP que soporte IMAP 4 rev

1

SERVIDOR DE Uvirtual (Moodle)

PROCESADOR MEMORIA RAM DISCO DURO OTROS

Celeron / Pentium 4 800

Mhz 256 MB 160 MB

Plataforma LAMP

(Linux, Apache, MySQL y PHP)

SERVIDOR DE BASE DE DATOS (MySQL)

PROCESADOR MEMORIA RAM DISCO DURO OTROS

Celeron / Pentium 4 800

Mhz 128 MB 60 MB ---

REQUERIMIENTOS SUGERIDOS PARA LOS SERVIDORES DEL PRESENTE PROYECTO

SERVIDOR DE CORREO ELECTRONICO (Postfix)

PROCESADOR MEMORIA RAM DISCO DURO OTROS

Core Duo 3.4 GHz

(o superior)

8 GB

(2 módulos de 4 GB, en

Dual Channel)

300 GB

(2 HDD en espejo)

Servidor Web con PHP >= 4.1.0, acceso a

un servidor IMAP que soporte IMAP 4 rev

1

SERVIDOR DE Uvirtual (Moodle)

PROCESADOR MEMORIA RAM DISCO DURO OTROS

Core Duo 3.4 GHz

(o superior)

8 GB

(2 módulos de 4 GB, en

Dual Channel)

500 GB

(2 HDD en espejo)

Plataforma LAMP

(Linux, Apache, MySQL y PHP)

SERVIDOR DE BASE DE DATOS (MySQL)

PROCESADOR MEMORIA RAM DISCO DURO OTROS

Core Duo 3.4 GHz(o

superior) 4 GB

300 GB

(2 HDD en espejo) ---

137

4.14. DESCRIPCION DEL EQUIPO CON QUE ACTUALMENTE

CUENTA LA UNIVERSIDAD1

Las especificaciones del equipo computacional con que la Universidad cuenta en

la actualidad son las siguientes:

NOMBRE DEL

SERVIDOR

DESCRIPCIÓN DEL HARDWARE Y

SOFTWARE

CONFIGURACIÓN

ACTUAL

SERVIDOR DE

CORREO

ELECTRONICO

HARDWARE

Disco duro 1: 66 GB

Disco duro 2: 60 GB

Memoria: 8 GB

Procesador: 2

procesadores de 2GB cada uno

Se utilizan dos

servidores para correo

electrónico, uno es mail

y otro es MXHOST.

SERVIDOR U-

VIRTUAL

HARDWARE

Memoria:4 GB

Disco duro:2 discos 73 GB

1 disco 146 GB

Procesador: 2

Procesadores Xeon 2.8 GHZ

SOFTWARE

Sistema Operativo: Suse 10.2

Plataforma: Moodle: 1.8.3

Base de datos: MySQL: 5.0.26

PHP: 5.2.0

La configuración que

posee la plataforma es la

que pide el Moodle y

además se le ha

colocado un certificado

de seguridad.

1 Fuente: Dirección de Tecnología y comunicaciones de la UFG.

138

4.15. SOFTWARES A UTILIZAR EN EL CLÚSTER

DESCRIPCIÓN ALTERNATIVAS DISTRIBUCIONES ELECCIÓN JUSTIFICACION DE LA ELECCION

SOFTWARES PARA CLÚSTERS

ALTA DISPONIBILIDAD

Kimberlite Pirhana

Openmoxi Heartbeat

Hearbeat

Es una de las mejores herramientas para Clúster, es GNU. Con Hearbeat podemos determinar si el servidor ha dejado de funcionar y levantar los servicios en el servidor de respaldo.

BALANCEO DE CARGA

UltraMonkey Open Mosix

HaProxy Round Robin

DNS Ldirectord

Ldirectord

Se ha elegido por ser una solución gratis, confiable, muy rápida ofreciendo balanceo de carga.

SISTEMA OPERATIVO

GNU/Linux

SUSE Red Hat Fedora Ubuntu Debian

SUSE El sistema operativo a utilizar en nuestro proyecto será Linux SUSE Enterprise 10.0. Windows

NT 2000 Server 2003 Server 2008 Server

Unix Solaris

Aix

GESTOR DE CONTENIDOS

Moodle Blackboard, eCollege,

SumTotal, WebCT.

Moodle

Para este proyecto utilizaremos la aplicación de Moodle, pues es la plataforma que actualmente utiliza la UFG para la Uvirtual.

CORREO ELECTRONICO

Postfix SquirrelMail RoundCube

Horde Openwebmail

AtMail BlogMail

Postfix

SquirrelMail

Para este proyecto se utilizará la aplicación de Postfix como administrador y SquirrelMail como gestor de correo, ya que es el que actualmente tiene configurado la UFG para su correo electrónico (Squirrelmail).

139

4.16. CONCLUSIÓN ESTUDIO DE FACTIBILIDAD TÉCNICA

Se concluye que la propuesta del Prototipo de Clúster es factible técnicamente

debido a que la Universidad posee el hardware necesario y en cuanto al

software, por ser GNU se obtiene fácilmente en los sitios oficiales de cada uno

de ellos.

4.17. FACTIBILIDAD ECONOMICA

Es una medida de la eficacia de los costos asociados a un proyecto o una

solución. Este proyecto es económicamente factible ya que está basado en una

plataforma de software y hardware en la cual no se incurrirá en gastos por parte

de la Universidad debido a que la institución ya cuenta con estos recursos.

4.18. PRESUPUESTO DEL PROYECTO

Aunque el proyecto de Clúster no conlleva una inversión significativa, se

presenta los gastos incurridos en la investigación realizada:

4.19. RECURSO HUMANO

TIPO DE RECURSO

CANTIDAD DIAS DE

DURACION HORAS

/DIA TOTAL HORAS

COSTO

COSTO TOTAL

INVESTIGADORES 3 180 3 1620 $7.00 $11,340.00

ASESOR 1 40 40 $17.50 $700.00

TOTALES 4 43 1660 $24.50 $12,040.00

140

4.20. RECURSO TECNOLÓGICO

TIPO DE RECURSO

CANTIDAD DIAS DE

DURACION HORAS

/DIA TOTAL HORAS

COSTO COSTO TOTAL

COMPUTADORAS 3 180 3 1620 $1.00 $1620.00

IMPRESIONES 2500 2 $0.15 $375.00

ESCANER 10 1 1 1 $1.50 $15.00

FOTOCOPIAS 2500 20 $0.03 $75.00

TELEFONO Y FAX 3 180 0.20 36 $10.00 $360.00

INTERNET 1 180 0.50 90 $1.25 $112.50

TOTALES $13.93 $2,557.50

4.21. RECURSOS MATERIALES

TIPO DE RECURSO

CANTIDAD COSTO UNITARIO COSTO TOTAL

PAPEL 4 $4.00 $16.00

TINTA DE IMPRESORES 1 $21.00 $21.00

LAPICES Y BOLIGRAFOS 12 $0.50 $6.00

MEDIOS DE ALMACENAMIENTO 30 $1.00 $30.00

COMBUSTIBLE 180 $3.00 $540.00

MATERIAL BIBLIOGRAFICO - - - - - - - - $50.00

TOTALES 327 $29.50 $663.00

4.22. TOTAL DE LOS RECURSOS A UTILIZAR

CONCEPTO TOTAL

RECURSO HUMANO $ 12,040.00

RECURSO TECNOLOGICO $ 2,557.50

RE CURSO DE MATERIALES $ 663.00

SUBTOTAL $ 15,260.5

IMPREVISTO 3% $ 457.82

TOTAL PRESUPUESTADO $15,718.32

141

4.23. CONCLUSIÓN DE LA FACTIBILIDAD ECONÓMICA

Si la Universidad quisiera llevar a cabo la implementación de este prototipo,

puede hacerlo sin incurrir en gastos ya que el hardware necesario son PCs de

usuario final y el software es GNU por lo que no se incurrirá en gastos

adicionales.

4.24. FACTIBILIDAD OPERATIVA

Se refiere a todos aquellos recursos donde interviene algún tipo de actividad

(procesos), depende de los recursos humanos que participen durante la

operación del proyecto.

4.25. CONCLUSION DE LA FACTIBILIDAD OPERATIVA

Este proyecto es operativamente factible ya que dentro de la DTC se cuenta

con el personal que posee los conocimientos del software sugerido, para

ejecutar la implementación y brindarle seguimiento.

4.26. INFORMACION DE LAS APLICACIONES A UTILIZAR

A continuación se especifica las características de las aplicaciones o software

que han sido elegidas para ser instaladas en cada uno de los servicios

142

4.27. APLICACION PARA EL CORREO ELECTRÓNICO

SQUIRRELMAIL

Información General

Es una herramienta webmail, está diseñado para trabajar con plugins, lo cual

hace más llevadera la tarea de agregar nuevas características entorno al núcleo

de la aplicación. La herramienta se encuentra bajo la licencia GNU (General

Public License).

SquirrelMail viene con varios plugins por defecto, permitiendo a los

administradores añadir:

Revisar ortografía.

Filtrado de emails (SPAM).

Administración de la aplicación vía Web.

Calendario.

Una interface para reportar errores automáticamente.

143

4.28. APLICACIÓN DE SERVIDOR DE CORREO

POSTFIX

Información General

Postfix es un agente de transferencia de correo (MTA = Mail Transfer Agent)

de código abierto, un programa de computadora para el enrutamiento y

entrega de correo. Fue diseñado para ser rápido, fácil-de-administrar, y

como una alternativa segura al MTA ampliamente usado, conocido como

Senmail.

Postfix es el MTA utilizado por defecto, por un número de sistemas

operativos UNIX, con Ubuntu. Es publicado bajo la licencia pública de IBM

1.0 la cual es una licencia de software libre.

El código fuente de Postfix es frecuentemente usado como un ejemplo de

una práctica de buena programación.

Anteriormente conocido como VMailer e IBM Secure Mailer, fue

originalmente escrito por Wietse Venema durante su estadía en el Centro de

Investigación de IBM, Thomas J. Watson, y continua siendo desarrollado de

forma activa. El lanzamiento de la primera versión de Postfix fue a mediados

de 1999.

144

Características:

Seguridad de la capa de transporte

Delegación de políticas SMTP para procesos externos y filtrado de contenido avanzado

Soporta diferentes bases de datos: Berkeley DB, CDB, DBM, LDAP, MySQL y PostgreSQL.

Buzones de estilo Mbox, buzones estilo Maildir y dominios virtuales.

Soporte de Milter (Mail Filter), le permite a los administradores la adición de

filtros de correo (para filtrado de spam, virus, etc.) muy eficiente en la

cadena de procesamiento de correo.

145

4.29. APLICACIÓN DE SERVIDOR IMAP

CYRUS IMAP

Información General

Cyrus es un sistema de correo empresarial altamente escalable para utilizarse

en ambientes empresariales de varios tamaños utilizando tecnologías basadas

en estándares. La tecnología de Cyrus va desde el uso independiente en

departamentos de correo hasta sistemas centralizados administrados en

empresas de gran tamaño.

Características:

Rápido y escalable

Almacenaje eficiente

Buzones de correo compartidos

Listas de Control de Acceso (ACLs)

Filtrado de Correo del lado del servidor

Supresión de duplicado

Soporte de SSL/TLS (Secure Sockets Layer/ Transport Layer Security)

Entrega directa en buzón de correo con dirección extendida

146

4.30. APLICACIÓN PARA LA PLATAFORMA UVIRTUAL

MOODLE

Información General

Moodle es un sistema de gestión de cursos de libre distribución (course

management system CMS) que ayuda a los educadores a crear comunidades

de aprendizaje en línea.

La primera versión de la herramienta apareció el 20 de agosto de 2002 y, a

partir de allí han aparecido nuevas versiones de forma regular. Hasta diciembre

de 2006, la base de usuarios registrados incluye más de 19,000 sitios en todo el

mundo y está traducido a más de 60 idiomas. El sitio más grande dice tener

más de 170.000 estudiantes.

Características:

Promueve una pedagogía constructivista social (colaboración,

actividades, reflexión crítica, etc.). Su arquitectura y herramientas son

apropiada para clases en línea, así como también para complementar el

aprendizaje presencial. Tiene una interfaz de navegador de tecnología

sencilla, ligera, y compatible.

La instalación es sencilla requiriendo una plataforma que soporte PHP y

la disponibilidad de una base de datos. Moodle tiene una capa de

abstracción de bases de datos por lo que soporta las principales marcas

de bases de datos.

Se ha puesto énfasis en una seguridad sólida en toda la plataforma.

Todos los formularios son revisados, las cookies cifradas, etc.

147

APLICACION PARA LA BASE DE DATOS

MySQL (Gestor de Bases de Datos).

Información General

MySQL es un gestor de bases de datos SQL (Structured Query Language).

Es una implementación Cliente-Servidor que consta de un servidor y diferentes

clientes (programas/librerías). Actualmente el gestor de base de datos juega un

rol central en la informática, como única utilidad o como parte de otra aplicación.

Es un Sistema de Gestión de Base de Datos Relacional. El modelo relacional se

caracteriza a muy grandes rasgos por disponer que toda la información debe

estar contenida en tablas, y las relaciones entre datos deben ser representadas

explícitamente en esos mismos datos. Esto añade velocidad y flexibilidad.

Características

El principal objetivo de MySQL es velocidad y robustez.

Escrito en C y C++, probado con GCC 2.7.2.1. Usa GNU autoconf para

potabilidad.

Clientes C, C++, JAVA, Perl, TCL.

Multiproceso, es decir puede usar varios CPUs si estos están

disponibles.

Puede trabajar en distintas plataformas y S.O. distintos.

Sistema de contraseñas y privilegios muy flexibles y seguros.

La información viaja encriptada a través en la red.

148

Registros de longitud fija y variable.

16 índices por tabla, cada índice puede estar compuesto de 1 a 15

columnas o partes de ellas con una longitud máxima de 127 bytes.

Todas las columnas pueden tener valores por defecto.

Utilidad (Isamchk) para chequear, optimizar y reparar tablas.

Todos los datos están grabados en formato ISO8859_1.

Los clientes usan TCP o UNIX Socket para conectarse al servidor.

El servidor soporta mensajes de error en distintos lenguajes.

Todos los comandos tienen -help o -? Para las ayudas.

Diversos tipos de columnas como enteros de 1, 2, 3, 4, y 8 bytes, coma

flotante, doble precisión, carácter, fechas, enumerados, etc.

ODBC para Windows 95 (con fuentes), se puede utilizar ACCESS para

conectar con el servidor.

149

4.31. APLICACIÓN DE SERVIDOR WEB

Apache Web Server

Información General

El servidor HTTP Apache es un servidor web HTTP de código abierto para

plataformas Unix (BSD, GNU/Linux, etc.), Windows, Macintosh y otras, que

implementa el protocolo HTTP/1.1 y la noción de sitio virtual. Cuando comenzó

su desarrollo en 1995 se basó inicialmente en el código del popular NCSA

HTTPd 1.3, pero más tarde fue reescrito por completo. Su nombre se debe a

que Behelendorf eligió ese nombre porque quería que tuviese la connotación de

algo que es firme y enérgico pero no agresivo, y la tribu Apache fue la última en

rendirse al que pronto se convertiría el gobierno de EEUU, y en esos momentos

la preocupación de su grupo era que llegasen las empresas y "civilizasen" el

paisaje que habían creado los primeros ingenieros de internet. Además Apache

consistía solamente en un conjunto de parches a aplicar al servidor de NCSA.

Era, en inglés, a patchy server (un servidor "parcheado").

150

Características:

Multiplataforma.

Es un servidor de web que cumple con el protocolo HTTP 1.1

Es modular, es decir, puede ser adaptado a diferentes entornos y

necesidades, con los diferentes módulos de apoyo que proporciona, y

con la API de programación de módulos, para el desarrollo de módulos

específicos.

Basado en hebras en la versión 2.0

Incentiva la realimentación de los usuarios, obteniendo nuevas ideas,

informes de fallos y parches para la solución de los mismos.

Se desarrolla de forma abierta.

Extensible: gracias a ser modular se han desarrollado diversas

extensiones entre las que destaca PHP, un lenguaje de programación del

lado del servidor.

151

4.32. LENGUAJE DE PROGRAMACION WEB

PHP

Información General

PHP es un lenguaje de scripting embebido en HTML. Mucha de su sintaxis es

tomada de C, Java y Perl con un par de características adicionales únicas y

específicas de PHP. El propósito del lenguaje es permitir que los

desarrolladores web escriban páginas generadas dinámicamente con rapidez.

PHP significa, PHP: Hypertext Preprocessor (PHP: Pre-procesador de

Hipertexto). Esto confunde a muchas personas ya que la primera palabra del

acrónimo es el acrónimo mismo. Este tipo de acrónimo es llamado recursivo.

PHP/FI 2.0 es una versión temprana de PHP y ya no es soportada. PHP 3 es el

sucesor de PHP/FI 2.0 y es mucho más agradable. PHP 5 es la generación

actual de PHP, la cual usa internamente el » motor Zend 2, el cual, entre otras

cosas, ofrece muchas características de Programación Orientada a Objetos

adicionales.

Mientras PHP 5 fue diseñado intencionalmente para ser tan compatible como

fuera posible con versiones anteriores, existen algunos cambios significativos.

152

Algunos de estos cambios incluyen:

Un nuevo modelo de POO basado en el Motor Zend 2.0

Una nueva extensión para soporte mejorado de MySQL

Soporte nativo incorporado para SQLite

Una nueva constante de reporte de errores, E_STRICT, para

sugerencias sobre el código en tiempo de ejecución

Un grupo de nuevas funciones para simplificar la creación de código (y

reducir la necesidad de crear sus propias funciones para muchos

procedimientos comunes)

Características:

Soporta para una gran cantidad de bases de datos: MysSQL, PostgreSQL,

Oracle, MS SQL Server, Sybase mSQL, Informix, entre otras.

Integración con varias bibliotecas externas, permite generar documentos en

PDF (documentos de Acrobat Reader), incluso hasta analizar código XML.

Ofrece una solución simple y universal para la creacion de paginas web

dinámicas de fácil programación.

Es más fácil de mantener y poner al día que el código desarrollado en otros

lenguajes.

Con soporte por una gran comunidad de desarrolladores como producto de

código abierto. PHP goza de la ayuda de un gran grupo de programadores,

permitiendo que los fallos de funcionamiento se encuentren y reparen

rápidamente.

El código se pone al día continuamente con mejoras y extensiones del

lenguaje para ampliar las capacidades de PHP.

Con PHP se puede hacer cualquier cosa que podemos realizar con un script

CGI, como el procesamiento de información en formularios, foros de

discusión, manipulación de cookies y páginas dinámicas.

153

4.33. APLICACIÓN DE ALTA DISPONIBILIDAD

HEARTBEAT

Información General

Heartbeat es un proyecto de Linux de Alta Disponibilidad (HA: High Availability).

Un componente importante y ampliamente usado en muchas soluciones de alta

disponibilidad, se encuentra entre los mejores paquetes de software de HA para

cualquier plataforma. Se estima su utilización en mas 30,000 instalaciones, en

usos de misiones-criticas del mundo real desde 1999. El interés en este

proyecto continúa creciendo.

Actualmente Heartbeat es empaquetado como parte de SUSE Linux, Mandriva,

Debian, Ubuntu, Red Flag, y Gentoo. Ultran Monkey, y otros proyectos de

sistemas compuestos son también basados en Heartbeat. A pesar de ser

conocido como el proyecto Linux-HA, el software es altamente portátil y corre

en FreeBSD, Solaris, y OpenBSD, inclusive en MacOSX.

La alta disponibilidad en Linux (Linux-HA) es la más antigua, mas capaz, y

mejor solución de alta-disponibilidad de código abierto disponible, y posee la

comunidad asociada mas grande. Por política del proyecto, siempre se compila

sin advertencias, y sin errores encontrados por una herramienta estática de

análisis. El código fuente es periódicamente evaluado por expertos en

seguridad.

154

Es generalmente tan capaz, y fácil de usar como la mayor parte de soluciones

comerciales para clustering, tales como Veritas VCS, SunCluster, LifeKeeper,

ServiceGuard, entre otras.

Heartbeat es un demonio que provee servicios de infraestructura de Clúster

(comunicación y asociación) a sus clientes. Esto le permite a los clientes

conocer acerca de la presencia (o ausencia) de procesos pares en otras

maquinas y para intercambiar fácilmente mensajes entre ellos.

Con el fin de ser útil para los usuarios, el demonio de Heartbeat necesita ser

compilado con CRM (Cluster Resource Manager o Administrador de Recursos

de Clúster) el cual tiene la tarea de iniciar y parar los servicios (direcciones IP,

servidores web, etc.) que el Clúster pondrá en alta disponibilidad.

Heartbeat en un inicio venia con un administrador de recursos rudimentario,

capaz únicamente de administrar 2 nodos y no detectaba fallas a nivel de

recursos.

Un nuevo administrador de recursos el cual direccionaba esas limitaciones y

mucho más, fue creado para Heartbeat 2.0.0. Sin embargo en 2007 otro

administrador de recursos fue desarrollado para convertirse en el proyecto

marcapasos con el fin de brindar mejor soporte a stacks de Clúster adicionales

(tales como OpenAIS).

La serie actual estable de Heartbeat es la 2.99.x y puede obtenerse para

múltiples plataformas (incluyendo CentOS, RHEL, Fedora, openSUSE y SLES).

155

Características:

Sin numero maximo fijo de nodos – Hearbeat puede ser usado para

construir grandes clusters asi como clusters muy simples.

Monitoreo de recursos: los recursos pueden ser automaticamente

reiniciados o movidos hacia otro nodo ante una falla.

Mecanismo cercado, para sacar/excluir nodos con falla del Clúster.

Sofisticado administrador de recursos basado en politicas,

interdependencias de recursos y restricciones.

Reglas basadas-en-tiempo, permiten la aplicación de politicas diferentes

dependiendo del tiempo.

Variedad de scripts de recursos incluidos (para Apache, DB2, Oracle,

PostgreSQL, etc.)

GUI (Interface Grafica de Usuario) para configurar, controlar y monitorear

nodos y recursos.

156

4.34. APLICACIÓN DE SINCRONIZACION

RSYNC

Información General

RSYNC es un programa de transferencia de archivos para sistemas UNIX, rync

utiliza el “algoritmo rsync”, el cual provee un método muy rápido para

sincronizar archivos remotos. Esto lo hace mediante el envío únicamente de las

diferencias entre los archivos, sin requerir que ambos grupos de archivos estén

presentes en uno de los extremos de antemano.

Características:

Además de archivos, el algoritmo permite copiar directorios, incluso de

manera recursiva, así como vínculos, dispositivos, grupos y permisos.

No requiere por defecto privilegios de root para su uso.

Incluye funciones de compresión y descompresión de los datos bloque por

bloque, utilizando zlib al enviar y recibir.

Soporte para protocolos de cifrado, tal como SSH, lo que permite

transmisión cifrada y eficientemente diferenciada de datos comprimidos

usando el algoritmo rsync.

Soporte sincronización anónima lo cual es ideal para archivos en espejo

El algoritmo permite copiar archivos, directorios (incluso de manera

recursiva), así como vínculos, dispositivos, grupos y permisos.

157

4.35. APLICACIÓN DE BALANCEO DE CARGA LDIRECTORD

Información General

ldirectord (Linux Director Daemon) es un demonio para monitorear

servidores de balanceo de carga. ldirector típicamente es usado como un

recurso para Alta Disponibilidad en Linux, pero puede también ser ejecutado

desde la línea de comandos.

La dirección IP de un servicio virtual es a lo que los usuarios-finales se

conectan y es típicamente publicado por DNS. Cuando una conexión se

establece con un servicio virtual, esta es asignada a un servidor real, y todos

los paquetes para esta conexión son reenviados hacia este servidor real.

ldirectord posee un archivo de configuración el cual especifica los servicios

virtuales y sus servidores reales asociados. Cuando ldirectord es inicializado

este crea los servicios virtuales para el cluster.

ldiretord monitorea la salud de los verdaderos servidores mediante la

solicitud periódica de una URL conocida y verificando que la respuesta

recibida sea lo que se espera recibir en realidad. Si un verdadero servidor

falla entonces el servidor es removido y será reactivado una vez que este

vuelva a estar en línea. Si todos los servidores verdaderos están abajo

entonces un servidor de respaldo es insertado en la lista de servidores, lo

cual hará que uno de los servidores web inactivos vuelva a estar en línea.

Típicamente, el servidor de respaldo es localhost. Si un servicio HTTP virtual

es provisto entonces es útil ejecutar un servidor apache que regrese una

página indicando que el servicio es temporalmente inaccesible.

158

Características:

ldirectord es incluido en una variedad de paquetes y provisto en varias

distribuciones de Linux

.

Típicamente es iniciado desde heartbeat, pero puede también correr desde

la línea de comandos

Monitorea la salud de los verdaderos servidores mediante la solicitud

periódica de una URL conocida

Cuando es inicializado crea los servicios virtuales para el cluster