View
213
Download
0
Category
Preview:
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
Recommended