¿Alguien sabe algunos enlaces / libros / cualquier cosa que se le ocurra, que describa el proceso de construcción de un pequeño grupo de casas (cuando digo casa , no necesariamente significa mantener en casa, solo significa que es relativamente barato y pequeño) para fines experimentales, con un énfasis especial en qué hardware sería adecuado hoy en día, y algún tipo de análisis de costos?
Aunque, si alguien aquí lo ha hecho, agradecería toda la experiencia que pueda compartir.
Respuestas:
Helmer me viene a la mente. :)
fuente
Ha habido un par de grupos de Ikea presentados en Hack A Day:
fuente
Consulte los libros Beowulf Cluster Computing de Thomas Sterling (uno para Linux y otro para Windows). Le dicen todo lo que necesita saber sobre el uso de MPI para que sus nodos se comuniquen entre sí.
Un amigo y yo construimos un grupo de 8 cajas con un hardware realmente malo y ejecutamos Windows XP en ellas. Estos eran como Pentium I - cajas de 90 MHz. Muy por debajo de las especificaciones requeridas para Windows, pero funcionó bien. También ejecutamos SQL Server 2000 en ellos (también muy por debajo de las especificaciones recomendadas) e hicimos algunos modelos de black-scholes de precios de opciones sobre acciones en ellos.
Es difícil recomendar qué tipo de hardware sería adecuado sin saber qué desea hacer con su clúster. Pero la conclusión es que puedes construir un grupo de casi cualquier cosa.
fuente
Una alternativa a tener muchos nodos físicos del clúster es crear máquinas virtuales. Solo tendría una o dos máquinas físicas reales, pero podría simular tener muchos más nodos. Esto funcionaría bien para crear, aprender y usar menos recursos (espacio, poder, $$$).
Esto no le daría mucho análisis de costos, pero lo ayudaría a comenzar. El tipo de configuración del clúster dependerá del tipo de trabajo que desee crear para él. Puede tener muchos nodos pequeños o tener solo unos pocos nodos potentes. También hay que tener en cuenta los entornos de memoria compartida y no compartida. ¿Qué tipo de programas paralelos quieres crear? Cuantos más nodos físicos tenga, más espacio, energía, refrigeración e interconectividad de red tendrá que tener en cuenta. A veces, solo una gran computadora masiva es el camino a seguir (y los entornos de memoria compartida son más fáciles de programar para mi humilde opinión).
Recientemente comencé a jugar con un clúster para construir algunas cajas P4 aleatorias, ubuntu y LAM-MPI. Definitivamente ha sido una experiencia de aprendizaje.
En realidad, eran un par de computadoras portátiles y torres p4 que se apilaban juntas en un garaje. Era un gueto, pero solo quería aprender. Acabo de usar una red ethernet de 100 Mbps. Elegí ubuntu, porque no quería lidiar con mucha configuración de hardware de las cajas. Ubuntu tenía muchos de los controladores que necesitaba. Necesitaba un entorno Linux ya que las aplicaciones que escribí para él eran aplicaciones basadas en C con interfaces MPI. Traté de replicar lo que había usado antes. Todo fue misceláneo. hardware, nada estándar. La mayoría de los clústeres tienen hardware exacto para que pueda agregar y eliminar nodos en un instante.
fuente
Dependiendo de lo que intente hacer, considere desarrollar su sistema en un clúster de máquinas virtuales. El uso de una solución de virtualización del sistema operativo como OpenVZ o Virtuozzo o Solaris Containers de Parallel le permitirá escalar a enormes densidades en comparación con la virtualización completa del sistema (por ejemplo, VirtualBox / VirtualPC / Xen / VMWare). Luego, cuando realmente necesite implementar el sistema para obtener cierto rendimiento, ejecútelo "en la nube" en el EC2 de Amazon o similar.
fuente
Comenzaría mirando personalmente los proyectos LittleFE ( http://littlefe.net/ ) o Bootable Cluster CD ( http://bccd.net/ ). Consulte también el proyecto Ubuntu Cloud ( http://www.ubuntu.com/cloud ).
Más o menos cualquier hardware debería funcionar. Me inclinaría a buscar algún tipo de acuerdo de liquidación o máquinas que salgan del contrato de arrendamiento para recoger algún hardware barato.
fuente
Eche un vistazo a Rocks, que es una distribución de clúster que hace que construir clúster sea realmente fácil. También escala hasta al menos unos pocos nodos.
fuente