sábado, 27 de abril de 2013

Cluster Beowulf

Hace unas semanas en una tarde tranquila en el trabajo me dio por mirar formas de clusters que habia por ahi. Un cluster viene a ser un grupo de maquinas que trabajan conjuntamente para ofrecer una solucion a un problema, ultimamente abundan los de virtualizacion para los clouds o los de almacenamiento.

Una de las cosas que mas me gustan es ver (y hacer) que varias maquinas fisicas se vean a efectos practicos como una. En el caso del cloud, puede evitar un corte del servicio haciendo que cuando una maquina fisica se cae, los servicios pasen a ejecutarse en otra sin que nos enteremos. Otro caso es el del almacenamiento, unir varios discos duros de distintas maquinas y que funcione como si fuese uno solo.

Otro uso de los clusters es para la computacion distribuida, en este caso el Beowulf es un ejemplo. Lo que conseguimos con esto es que varias maquinas compartan procesador y memoria para ejecutar una tarea, generalmente aquellas que requieren mucha capacidad de calculo. Para el programa que se ejecute en ese cluster, es como si hubiese una maquina con todas las cpus y la ram y lo tiene a su disposicion.

La bondad de este tipo de cluster es que no necesitas hardware dedicado y carisimo, con maquinas normales puedes hacerlo sin problemas, reduciendo costes en comparacion con otras soluciones. El problema es que para aprovechar esto necesitas que el programa en cuestion este diseñado para este tipo de clusters por lo que las aplicaciones que he encontrado son para calculos en universidades o renderizado 3D.

En cuanto tenga la oportunidad me voy a montar uno, because yes xD y ya investigare que usos se le pueden dar a este tipo de cluster mas allá de lo que he encontrado por ahora (tengo una idea loca en mente que si se pudiese hacer voy a dar saltos de alegría y ya contare para que nadie me copie :P).

Como es mi intencion, una vez montado intentare poner el howto en la wiki.

¡Saludos!

No hay comentarios:

Publicar un comentario