(Off Topic) Cluster 2

2003-09-04 Por tema wcom
Hola a todos:

Con respecto al trabajo que tengo que presentar en la facu ya lo tengo
muy encaminado en lo que es teroia y los puntos a tocar y quiero ver si
me pueden dar una mano por favor.

Tema 1
Alto rendimiento:
Beowulf, Mosix y/o OpenMosix
Cluster usando mosix y/o openmosix (prefiero estos).
El Mosix es un parche del kernel que permite que un programa pueda ser
paralelizado y además que programas no paralelizados migren de un nodo al
otro del cluster según la carga de trabajo de cada uno dinámicamente. Por
ejemplo un nodo del cluster ejecuta 3 tareas y otro tambien el primero
termina las tres, quedando con 0 tareas. Entonces dinámicamente pasarán
tareas de las que están a medio realizar, del nodo con tres tareas al que
tiene 0, repartiéndose la carga. El Mosix reliza este trabajo
automáticamente. Además si un nodo se estropea, se deja de usar y no se le
mandan trabajos. Si unes más nodos al cluster, automáticamente el Mosix lo
reconoce y empieza a mandarle trabajos con lo cual la escalabilidad es
bastante buena. El problema, es la conexion entre los mismo que debe ser
minimo 100 fullduplex si o si, o preferiria 1000Gb

Pregunta
Este tema lo temgo liquidado, lo unico que no se si entendi bien es, yo tira
una compilacion de kernel como para dar un ejemplo, tengo que hacerlo con
algun comando al principio, para que esa compilacion sea mas rapida? o solo
asume. pregunto esto  por que es mi unica duda con este tema.

Tema 2 (ACA tengo muchas dudas)
Alta disponibilidad por software
HA Linux
Cluster usando HA + Heartbeat +DRBD
la idea es hacer 2 server iguales que estan corriendo: apache + postfix +
samba, y si se cae uno el otro lebante perfectamente. con la misma IP +
configuracion + samba + las paginas web + los mail... se que los
server tienen que tener la misma configuracion... con respecto a la info
de samba y los mails tendra que poner en uso el DRB para que replique la
misma info el server que esta com esclavo.

Todo esto es correcto?
Nunca trabaje con DRBD... es dificil hay algo mas facil?
Me falta algun paso?

Mil gracias por darme una mano.. y espero que el profe me ponga un 10
como minimo a todos nosotros ;-)


Sólo el conocimiento nos hace libres




Re: (Off Topic) Cluster 2

2003-09-04 Por tema Celso González
On Thu, Sep 04, 2003 at 12:03:00PM -0300, wcom wrote:
 Hola a todos:
 
 Pregunta
 Este tema lo temgo liquidado, lo unico que no se si entendi bien es, yo tira
 una compilacion de kernel como para dar un ejemplo, tengo que hacerlo con
 algun comando al principio, para que esa compilacion sea mas rapida? o solo
 asume. pregunto esto  por que es mi unica duda con este tema.

al hacer un make lo ideal es pasarle el parametro -j para indicar el
número de tareas concurrentes

Ejemplo si tienes un cluster con 5 ordenadores

make -j 6 bzImage (Se suele usar el valor de procesadores + 1)

Si sólo se va a emplear el cluster para compilación hay opciones mucho
más optimizadas como el distcc

 Tema 2 (ACA tengo muchas dudas)
 Alta disponibilidad por software
 HA Linux
 Cluster usando HA + Heartbeat +DRBD
 la idea es hacer 2 server iguales que estan corriendo: apache + postfix +
 samba, y si se cae uno el otro lebante perfectamente. con la misma IP +
 configuracion + samba + las paginas web + los mail... se que los
 server tienen que tener la misma configuracion... con respecto a la info
 de samba y los mails tendra que poner en uso el DRB para que replique la
 misma info el server que esta com esclavo.
 
 Todo esto es correcto?
 Nunca trabaje con DRBD... es dificil hay algo mas facil?

Kimberlite tal vez

-- 
Celso



pgpBsnTJO2HDH.pgp
Description: PGP signature


Re: (Off Topic) Cluster 2

2003-09-04 Por tema Xavier Andrade
On Thu, 4 Sep 2003, wcom wrote:

 Hola a todos:

 Con respecto al trabajo que tengo que presentar en la facu ya lo tengo
 muy encaminado en lo que es teroia y los puntos a tocar y quiero ver si
 me pueden dar una mano por favor.

 Tema 1
 Alto rendimiento:
 Beowulf, Mosix y/o OpenMosix
 Cluster usando mosix y/o openmosix (prefiero estos).
 El Mosix es un parche del kernel que permite que un programa pueda ser
 paralelizado y además que programas no paralelizados migren de un nodo al
  
Falso (ver mas abajo).
 otro del cluster según la carga de trabajo de cada uno dinámicamente. Por
 ejemplo un nodo del cluster ejecuta 3 tareas y otro tambien el primero
 termina las tres, quedando con 0 tareas. Entonces dinámicamente pasarán
 tareas de las que están a medio realizar, del nodo con tres tareas al que
 tiene 0, repartiéndose la carga. El Mosix reliza este trabajo
 automáticamente. Además si un nodo se estropea, se deja de usar y no se le
 mandan trabajos. Si unes más nodos al cluster, automáticamente el Mosix lo
 reconoce y empieza a mandarle trabajos con lo cual la escalabilidad es
 bastante buena. El problema, es la conexion entre los mismo que debe ser
 minimo 100 fullduplex si o si, o preferiria 1000Gb

Mosix no paraleliza, si no que distribuye varios trabajos seriales (no
paralelos) entre los procesadores de un cluster. Pero la idea de hacer
computacion paralela es distrbuir el _mismo_ trabajo en varios procesos y
con eso mosix no funciona.

Las aplicaciones en paralelo de verdad correr usando bibliotecas de paso
de mensajes, ya sea MPI o PVM. Y el paralelismo se maneja a nivel de
aplicacion y no a nivel de sistema operativo.

Y si quieres distribuir trabajos y balancear carga es mejor usar un
sistema de colas como OpenPBS o Sun Grid Engine (este es open source) que
reparten los trabajos en el momento de ejecutarse y que son capaces de
manejar procesos en paralelo. (y tambien puedes hacer cosas como compilar
en paralelo.)

En HPC escalabilidad es la capacidad de una aplicacion de aumentar el
rendimiento a medida que aumenta el numero de procesos, el rendimiento
ideal para N procesadores es N*(rendimiento del codigo en 1 procesador)
pero esto se ve raras veces.

 Pregunta
 Este tema lo temgo liquidado, lo unico que no se si entendi bien es, yo tira
 una compilacion de kernel como para dar un ejemplo, tengo que hacerlo con
 algun comando al principio, para que esa compilacion sea mas rapida? o solo
 asume. pregunto esto  por que es mi unica duda con este tema.

En el momento en que probe mosix no era capaz de lidiar con compilaciones
paralelas para casos simples por que los trabajos son muy cortos y no
alcanzan a migrar, ademas migrar un proceso es algo costoso y si el
trabajo no es largo es mejor que se quede en un nodo o sera mas lento que
migre, corra y vuelva.

Digamos en un verdadero cluster para HPC donde se correran aplicaciones
paralelas Mosix no tiene mucho que hacer y la utilidad que _podria_ dar es
reemplazable por aplicaciones mas robustas y mas simples de mantener (nada
de parchar kernels), sino que mosix es mas para aficionados y gente que le
gusta jugar a hacer un cluster. Tal vez tenga ventajas otras aplicaciones,
algo asi como granjas de compilacion pero yo no se de muchas.

Xavier