Clusters Beowulf

Un  Beowulf es una clase de computador masivamente paralelo de altas prestaciones principalmente construido a base de un cluster de componentes hardware estándard. Un Beowulf ejecuta un sistema operativo de libre distribución como Linux o FreeBSD, y se interconecta mediante una red privada de gran velocidad. Generalmente se compone de un grupo de PCs o estaciones de trabajo dedicados a ejecutar tareas que precisan una alta capacidad de cálculo. Los nodos en el cluster de computadoras no se hayan en los puestos de trabajo de los usuarios, sino que están totalmente dedicados a las tareas asignadas al cluster. Generalmente, el cluster se haya conectado al mundo exterior por un solo nodo.

El software puede ejecutarse más rápido en un Beowulf si se dedica algún tiempo a reestructurar los programas. En general es necesario partirlos en tareas paralelas que se comunican usando alguna librería como MPI o PVM, o sockets o SysV IPC.

Fuente original:Cluster Beowulf

Las Supercomputadoras son usadas en bancos, universidades y centros de investigación para realizar complejos cálculos y obtener rápidos resultados. Seguramente habrán visto en fotos esas grandes máquinas que ocupan cuartos completos y que permiten ejecutar miles de millones de operaciones por segundo.  Esas “heladeras” poseen varios procesadores, inmensas cantidades de memoria y un espacio de almacenamiento mucho mas grande de lo que puedan imaginar.

cluster-beowulf

Todos estos recursos pueden estar dispuestos de dos formas: o están centralizados (todo dentro de una gran caja) o están distribuidos. A esta última modalidad es lo que conocemos como clusters y es la que vamos a mencionar en este pequeño post.

unicluster1-ini

Los clusters son computadoras robustas que funcionan gracias a un sistema que permite compartir los recursos de varios subsistemas. Se pueden tener dos o más computadoras interconectadas ntre sí por una red y hacer que compartan libremente sus recursos. Los clusters permiten que las computadoras compartan no sólo archivos e impresoras sino lo más importante que compartan sus procesadores y memorias.

Clusters en GNU/Linux

Mosix es un proyecto que se dedica a desarrollar el programa necesario para cumplir con la función de instalar un cluster. Instalado en cada una de ls máquinas, Mosix permite que trabajen todas en conjunto, compartiendo memorias y capacidades de procesamiento. Trabaja de forma inteligente; por ejemplo cuando una máquina está al borde de ser saturada por procesos, el sistema busca otra que esté ociosa y le saca algunos recursos para otorgárselos a a la máquina saturada.

Instalación de Mosix

La instalación de Mosix es relativamente sencilla en algunas distribuciones como Red Hat. Esto se debe a que los desarrolladores usan esta distribución para su desarrollo. En otras distribuciones como Mandrake, Debian, Suse etc todo lo que hay que hacer es descargar el archivo TGZ desde el sitio de Mosix (www.mosix.org),  descomprimirlo y ejecutar el script de instalación mosix.install. Este script nos hará algunas preguntas sobre el sistema, y aplicará el parche correspondiente en el núcleo. El proceso puede llevar un par de horas.

mosix clusters

Para instalarlo en los demás nodos del cluster, podemos seguir los mismos pasos, o utilizar algunas herramientas que simplificarán esta tarea automatizándola. Las recomendadas por la gente de Mosix son: LTSP ( http://www.ltsp.org) y ClusterNFS (clusternfs.sourceforge.net). Si desean leer mas información sobre el proceso de instalación en el archivo README del paquete encontrarán varias formas de realizar esta tarea.

Configuración


Al ser un sistema que funciona de forma automática, la configuración que requiere es sencilla. Entramos en la ruta /etc/mosix.map y al editar este archivo que contiene en forma de tablas, el número y nodo y su IP. Por ejemplo si tuvieramos un cluster de seis nodos, con tres nodos en la red 200.200.120.xxx y dos nodos en 200.200.140.xxx, la configuración sería así:

1   200.200.120.1.3

4   200.200.110.1.1

5   200.200.140.1.2

El primer número indica el nodo principal, y es, obviamente, 1. Como el primer nodo principal posee tres nodos, el segundo principal será 4, y así sucesivamente. Luego se especifica la dirección IP de cada nodo principal y la cantidad de nodos que hay bajo la red de esa dirección.

Por eso los clusters son una excelente idea cuando se necesita un sistema de supercomputación pero no se tienen los recursos económicos suficientes para invertir en él. saludos les desea Elendill forever..

Otros enlaces relacionados:

Tutorial de Cluster Beowulf Cacero

site oficial

Herramientas de instalación atuomática de Clusters Beowulf

Estructura de un Cluster Beowulf

One response to this post.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s