Anda di halaman 1dari 38

Clster de PCs tipo Beowulf en Linux

NDICE

INTRODUCCIN ................................................................................................................. 2 OBJETIVO DEL PROYECTO ............................................................................................ 3 JUSTIFICACIN .................................................................................................................. 3 VENTAJAS DE UN CLUSTER ...................................................................................... 4 Ensamblaje. .................................................................................................................. 4 Mantenimiento y disponibilidad ................................................................................. 4 Modernizacin y expansin........................................................................................ 4 Servidores Web. ........................................................................................................... 4 Servidores de archivos. .............................................................................................. 5 Aplicaciones inherentemente paralelas. .................................................................. 5 JUSTIFICACIN (ELECCION DEL SO) .......................................................................... 6 Historia de Debian ............................................................................................................... 8 CARACTERSTICAS DEL S.O. ......................................................................................... 9 REQUERIMIENTOS FSICOS Y LGICOS DE INSTALACIN. .............................. 10 HARDWARE COMPATIBLE......................................................................................... 10 COMPATIBILIDAD DE CPU......................................................................................... 10 COMPATIBILIDAD DE TARJETA GRFICA. ............................................................ 10 BUS DE E/S .................................................................................................................... 10 HARDWARE DE CONECTIVIDAD DE RED ............................................................. 10 PERIFRICOS Y OTRO HARDWARE ...................................................................... 10 DISCO DURO................................................................................................................. 10 RED .................................................................................................................................. 11 SISTEMAS DE ALMACENAMIENTO ACEPTADOS ................................................ 11 REQUISITOS DE MEMORIA Y ESPACIO EN DISCO ............................................ 11 MEDIOS DE INSTALACIN ........................................................................................ 13 FORMA DE PREPARACIN DE LA MEMORIA USB COMO MEDIO DE ARRANQUE. .............................................................................................................. 13 PROCEDIMIENTO DE INSTALACIN PARA EL DESARROLLO DEL PROYECTO. ....................................................................................................................... 15 CONSIDERACIONES ................................................................................................... 15 ESPECIFICACIONES DE HARDWARE OCUPADOS EN LA CONTRUCCION DEL CLUSTER TIPO BEOWULF ............................................................................... 15 CONFIGURAR LA RED ................................................................................................ 15 CMO CONFIGURAR LOS NODOS? .................................................................... 16 COMPARTIR DIRECTORIO ........................................................................................ 17 INSTALACION DE GANGLIA ...................................................................................... 22 CONCLUSIONES. ............................................................................................................. 24 FUENTE DE CONSULTA ................................................................................................. 24 ANEXOS ............................................................................................................................. 25 1

Clster de PCs tipo Beowulf en Linux

INTRODUCCIN
Los Clster de PCs se hicieron populares con el proyecto Beowulf. La idea consiste en armar un mquina, con gran poder de computo, interconectando PCs y usando Software gratuito como Linux, MPI o PVM, a un costo considerablemente menor que el de supercomputadores comparables. En este trabajo se presenta los distintos aspectos que se deben tomar en cuenta a la hora de implementar un clster Linux. Se denomina clster (agrupacin) de ordenadores a un grupo de ordenadores que trabajan con un fin comn. Estos ordenadores agrupan hardware, redes de comunicacin y software para trabajar conjuntamente como si fueran un nico sistema. Existen muchas razones atrayentes para realizar estas agrupaciones, pero la principal es poder efectuar el procesamiento de la informacin de forma ms eficiente y rpida como si fuera un nico sistema. Generalmente, un clster trabaja sobre una red de rea local (LAN) y permite una comunicacin eficiente, si bien las mquinas se encuentran dentro de un espacio fsico prximo. Los clster son usualmente empleados para mejorar el rendimiento y/o la disponibilidad por encima de la que es provista por un solo computador, tpicamente siendo ms econmico que computadoras individuales de rapidez y disponibilidad comparables. Si bien cada vez ms la tecnologa y los costos permiten estas aproximaciones, los esfuerzos y la complejidad de utilizacin de decenas o centenares (en algunos casos, miles) es muy grande. Sin embargo, las ventajas en tiempo de cmputo hacen que, aun as, este tipo de soluciones para el cmputo de altas prestaciones (HPC, high performance computing) sean consideradas muy atractivas y en constante evolucin. Este proyecto busca plasmar la funcionalidad de un cluster para incrementar la velocidad en las tareas informticas mediante la implantacin de un sistema operativo de GNUlinux con la distribucin de Debian 6.0, con la finalidad de aumentar la produccin de una empresa con un un bajo costo, ya se trabaja con un software libre. Lo que se realizara durante el proyecto es la construccin de un cluster, es decir, una serie de ordenadores funcionando en paralelo. Un cluster nos sirve perfectamente en el caso de un problema de Hardware, nuestros clientes tendran igualmente servicio ya que uno de los nodos tomara el control como nodo maestro.

Clster de PCs tipo Beowulf en Linux


OBJETIVO DEL PROYECTO

Nuestro objetivo es dar a conocer el trmino cluster desde un nivel bajo (hardware) hasta un nivel alto (software). Con ello pretendemos, que al finalizar este proyecto, un usuario con conocimientos medios a nivel hardware y software, sea capaz de crear, incluso, un cluster de computadores para uso personal. Al mismo tiempo, se pretende dar una solucin para empresas pequeas e incluso medianas empresas que precisan de una actualizacin de sus equipos informticos con un bajo coste econmico y unos rendimientos, que en muchos de los casos.

JUSTIFICACIN
Durante muchos aos las dependencias gubernamentales y no gubernamentales, vienen buscando alternativas que constituyan una solucin a los desafos de los diferentes mbitos laborales del trabajo y al mismo tiempo aprendizaje. Utilizando software libre, las reformas curriculares, metodologas de avanzada, un sin fin de opciones que lamentablemente an no logran cumplir con las expectativas que tenemos con relacin al desarrollo del potencial humano. Sin embargo, Linux nos da las alternativas adecuadas, que buscamos para nuestra mejora de las actividades diarias en el trabajo en conjunto, para hacer del trabajo algo significativo en la vida de nuestras labores profesionales y proporcionarles reales oportunidades de desarrollo. Este software de alguna manera, puede definir el nuevo rumbo para trabajar de una manera ms fcil dividiendo los procesos y as tener una mejora de nuestras actividades, el dicho proyecto impacta tanto en los social, econmico y tcnica. En lo social porque no hay necesidad de que estn trabajando varias personas, en la economa tiene el mayor impacto ya que el sistema operativo a utilizar el libre, que trae como consecuencia el ahorro de nuestros recursos financieros, y en cuestiones tcnicas La implementacin del clster nos permitir realizar la ejecucin de los procesos de una forma ms fcil y al mismo tiempo ms rpido. Los controles relacionados a la gestin de las tareas se realizaran desde un servidor, y as poder administrar todas las tareas. La funcionalidad del Sistema slo est dirigida a apoyar y optimizar los procesos. El funcionamiento ptimo de la aplicacin depender en gran parte de la plataforma en la que ser implantada, es decir de las caractersticas del servidor en el quesea instalado y de la capacidad del canal de comunicaciones de dicha plataforma. Adems el sistema estar sujeto a las polticas y directrices de administracin de lo recursos del departamento qu lo administre. El desarrollo del proyecto le permite aplicar una serie de conceptos adquiridos en reas como bases de datos, ingeniera de software, programacin de sistemas orientados a objetos, anlisis y diseo de sistemas orientados a objetos, seguridad informtica, redes, auditora de sistemas, entre otros. Adems permite obtener experiencia en la produccin de software, lo que en cierto modo simula los contextos reales del mercado laboral en los campos de accin en los que operan los ingenieros de sistemas.

Clster de PCs tipo Beowulf en Linux


VENTAJAS DE UN CLUSTER
Adems de que los clusters de PCs tienen un rendimiento comparable a los supercomputadores a una fraccin del costo de estos, existen otras ventas como los siguientes: Ensamblaje. No se requiere tener un doctorado en computacin y aos de experiencia para ser capaz de construir un cluster. Hoy en da estudiantes de bachillerato son capaces de ensamblar PCs. Las partes se pueden comprar por separado: tarjeta madre, procesador, tarjeta de video, tarjeta de sonido, disco duro, lectrora/escritora de CDs, monitor, teclado, fuente de poder, etc., de acuerdo a los gustos y necesidades, y al acoplarlas tienen un PC hecho a la medida. Con ciertos conocimientos adicionales de redes pueden armar un clster.. Mantenimiento y disponibilidad. Dado que los elementos que forman un cluster se encuentran fcilmente en el mercado (son componentes de produccin masiva y por lo tanto de bajo costo), al fallar alguno de ellos se puede remplazar sin mayores inconvenientes. Los clusters estn formados por PCs individuales interconectados por una red y en la gran mayora de los casos no es necesario poner fuera de servicio todo el cluster para remplazar un componente, sino solo el nodo (el PC o mquina) al que esta asociado el componente. Por lo general los supercomputadores constan de CPUs interconectados por redes especiales dentro de una misma caja. Modernizacin y expansin. Por la esencia misma de lo que son los supercomputadores, cuando un centro recibe una de esta mquinas dentro de poco aparecen nuevos modelos. Actualizar los supercomputadores se traduce en comprar los nuevos modelos. Por lo particular que son los supercomputadores, expandir sus capacidades de memoria, almacenamiento en disco, numero de CPUs, etc., se traduce en inversiones sustanciales. Como los clusters estn compuestos por elementos disponibles de mltiples fabricantes y debido a la compatibilidad que estos tratan de mantener con las diferentes generaciones de una misma familia de componentes, se hace sencillo modernizarlos. Actualizar el cluster con CPUs ms potentes puede ser tan sencillo como sacar un CPU de la tarjeta madre e instalar otro, o quizs, remplazar la tarjeta madre y el CPU conservando el resto de los componentes: memoria, tarjetas de video, etc. Expandir la capacidad de memoria y de almacenamiento en disco no requiere de inversiones sustanciales dado el bajo costo de estos componentes. Aadir CPUs implica agregar PCs de fcil adquisicin. A pesar de que los clusters surgen como una alternativa de computacin de alto rendimiento a bajo costo, existen otras aplicaciones para las cuales los clusters son convenientes. Entre ellas tenemos: Servidores Web. Con la explosin mundial de la Internet se hace necesario que sitios populares, como Yahoo y Google, tengan capacidad en exceso a fin de servir las solicitudes de sus clientes. No solo se requieren respuestas en tiempos razonables, tambin se hace necesario que stos sitios que estn disponibles constantemente. Sitios como Yahoo dependen de propagandas para subsistir y si presentan fallas frecuentes simplemente sucumbiran. Microsoft e IBM pierden reputacin si sus servidores se encuentran cados. Las empresas que hacen comercio electrnico, por ejemplo Amazon.com, podran ver su negocio seriamente afectado si no son accesibles. Los clusters ofrecen una solucin a estos dos problemas ya que por un lado la agregacin de mquinas permite hacer una

Clster de PCs tipo Beowulf en Linux


distribucin del trabajo y por otro lado la redundancia de elementos de cmputo ofrece una alta disponibilidad del servicio. Servidores de archivos. Los clusters tambin son ideales como servidores de archivos y por lo tanto para aplicaciones de bases de datos. Ellos permiten distribuir tanto las consultas a los datos como los datos mismos entre diferentes procesadores y diferentes unidades de disco respectivamente. Esto permite acelerar considerablemente las respuestas del sistema. Obsrvese que este tipo de aplicaciones esta estrechamente ligada con los servidores web. Aplicaciones inherentemente paralelas. Hay numerosas aplicaciones que se caracterizan por ser intensivas computacionalmente e inherentemente paralelas; el trabajo se puede dividir en subtrabajos que son relativamente independientes uno del otro. Estas subtareas pueden ser un mismo algoritmo ejecutado sobre diferentes porciones de los datos del problema o diferentes cmputos que se pueden efectuar en paralelo. A continuacin se mencionan algunos de ellos. El trazado de rayos consiste en simular en una imagen las trayectorias de los rayos de luz que emanan de una fuente, haciendo que la imagen sea mucho ms realstica. Simuladores de vuelos usados para entrenamiento de pilotos en los cuales se debe responder de inmediato al ambiente de vuelo y los comandos del piloto. La minera de datos que analiza inmensas cantidades de datos con la intencin de encontrar patrones o relaciones que son prcticamente imposibles de encontrar manualmente.

Clster de PCs tipo Beowulf en Linux

JUSTIFICACIN (ELECCION DEL SO)

La seleccin de esta distribucin para trabajar en este proyecto fue por los siguientes aspectos: Soporte a los usuarios. Instalacin sencilla Increble cantidad de software Gran compatibilidad en los paquetes de software. Es muy estable.

Nosotros hemos elegido el sistema operativo GNU/Linux Debian 6 squeeze, ya que se adapta cmodamente a nuestras necesidades, dicho sistema es muy estable, por lo tanto no presenta interrupciones en el sistema, cuenta con un repositorio muy amplio de paquetes lo cual lo hace mas fcil la instalacin de los mismos, por otro lado, la instalacin de este, es muy amigable, resulta fcil su instalacin para usuarios expertos como novatos en Linux. Este sistema se encuentra disponible para una gran variedad de arquitecturas de procesadores, entre las cuales va incluida con la que cuentan los procesadores de los equipos de computo a utilizar en esto proyecto, esta es una mas de las razones por la cual hemos elegido Debian 6. Tambin hemos elegido este sistema operativo debido a que no ocupa mucha memoria ram, por lo que puede funcionar con apenas si 64Mb, claro esta con algunas limitaciones, por ejemplo el no traer escritorio grafico. Con este sistema no necesitamos tener un equipo robusto y sofisticado, basta con tener un equipo en promedio normal, mas adelante en el etapa de desarrollo del proyecto, explicaremos a detalle las capacidades de hardware de nuestras computadoras a utilizar. Debian viene con ms de 29000 elementos de software diferentes. Cada bit de stos es libre. Si tiene software propietario que corre bajo GNU/Linux, puede usarlo (de hecho, puede que incluso exista un instalador en Debian que automticamente instale y configure todo por usted). Paquetes bien integrados Debian sobrepasa a todas las otras distribuciones en lo bien integrados que estn sus

Clster de PCs tipo Beowulf en Linux


paquetes. Como todo el software lo empaqueta un grupo coherente, no slo puede encontrar todos los paquetes en un mismo sitio sino que puede estar seguro de que hemos eliminado todos los problemas al respecto de complejas dependencias. Aunque creemos que el formato deb tiene algunas ventajas sobre el rpm, es la integracin entre paquetes lo que hace a Debian ms robusto. Actualizaciones fciles Actualizarse a una nueva versin de Debian es muy fcil gracias a nuestro sistema de empaquetamiento. Slo tiene que ejecutar apt-get update; apt-get distupgrade (o aptitude update; aptitude dist upgrade, segn la versin) y usted puede actualizarse desde un CD en cuestin de minutos o configure apt para que utilice alguno de los trescientos espejos de Debian y actualcelo desde la red. Rpido y ligero en memoria Adopcin a la configuracin del proyecto. Cumple los requisitos del proyecto realizado. Es software libre. Buena seguridad del sistema Debian y la comunidad del software libre son muy sensibles a asegurarse de que los arreglos de problemas de seguridad entren en la distribucin rpidamente.

Clster de PCs tipo Beowulf en Linux

Historia de Debian

Debian fue anunciado el 16 de agosto de 1993 por Ian Murdock, por entonces un estudiante de la Universidad de Purdue. Murdock al principio llam a este sistema "Debian Linux Release". Su idea era crear una distribucin abierta, respetando los valores de Linux y GNU. El nombre "Debian" proviene de la combinacin del primer nombre de su novia (ahora su esposa) Debra, con su propio primer nombre, Ian. El proyecto Debian creci poco al principio, y fueron lanzadas su primeras versiones, las 0.9x, en 1994 y 1995. La primera versin de Debian 1.x fue lanzada en 1996. En ese ao, Ian Murdock fue reemplazado por Bruce Perens como lder del proyecto. Ese mismo ao tambin, Ean Schuessler sugiri que Debian establezca un contrato social entre el proyecto y sus usuarios. Perens destil los resultados de las discusiones de las listas de e-mails sobre Debian, formando el Debian Social Contract (Contrato Social de Debian) y el Debian Free Software Guidelines (Normas del Software Libre Debian). De esta manera, defini los compromisos fundamentales para el desarrollo de esta distribucin. Tambin l fue el iniciador de la creacin de la organizacin Software in the Public Interest. Bruce Perens dej el proyecto en 1998, antes del lanzamiento del primer Debian basado en glibc, la versin 2.0. Se eligieron nuevos lderes y se hicieron dos lanzamientos ms de la 2.x, cada uno introdujo ms puertos y ms paquetes. Ahora el nuevo lder sera Ian Jackson, que se mantuvo desde enero de 1998 a diciembre de 1998, y fue sucedido por Wichert Akkerman (enero de 1999, marzo de 2001). APT (Advanced Packaging Tool) fue desplegado durante este tiempo. Tambin fue iniciado el primer puerto a un kernel no-Linux, el Debian GNU/Hurd. Ahora Ben Collins sera el lder del proyecto Debian desde abril de 2001 a abril de 2002, sucedido por Bdale Garbee quien estuvo al mando un ao tambin. Luego Martin Michlmayr de marzo de 2003 a marzo de 2005. Branden Robinson de abril de 2005 a abril de 2006, seguido de Anthony Towns lder desde abril de 2006 a abril de 2007. Actualmente el lder es Sam Hocevar.

Clster de PCs tipo Beowulf en Linux


CARACTERSTICAS DEL S.O.
Debian GNU/Linux 6.0 permite el uso de once arquitecturas principales y algunas variaciones de cada arquitectura conocidas como sabores.Debian se caracteriza por: La disponibilidad en varias arquitecturas. La versin estable incluye soporte para 11 plataformas: 1. i386 x86-32 2. amd64 x86-64 3. alpha DEC Alpha 4. sparc Sun SPARC 5. arm Arquitectura ARM 6. armel Emulador de ARM Emulator 7. powerpc Arquitectura PowerPC 8. ia64 Arquitectura Intel Itanium (IA-64) 9. mips, mipsel Arquitectura MIPS (big-endian y little-endian) 10. s390 Arquitectura IBM ESA/390 y z/Architecture 11. m68k Arquitectura Motorola 68k en Amiga, Atari, Mac, y otros.

Una amplia coleccin de software disponible. La versin 6.0 viene con ms de 30.000.2 paquetes aproximadamente. Un grupo de herramientas para facilitar el proceso de instalacin y actualizacin del software (APT, Aptitude, Dpkg, Synaptic, Dselect, etc.) Todas ellas obtienen informacin de donde descargar software desde /etc/apt/sources.list, que contiene los repositorios. Las caractersticas principales Debian 6.0 incluye los entornos de escritorio KDE, GNOME, Xfce y LXDE, as como todo tipo de aplicaciones de servidor. Se ejecuta sobre PCs de 32 bits / Intel IA-32 (i386), PCs de 64 bits / Intel EM64T / x86-64 (amd64), PowerPC de Motorola/IBM (powerpc), SPARC de Sun/Oracle (sparc), MIPS (mips (big-endian) y mipsel (little-endian)), Itanium de Intel (ia64), S/390 de IBM (s390), y ARM EABI (armel). Ncleo de Linux completamente libre. Sin embargo, todo el firmware privativo fue incluido en paquetes (non-free) en los repositorios, los cuales no estarn activados de manera predeterminada. Ejecucin en paralelo de los programas de arranque y el seguimiento correcto de sus interdependencias. Gracias a ello, Debian arranca mucho ms rpido. El proceso de instalacin de Debian GNU/Linux 6.0 ha sido mejorado de varias formas, incluyendo una seleccin ms fcil en la configuracin del idioma y teclado, as como en el particionado de volmenes lgicos, RAID y sistemas cifrados. Se ha agregado soporte para los sistemas de archivos ext4 y Btrfs, y (en la arquitectura kFreeBSD) para el sistema de archivos Zettabyte (ZFS). El instalador de Debian GNU/Linux ha sido traducido a 70 idiomas.

Clster de PCs tipo Beowulf en Linux


REQUERIMIENTOS FSICOS Y LGICOS DE INSTALACIN.
HARDWARE COMPATIBLE.
Debian no impone requisitos de hardware ms all de los que establecen el ncleo Linux o kFreeBSD y el conjunto de herramientas GNU.

COMPATIBILIDAD DE CPU.
Prcticamente todos los procesadores basados en x86 (IA-32) utilizados en ordenadores personales son compatibles, incluyendo todas las variedades de la serie Pentium de Intel. Esto tambin incluye los procesadores AMD y VIA (anteriormente Cyrix). Tambin se pueden usar procesadores nuevos como Athlon XP e Intel P4 Xeon.

COMPATIBILIDAD DE TARJETA GRFICA.


Utiliza una interfaz de visualizacin compatible con VGA para la terminal de consola. Prcticamente cualquier tarjeta de vdeo moderna es compatible con VGA.

BUS DE E/S
El bus del sistema es la parte de la placa base que permite comunicar la CPU con los perifricos (tales como los dispositivos de almacenamiento). Su ordenador debe usar ISA, EISA, PCI, PCIe, PCI-X, o VESA Local Bus (VLB, a veces llamado el bus VL).

HARDWARE DE CONECTIVIDAD DE RED


Casi cualquier tarjeta de interfaz de red (tambin llamadas network interface card o NIC, n. del t.) compatible con el ncleo de Linux es tambin compatible con el sistema de instalacin. Por regla general, los controladores modulares se cargarn automticamente.

PERIFRICOS Y OTRO HARDWARE


Linux es compatible con una amplia variedad de dispositivos de hardware como pueden ser: ratones, impresoras, escneres y dispositivos PCMCIA y USB. Sin embargo, muchos de stos no son necesarios durante la instalacin del sistema. Medios de instalacin esta seccin le ayudar a determinar los diferentes tipos de medio que puede usar para instalar Debian. Algunas arquitecturas permiten la instalacin basada en CD-ROM

DISCO DURO
El arranque del sistema de instalacin desde el disco duro es otra opcin para muchas arquitecturas.

10

Clster de PCs tipo Beowulf en Linux


RED
Puede utilizarse la red durante la instalacin para recuperar los ficheros para la instalacin. El que se utilice la red o no depende del mecanismo de instalacin que escoja y de sus respuestas a algunas preguntas que se le realizarn durante la instalacin. Este sistema de instalacin puede utilizar la mayor parte de las conexiones de red (incluyendo PPPoE, pero no RDSI PPP) a travs tanto de HTTP como FTP. Una vez haya terminado la instalacin podr configurar su sistema para que utilice RDSI y PPP. Tambin puede arrancar el sistema de instalacin a travs de la red.

SISTEMAS DE ALMACENAMIENTO ACEPTADOS


Los discos de inicio de Debian contienen un ncleo construido para maximizar el nmero de sistemas donde se puede ejecutar. Generalmente, el sistema de instalacin de Debian permite el uso de disquetes, unidades IDE (tambin llamadas PATA), disquetes IDE, dispositivos IDE en el puerto paralelo, controladoras y unidades SATA y SCSI. Los sistemas de ficheros aceptados incluyen, entre otros: FAT, extensiones FAT Win-32 (VFAT) y NTFS. Hay compatibilidad con las interfaces de disco que emulan la interfaz de disco duro AT, con frecuencia llamadas MFM, RLL, IDE o PATA. Los controladoras SATA y SCSI de muchos fabricantes tambin son compatibles.

REQUISITOS DE MEMORIA Y ESPACIO EN DISCO


Debe tener al menos 56MB de memoria y 650MB espacio de disco duro para realizar una instalacin normal. Tenga en cuenta que stos son los mnimos absolutos. Para un sistema mnimo basado en consola (todos los paquetes estndar), se requiere 250 MB. Si quiere instalar una cantidad razonable de software, incluyendo el sistema de ventanas X, y algunos programas y bibliotecas de desarrollo, necesitar al menos 400 MB. Para una instalacin ms o menos completa de un sistema de escritorio, necesitar unos cuantos gigabytes. Las imgenes de instalacin que tienen que incluyen el instalador grfico necesitan ms memoria que las imgenes que slo incluyen el instalador de texto y no deberan utilizarse en sistemas cuya memoria sea inferior a 56MB. Si se le presenta la opcin entre arrancar el instalador normal o el instalador grfico debera utilizar la primera opcin si su sistema no tiene mucha memoria. Antes de instalar debe Cumplir los requisitos mnimos de hardware: Una vez que haya reunido informacin sobre el hardware de su ordenador debe verificar que su hardware le permita realizar el tipo de instalacin que desea efectuar. Dependiendo de sus necesidades, podra arreglarse con menos del hardware recomendado listado en la siguiente tabla. Sin embargo, la mayora de usuarios se arriesgan a terminar frustrados si ignoran estas sugerencias. Se recomienda como mnimo un Pentium 4, a 1 GHz para un sistema de escritorio.

11

Clster de PCs tipo Beowulf en Linux


Tabla 1.- Requisitos mnimos de sistema recomendados

Tipo de instalacin Sin escritorio Con escritorio

RAM (mnimo) 64 Megabytes 128 Megabytes

RAM (recomendado) 256 Megabytes 512 Megabytes

Disco duro 1 Gigabyte 5 Gigabytes

Los requisitos de memoria mnimos necesarios son en realidad inferiores a los indicados en esta tabla. En funcin de la arquitectura, es posible instalar Debian en sistemas con tan slo 20 MB (en el caso de s390) a 60 MB (para amd64). Lo mismo se puede decir del espacio necesario en disco, especialmente si escoge las aplicaciones que va a instalar manualmente, consulte Seccin D.2, Espacio en disco requerido para las tareas para obtener ms informacin de los requisitos de disco. Es posible ejecutar un entorno de escritorio grfico en sistemas antiguos o de gama baja. En este caso es recomendable instalar un gestor de ventanas que es consuma menos recursos que los utilizados en los entornos de escritorio de GNOME o KDE. Algunas alternativas para estos casos son xfce4, icewm y wmaker, aunque hay ms entre los que puede elegir. Es prcticamente imposible dar requisitos generales de memoria y espacio en disco para instalaciones de servidores ya que stos dependern en gran medida de aquello para lo que se utilice el servidor. Recuerde que estos tamaos no incluyen todos los otros materiales que se encuentran habitualmente, como puedan ser los ficheros de usuarios, el correo y otros datos. Siempre es mejor ser generoso cuando uno est pensando qu espacio destinar a sus propios ficheros y datos. Se ha tenido en cuenta el espacio de disco necesario para la operacin normal del sistema Debian GNU/Linux en s en estos requisitos de sistema recomendados. En particular, la particin /var de Debian contiene mucha informacin de estado especfica a Debian, adems de su contenido habitual, como puedan ser los ficheros de registro. Los ficheros de dpkg (que incluyen informacin sobre los paquetes instalados) pueden fcilmente consumir unos 40 MB. Adems, hay que tener en cuenta que apt-get ubica los paquetes descargados aqu antes de instalarlos. Por regla general deber asignar por lo menos 200 MB para /var, y mucho ms si va a instalar un entorno grfico de escritorio.

12

Clster de PCs tipo Beowulf en Linux


MEDIOS DE INSTALACIN
El sistema operativo que elegimos, se puede instalar desde cualquiera de los siguientes medios; CD-ROM/DVD-ROM Dispositivo de memoria USB Red Nosotros hemos elegido, el Dispositivo de memoria USB, ya que los equipos de cmputo con el que contamos cuentan con arranque mediante USB, nos ahorramos el costo de los CD/DVD ya que contbamos con suficientes memorias USB para realizar la instalacin, gracias a que a instalacin se realiz mediante USB, la velocidad de instalacin fue mucho menor a la de una instalacin con CD/DVD.

FORMA DE PREPARACIN DE LA MEMORIA USB COMO MEDIO DE ARRANQUE.


Para crear nuestros medios de arranque usamos un programa llamado Lili USB Creator

Desde la plataforma Windows, lanzamos el programa Lili USB Creator, la interfaz de este programa es muy sencilla. Primero debemos elegir la unidad que queremos preparar para bootear.

El segundo paso es elegir la fuente del sistema, Una imagen iso, Un CD o que se descargue de internet directamente.

En el tercer paso aqu tenemos 3 opciones Ocultar archivos creados(Este oculta los archivos del sistema para que no sean modificados) Formatear dispositivo en FAT32 Activar iniciar LinuxLive(Este nos instala el virtual box portable para iniciar sin reiniciar la pc)

13

Clster de PCs tipo Beowulf en Linux

El ltimo paso solamente daremos clic en el rayo, y tendremos nuestro S.O. en la USB.

Ahora solo iniciamos con la USB y listo.

14

Clster de PCs tipo Beowulf en Linux


PROCEDIMIENTO DE INSTALACIN PARA EL DESARROLLO DEL PROYECTO.
CONSIDERACIONES
Qu se necesita para tener un Beowulf? Para un Beowulf se requieren los nodos como tales, as como una red local de interconexin; un sistema operativo en los nodos, en este caso GNU/Linux; y un mtodo para que los programas aprovechen la naturaleza paralela del Beowulf. Interesantemente, en la mayora de los casos estos sern los nicos elementos necesarios. Desde el principio, el proyecto Beowulf ha buscado integrarse estrechamente con el desarrollo normal de Linux, as como interferir lo menos posible con una instalacin de Linux tradicional. As, la mayora del software requerido para construir un Beowulf se proporciona como una adicin a alguna distribucin pblicamente disponible de Linux.

ESPECIFICACIONES DE HARDWARE OCUPADOS EN LA CONTRUCCION DEL CLUSTER TIPO BEOWULF


Nuestro proyecto consta de un clster Beowulf formado por 3 computadoras, 1 actuara como maestro y las otras dos sern esclavos. A continuacin se presenta una tabla donde se muestran las especificaciones de hardware con las que cuentan nuestros equipos de cmputo, ocupados para la realizacin de nuestro proyecto. Nombre Server (maestro) PC1(esclavo) PC2(esclavo) Memoria RAM 2GB 2GB 512Mb HDD 20Gb 80Gb 80Gb Procesador Intel Pentium a 2.0Ghz Intel Pentium 4 HT a 2.8Ghz Intel Pentium 4 HT a 3.0 Ghz

Todas ellas tienen instalado el sistema operativo GNU/Linux Debian 6 squeeze.

CONFIGURAR LA RED
En este proyecto utilizamos la topologa estrella para la configuracin del Clster, todas las maquinas estn conectadas a un switch central.
Para configurar la red de nuestro proyecto, editamos el archivo interfaces que se encuentra en el directorio /etc/network/interfaces.

15

Clster de PCs tipo Beowulf en Linux


En la siguiente tabla se muestra que direccin se le va a dar a cada una de las maquinas. Nombre Direccin IP Server 192.168.1.80 Pc1 192.168.1.81 Pc2 192.168.1.82 Ahora que sabemos que direccin se le dar a cada una de las maquinas procedemos editar el archivo antes mencionado con el fin de establecer las direcciones IP estticas. Para el nodo maestro la configuracin ser la siguiente; [root@debian~]#nano /etc/network/interfaces iface eth0 inet static address 192.168.1.80 netmask 255.255.255.0 gateway 192.168.0.80 Para el nodo esclavo pc1 la configuracin ser la siguiente; [root@debian~]#nano /etc/network/interfaces iface eth0 inet static address 192.168.1.81 netmask 255.255.255.0 gateway 192.168.0.80 Para el nodo esclavo pc2 la configuracin ser la siguiente; [root@debian~]#nano /etc/network/interfaces iface eth0 inet static address 192.168.1.82 netmask 255.255.255.0 gateway 192.168.0.80 Guardamos la configuracin y listo ya tenemos nuestras computadoras con direccin esttica, por ahora ya tenemos la red configurada. Para probar si un nodo tiene la red configurando correctamente, desde consola hacemos: ping <ip_nodo>, por ejemplo: ~]# ping 127.0.0.1 <---ping al nodo local ~]# ping 192.168.1.81 <---ping a la maquina 1 ~]# ping 192.168.1.82 <---ping a la maquina 2

CMO CONFIGURAR LOS NODOS?


Primero se debe modificar de (cada nodo) el /etc/hosts para que la lnea de localhost slo tenga el 127.0.0.1 y no incluya ningn nombre de la mquina. Esto se hace con el fin de ahorrarse tiempo a la hora de identificar un nodo, en lugar de buscarlo por una direccin IP, ahora lo haramos con un nombre, para realizar esto modificamos el archivo hosts como lo veremos a continuacin Para esto hemos ocupado la instruccin:

16

Clster de PCs tipo Beowulf en Linux


[root@debian~]# nano /etc/hosts 127.0.0.1 localhost Y aadir las IP de los nodos (y para todos los nodos). 192.168.1.80 server 192.168.1.81 pc1 192.168.1.82 pc2 Nota: esto se tiene que hacer en cada una de las maquinas. Para probar si un nodo tiene la red configurando correctamente, desde consola hacemos: ping <nombre>, por ejemplo: ~]# ping pc2 <---ping a la maquina 2

COMPARTIR DIRECTORIO
Para compartir el sistema de archivos lo haremos va NFS. El directorio a compartir ser ~/ del lado del maestro y los esclavos lo montaran en ~/. Es necesario que cada una de las maquinas que participaran en el cluster tengan una cuenta de usuario en comn. Esto se hace ya que para ejecutar mpirun, requiere que todos los nodos tengan un filesystem compartido.

Desde el maestro configuramos:


Instalamos el servidor de NFS. [root@debian~]# apt-get install nfs-kernel-server Editamos los permisos a los nodos: [root@debian~]# nano /etc/hosts.allow #nodos que se permiten el acceso por NFS portmap : 192.168.1.0/255.255.255.0 Con esto estamos diciendo que le damos permiso a toda la subred 192.168.1.0 con mascara de subred 255.255.255.0 para que puedan ver y montar los prximos directorios NFS. Posteriormente vamos a denegar los permisos a todas las dems subredes [root@debian~]# nano /etc/hosts.deny #nodos que no se permite el acceso portmap : ALL

17

Clster de PCs tipo Beowulf en Linux


Directorios a exportar:
Con la siguiente instruccin exportaremos un directorio que se encuentran en el nodo maestro, para que sea visible ante todos los dems. root@debian~]# nano /etc/exports #directorio requerido /home/debiancluster 192.168.1.0/255.255.255.0 (rw, sync) Reiniciamos el demonio y el portmap. debian~]# /etc/init.d/nfs-kernel-server restart debian~]# /etc/init.d/portamp restart

En los nodos montamos el directorio compartido


Ahora vamos a instalar lo necesario en cada nodo. [root@debianserver~]# apt-get install nfs-common portmap Una vez que termino la instalacin probaremos si el directorio compartido es accesible desde el nodo: debianserver~]#showmount -e server Export list for server: /home/debiancluster 192.168.1.0/255.255.255.0 Bien ahora vamos a montar el recurso desde lnea de comando para luego agregarlo a fstab para el montado automtico cada vez que arranque el nodo. debianserver~]#mount -t nfs server:/home/debiancluster /home/debiancluster Para automatizar el proceso de montaje del recurso exportado en cada nodo esclavo del clster modificamos el archivo /etc/fstab agregando la siguiente lnea: server:/home/debiancluster /home/debiancluster nfs rw,sync,hard,intr 0
0

Despus repetimos esto mismo con el otro nodo esclavo. Con esto ya tendremos configurado nuestros archivos compartidos mediante el servidor NFS.

Habilitar SSH sin password:


Para que el master pueda ejecutar comandos remotos en los esclavos, MPICH utiliza rsh (Remote Shell) o ssh (Secure Shell). En Debian el comando rsh es un enlace del sistema de alternativas que apunta a /usr/bin/ssh, por lo que MPICH y LAM/MPI utilizan por defecto conexiones seguras. Para disponer de SSH instalaremos en los nodos el servidor SSH (paquete opensshserver) y los configuraremos para que acepten conexiones desde el master sin pedir password ni pass-phrase (utilizando el mismo usuario en todos los nodos). Primero instalamos el paquete

18

Clster de PCs tipo Beowulf en Linux


[root@debian~]#apt-get install openssh-server ssh Despues crearemos una clave RSA en el master: [debiancluster@debian~]# ssh-keygen -t rsa -f ~/.ssh/id_rsa Activaremos ssh-agent en el master para que no nos pida la pass-phrase: [debiancluster@debian~]$ eval `ssh-agent -s` Agent pid 12297 [debiancluster@debian~]$ ssh-add Enter passphrase for /home/debiancluster/.ssh/id_rsa: Identity added: /home/debiancluster/.ssh/id_rsa (/home/debiancluster/.ssh/id_rsa) Copiaremos la clave pblica (~/.ssh/id_rsa.pub) en todos los esclavos: Pero antes en cada nodo esclavo creamos el directorio .ssh que es donde pondremos las llaves. debiancluster@servercluster1:~$ mkdir .ssh debiancluster@servercluster1:~$ chmod 700 .ssh Ahora procedemos a copiar la llave pblica en los esclavos Desde el nodo maestro. [debiancluster@debian~]$scp ~/.ssh/id_rsa.pub ter@pc1:~/.ssh/id_rsa.pub

debianclus-

En el nodo esclavo. La aadiremos al final del fichero ~/.ssh/authorized_keys en cada esclavo: [debiancluster@servercluster1~] cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys Ya estamos en condiciones de probar si el nodo maestro es capaz de ejecutar comandos sin necesidad de proveer la clave de cada nodo. Para hacer esta prueba, desde el maestro y como usuario debiancluster ejecutamos el siguiente comando: [debiancluster@debian~]$ ssh debiancluster@pc1 hostname Servercluster1

19

Clster de PCs tipo Beowulf en Linux


Configurar LAM/MPI
Configurar Nodos: La definicin del clster se encuentra en el fichero /etc/lam/bhost.def y /etc/lam/bhost.conf Debe contener todos los nodos del cluster, usuario de conexin (en nuestro caso, debiancluster) y nmero de CPU's. root@debian~]#nano /etc/lam/bhost.def #master server cpu=2 user=debiancluster #esclavos pc1 cpu=2 user=debiancluster pc2 cpu=2 user=debiancluster Lo mismo tiene que esta en el archivo /etc/lam/bhost.conf Configuramos MPI para decirle los nodos que componen el cluster, esto se hace creando un archivo de configuracin llamado .mpi_hostfile en el home del usuario debiancluster del nodo maestro con el siguiente contenido: [debiancluster@debian~]$nano .mpi_hostfile # Nodo maestro server slots=2 # Nodos esclavos Pc1 slots=2 Pc2 slots=2

Probar LAM
Para comprobar si el clster LAM/MPI puede activarse: [debiancluster@debian~]$ recon v Para activar el clster (lamboot lanza el demonio lamd en cada mquina listada en /etc/lam/bhost.conf): [debiancluster@debian~]$ lamboot v Una vez activado el cluster, para comprobar el estado de los nodos: [debiancluster@debian~]$tping N Listo ya tenemos nuestro clster listo para correr programas en paralelo, MPI Ejemplo de ejecucin de un programa paralelo, que suma los nmeros primos. Teniendo el cdigo de nuestro programa, lo guardamos con el nombre primos.c++ y lo compilamos con el comando: [debiancluster@debian~]$mpic++ primos.c++ -o primos

20

Clster de PCs tipo Beowulf en Linux


Esto nos dar como resultado el binario ejecutable del programa de prueba, podremos verificar que gracias a la comparticin NFS este binario se encuentra disponible tambin en cada uno de los nodos que hemos agregado a nuestro clster. Ahora lo vamos a ejecutar y verificar su funcionamiento primero solo en el nodo maestro y luego en todos los nodos del clster. Primero en el nodo maestro unicamente: [debiancluster@debian~]$ ./primos Ahora distribuido en todos los nodos del clster, para ello vamos a usar la herramienta mpirun con el parmetro -np 3 con el que le decimos la cantidad de procesos a ejecutar. [debiancluster@debian~]$ mpirun -np 3 --hostfile ../.mpi_hostfile ./primos Las Imgenes de prueba, corriendo los programas antes mencionados, se encuentran en la seccin de anexos.

21

Clster de PCs tipo Beowulf en Linux


INSTALACION DE GANGLIA
Ganglia es un software que provee monitoreo en tiempo real y ejecucin de ambientes usado por cientos de universidades tanto privadas como gubernamentales y implementaciones de cluster comerciales alrededor del mundo. Ganglia es tan fcil de usar que al igual como puede correr en 16 nodos de un cluster puede correr en 512 o mas nodos en un sistema de ambiente cluster. Inicialmente Ganglia fue desarrollada en la Universidad de Berkeley por la divisin de ciencias computacionales como manera de enlazar cluster entre los campus de manera lgica. El Ganglia Meta Daemon (gmetad), Este demonio permite obtener la informacin va XML en intervalos regulares desde los nodos, el gmetad toma la informacin y la salva en una base de datos Round-Robin y concatena los XML de los nodos para compartir la informacin con el servidor web u otro frontend que corra el demonio gmetad Este demonio solo debe estar instalado en el servidor o nodo maestro del cluster. Ganglia Web Frontend: Provee una vista de informacin de una pagina Web dinmica en tiempo real a los administradores y usuarios de sistemas, atra ves del Web Frontend Ganglia arranca como en html pero viene de un rbol xml, este fue echo bajo un sistema donde el historial se presenta de manera grafica. Un ejemplo del Ganglia Web Frontend es que deja ver la informacin (CPU, Memoria, etc.) de los nodos del cluster en tiempo real y de forma grafica. Al igual que el demonio anterior este debe estar nicamente en el nodo maestro, pues este ser quien controle, administre el cluster. Existe otro demonio llamado gmond el cual se encarga de estar enviando, los datos, para que el gmetad los recoja y pueda visualizarse la informacin. Desde el nodo maestro, instalamos lo que es el Gmetad y el Ganglia Web Fronted as como las libreras correspondientes para su instalacin, todo esto lo instalamos desde el synaptic, que es el programa para descargar paquetes de software de forma grafica, que trae por defecto deban 6 Una ves que tenemos instalado el gmetad, vamos a modificar una linea del archivo de configuracin del mismo, dicho archivo se llama gmetad.conf. [root@debian~]# nano /etc/gmetad.conf Buscamos la lnea donde dice data_source.y escribimos la direccin o nombre de la maquina donde se encuentra toda la configuracin de nuestro cluster, en este caso la maquina se llama deban. El archivo quedara as. data_source "debian" En los nodos esclavos, instalamos en gmond con sus libreras correspondientes de la misma forma que instalamos el gmetad en el nodo maestro, con la ayuda del synaptic. Una ves instalado el gmond lo nico que debemos hacer es modificar una linea al igual que en el gmetad.conf. Para esto modificamos el archivo gmond.conf

22

Clster de PCs tipo Beowulf en Linux


[root@debian~]# nano /etc/gmond.conf Y nos vamos a la linea donde se muestra algo como lo siguiente; # The name of the cluster this node is a part of # default: "unspecified" # name "My Cluster" Des comentamos la lnea donde dice name, y le colocamos el nombre de nuestro clster, en este caso deban, el archivo debe quedar as. # The name of the cluster this node is a part of # default: "unspecified" name "debian"

Y listo reiniciamos los servicios del gmetad y gmond, y ya podremos hacer uso de ganglia, para monitorizar, administrar los recursos de nuestro clster.

23

Clster de PCs tipo Beowulf en Linux


CONCLUSIONES.
A travs de al implementacin del Proyecto, se establece la practica del equipo para el desarrollo de nuestras capacidades. En este proyecto nos ensea de los niveles administrativos, que buscan soluciones a problemas reales. Que buscan soluciones que puedan implementar sin riesgo a generar problemas para la misma empresa o una organizacin. Al llevar a cabo el proyecto es con el fin de lograr una reduccin en los costos que generan una empresa que nos traer el aumento de productividad en los trabajos informticos. Como conclusin final podemos decir que la calidad del trabajo de cada persona es un granito de arena que nos beneficia tanto a nosotros como a la sociedad en general. Es as como se concluye el trabajo, mediante las herramientas necesarias para realizar dicho proyecto, con el fin de garantizar un buen rendimiento de trabajo. Para ello se utilizaron tres computadoras, la primera actu como nodo maestro, que es el encargado de hacer funcionar a las dems para poder trabajar como si fuese un solo CPU, la segunda actu como nodo esclavo, funcionara y trabajara dependiendo de lo que indique el nodo maestro, el tercero es igual un nodo esclavo, y har funcin igual que el segundo nodo. Tambin cabe mencionar, que con esto, el rendimiento del equipo de cmputo ser mucho muy eficiente para realizar cualquier tipo de operacin.

FUENTE DE CONSULTA
http://www.debian.org/releases/stable/i386/ http://www.debian.org/releases/stable/installmanual

http://es.scribd.com/doc/15756376/Cluster-Con-Debian http://www.retronet.com.ar/?p=673 http://seccperu.org/files/Cluster_Debian.pdf http://alt1040.com/2011/11/historia-de-la-tecnologia-cluster-beowulf-lasupercomputadora-de-los-pobres http://itzamna.bnct.ipn.mx:8080/dspace/bitstream/123456789/5012/1/DISENOIMPLE MENT.pdf

24

Clster de PCs tipo Beowulf en Linux


ANEXOS

F. 1 Debian Cluster Server

F. 2 Maquina 1

25

Clster de PCs tipo Beowulf en Linux

F. 3 Maquina 2

F. 4 Nodo Maestro (server)

26

Clster de PCs tipo Beowulf en Linux

F. 5 Nodo Maestro (server) Maquina 1, Maquina 2

F. 6 Rendimiento de las tres maquinas

27

Clster de PCs tipo Beowulf en Linux

F. 7 Programa ejecutado en Maquina 1 desde el nodo maestro

F. 8 Programa ejecutado en Maquina 2 desde el nodo maestro

28

Clster de PCs tipo Beowulf en Linux

F. 9 Programa ejecutado en Maquina 1 y Maquina 2 desde el nodo maestro

F. 10 Programa ejecutado en Maquina 1, Maquina 2 y en el nodo maestro

29

Clster de PCs tipo Beowulf en Linux


PASOS PARA LA INSTALACIN DE DEBIAN 6 1.-Iniciar la pc desde disco, en caso no sea automtico cuando introduzcas el cd, entra a setup de la Bios y modifica secuencia de arranque a cd/dvd. 2.- a continuacin se mostrara en la pantalla de inicio de la instalacion de la instalacin.

3.- En este paso seleccionaremos la Instalacin grfica, existe tambin modo experto para todos aquellos expertos en Linux especialmente, si est destinada a servidor lo recomendable instalar sin grficos, escogemos el idioma para la instalacin de nuestro sistema operativo en este casi escogeremos el lenguaje Espaol.

30

Clster de PCs tipo Beowulf en Linux


4.-Enseguida escogemos la ubicacin para fijar nuestra zona horaria.

5.-Despues seleccionaremos la configuracin de nuestro teclado en nuestro caso seleccionaremos el espaol Latinoamericano.

31

Clster de PCs tipo Beowulf en Linux


6.-En esta configuracin de nuestro sistema optaremos por un nombre el cual ser identificado nuestro ordenador.

7.-Asignaremos el nombre de nuestro dominio de red el cual asignaremos el nombre ithuejutla.com este nombre ser el mismo para todos los ordenadores de nuestra red. Hay que tomar en cuenta que el nombre ser proseguido por un .com, .net, .edu o .org.

32

Clster de PCs tipo Beowulf en Linux


8.- En cualquier distro de Linux siempre llevara contraseas de administrador el cual esta ser quien dar los permisos para poder eliminar instalar, o hacer cualquier cambio de nuestro sistema. Asignaremos la contrasea del superusuario.

9.- Asignaremos un nombre de usuario para la cuenta de superusuario para identificar un usuario normal a un superusuario.

33

Clster de PCs tipo Beowulf en Linux


10.- asignaremos el nombre de la cuenta del usuario comn.

11.- crearemos la contrasea ser usuario comn

34

Clster de PCs tipo Beowulf en Linux


12.- Aqu en este apartado dependiendo el usuario deber contestar esta pregunta para poder participar en una encuesta sobre el uso de paquetes del sistema.

13.-El particionamiento del disco, para proposito general todo el disco, en caso contenga otro sistema operativo en disco, escoger la particin libre, generalmente est dentro de la extendida.

35

Clster de PCs tipo Beowulf en Linux


14.- O en caso de elegir particionar manualmente, pero tambin pude hacer por el mtodo guiado, muy recomendable ya que debian hace las particiones de forma correcta, pero si desea personalizar pues existe muchas opciones aqu hice tres bsicas, swap (en teora doble de la RAM fsica, pero en pcs arriba de las 2G, no es necesario, pero es recomendable tenerla)

15.- Seleccionamos la casilla Si ya que nos pregunta si deseamos escribir los cambios en el disco.

36

Clster de PCs tipo Beowulf en Linux

16.- Instalamos el sistema base.

17.- Luego de aceptar algunas opciones vemos que automticamente nos propone instalar algunos servicios e interfaz grfica, aceptamos y continuamos.

37

Clster de PCs tipo Beowulf en Linux

18.- Comienza la instalacin de programas interfaz grfica y ms cosas que contenga el primer cd, luego nos preguntar si deseamos incluir a grub, aceptamos

38

Anda mungkin juga menyukai