Publicado el 25 de Junio del 2017
845 visualizaciones desde el 25 de Junio del 2017
5,9 MB
43 paginas
Creado hace 13a (16/12/2011)
Clúster de alto rendimiento con OpenMosix
Clúster de
alto
rendimiento
con openmosix
Jesús Miguel
Muñoz Rodríguez
Proyecto Integrado 2º ASI
16/12/11
Clúster de alto rendimiento con OpenMosix
Índice de contenido
Introducción..........................................................................................................................................3
Conceptos básicos................................................................................................................................3
Qué es un clúster de alto rendimiento..............................................................................................3
Clúster homogéneo..........................................................................................................................4
Clúster heterogéneo.........................................................................................................................4
Alto rendimiento y balanceo de carga.............................................................................................4
Clúster transparentes y no transparentes..........................................................................................4
Flops.................................................................................................................................................4
Beowulf................................................................................................................................................4
Openmosix............................................................................................................................................5
Cluster-knoppix....................................................................................................................................6
Instalación de cluster-knoppix..............................................................................................................6
Configuración de red..........................................................................................................................22
Montar el sistema de ficheros MFS....................................................................................................25
Configuración de SSH........................................................................................................................27
Monitorizando el clúster con Openmosix y sus herramientas............................................................30
OpenMosixView............................................................................................................................30
OpenMosixProcs............................................................................................................................31
OpenMosixAnalyzer......................................................................................................................32
OpenMosixMigmon.......................................................................................................................33
OpenMosixHistory.........................................................................................................................35
Mosmon.........................................................................................................................................35
Probando clúster con OpenMosix......................................................................................................36
Conclusiones finales...........................................................................................................................42
Bibliografía y webs.............................................................................................................................43
Clúster de alto rendimiento con OpenMosix
Introducción
El objetivo de nuestro proyecto consiste en implementar un cluster de alto rendimiento
mediante el manejo de máquinas de recursos básicos. Pudiendo llegar a crear con ellas una
supercomputadora con capacidad de cálculo alta y bajo coste.
En estos tipos de clústers, la carga se reparte entre los disitntos nodos para que el tiempo de
proceso sea menor. Siempre sería 1/n(nodos).
Los clúster surgieron como solución a ciertos problemas que se presentaban a la hora del
cómputo de alto nivel. Había empresas que necesitaban equipos que pudieran realiza tareas pesadas
en un corto espacio de tiempo; y esto collevaba a que lo costos de compra y mantenimiento de
equipos con estás características eran muy altos y costosos. De ahí surgió la idea de conectar dos
equipos medios y convertirlos en uno solo, con la capacidad de cómputo sumáda de los dos.
Lo cierto es que el origen de las tecnologías de clúster no se sabe con seguridad, aunque está
aproximado a los años 50 y principios de los 60.
Hacia el año 1967 Gene Amdahl de IBM, publico la conocida ley de Amdahl, la cual
describía matemáticamente el aceleramiento que se puede dar a una tarea cuando la paralelizamos.
Esta ley se convirtió en la base de la computación de multiprocesador y clúster.
Actualmente los clúster son ampliamente utilizados para proyectos con gran capacidad de
cálculo, por lo que suelen estar limitados a universidades y centros de proceso de cálculo a gran
escala.
Hay una curiosidad en cuanto a los clúster interesante: aprovechando el concepto de
computación distribuida, la universidad de Berkley en California (EE.UU.) ha creado el proyecto
SETI para buscar vida extraterrestre. Este proyecto consiste en que cualquiera que quiera participar
en él puede descargar un pequeño software e instalarlo en su equipo. Este sofware se activa cuando
no se está usando el equipo y convierte a este en un nodo del clúster el cual procesa imágenes y
datos obtenidos por telescopios y sondas en el espacio, mandando los resultados obtenidos a la
central del proyecto. Con esto se intenta que el procesamiento de los datos, el cual sería muy pesado
para un clúster convencional, crezca de manera espectacular debido a los millones de personas que
participan en el proyecto a pequeña escala. (Para más información se puede consultar la página del
proyecto: http://setiathome.ssl.berkeley.edu/)
Conceptos básicos
Qué es un clúster de alto rendimiento
Un clúster es un conjunto de computadoras que trabajan como una única, conectadas entre sí
por una red. Se conectan de forma coordinada y centralizada para procesar una mayor carga que la
que podría soportar una máquina sola.
Cada máquina por separado se denomina nodo, por lo que para que el clúster funciona ha de
tener 2 o más nodos conectados entre sí.
Para llevar a cabo esto se requiere un parche en el kernel (lo que hace que prácticamente casi
todos los clúster que existen el mercado sean bajo el núcleo de unix). Este parche hace que el
sistema reconozca las computadoras añadidas como parte del clúster y que se pueda llevar a cabo la
migración y el balanceo de los procesos. También permite que se lleve una monitorización de los
diferentes procesos que realiza el clúster así como de la gestión de memoria y del procesador.
Clúster de alto rendimiento con OpenMosix
Existen dos tipos de clúster: homogéneo y heterogéneno.
Clúster homogéneo
Son clúster en los que todos los nodos tienen las mismas características de hardware y
sofware. Son idénticos y por lo tanto la capacidad de procesamiento y rendimiento de cada nodo es
la misma.
Clúster heterogéneo
Al contrario que los anteriores, en estos tipos de clúster los nodos son completamente
distintos en cuanto a hardware y software se refiere. Esto conlleva a que las posibilidades de
expansión del clúster crezcan de forma exponencial, debido a que es más facil conseguir
computadoras con carecterísticas distintas que muchas con iguales carácterísticas.
Estos tipos de clúster presentan una escabilidad (capacidad de un sitema de crecer o
acomodarse a las exigencias del usuario o del administrador del mismo) pasmosa. Esta puede ser de
forma elevada, cuando se añaden nodos para formar parter del clúster; o de forma disminuida,
cuando se quitán nodos. Con openmosix se pueden llegar a tener hasta 65536 nodos trabajando de
forma simultánea en el clúster.
Alto rendimiento y balanceo de carga
Cuando se habla de un clúster de alto rendimiento, es inevitable referirse también al
balanceo de carga que este lleva a cabo. Con el fin de mejorar la capacidad de procesamiento que va
a llegar a tener nuestro clúster, se lleva a cabo una tarea de blanceo la cual reparte los procesos de
forma completa o por partes a los distintos nodos del clúster, respetando la carga que ya tenga cada
nodo. Esta tarea también se denomina paralelización.
Clúster transparentes y no transparentes
Los clúster no transparentes deben tener una configuración paralela previamente
predeterminada. También se tiene que conocer previamente la topología con la cual funcionará el
clúster y además la utilización de unas librerías para el paso de mensajes entre las diferentes tareas.
Un ejemplo de ellos es Beowulf.
Los clúster transparentes no tienen que tener la configuración parallela previamente
predeterminada, ni tampoco se tiene por qué conocer la topología con la cual se va a funcionar.
Ofrecen una forma mucho más cómoda a la hora de configurar el clúster, así como del balanceo de
la carga. Con este tipo, uno no se tiene que preocupar de paralelizar los procesos, puesto que se
hace de forma automática. Este tipo es el que vamos a comprobar con OpenMosix.
Flops
Un flop es la medida utilizada para las operaciones de coma flotante por segundo. Mide la
velocidad del procesamiento numérico del procesador. Se utiliza en unidades de millones de flops
(MegaFlops), miles de millones de flops (GigaFlops), etc...
Un Beowulf es una clase de computador masivamente paralelo de altas prestaciones
principalmente construido a base de un clúster de componentes hardware estándard. Beowulf
Beowulf
Clúster de alto rendim
Comentarios de: Clúster de alto rendimiento con OpenMosix (1)
http://openmosix.sourceforge.net/