Uso de administradores de HPC como Slurm en múltiples servidores en LAN

Uso de administradores de HPC como Slurm en múltiples servidores en LAN

Tengo acceso a un grupo de servidores conectados con una LAN de 1 Gb y cada uno de ellos tiene más de 40 núcleos y sistema operativo Ubuntu. Todos tienen un NAS común. Instalé SLURM en algunos de ellos y lo configuré para que cada servidor sea a la vez un nodo de control y de cálculo, y los servidores no estén conectados. Los análisis requeridos son bioinformáticos y están vinculados a la CPU pero con archivos en GB. Mis preguntas son las siguientes:

  1. Este no es un clúster de computación, ¿correcto? ¿Qué se necesitaría para vincular estos servidores en un solo clúster?
  2. ¿Es una práctica válida utilizar administradores de HPC como Slurm en esta configuración? ¿Cómo se compartirían los datos? Tienen un NAS común, pero ejecutar cualquier cálculo directamente en el NAS es muy lento en comparación con los archivos locales.

Mi solución ideal sería llevar los archivos a una máquina local (idealmente independientemente de su ubicación, pero NAS podría ser el centro común), realizar el cálculo y posiblemente devolver los archivos de salida. ¿Es esta una solicitud irrazonable o un problema resuelto?

¡Gracias de antemano!

Respuesta1

Sí, ese es un clúster de computación. Tengo una definición amplia, como múltiples nodos informáticos encargados de la misma carga de trabajo. Califica una granja de construcción grande con varios hosts que ejecutan trabajadores informáticos. Lo mismo ocurre con los enormes sistemas de la lista TOP500.

Más importante aún, utilice la capacidad de slurm para gestionar múltiples nodos. De lo contrario, un controlador que sólo se gestiona a sí mismo es bastante complejo, ya que no tiene muchas funciones en comparación con sistemas más simples. Agregue todos los nodos y divídalos en particiones.

Los trabajos que solicitan más de un nodo requieren que los programas tengan en cuenta varios nodos, como en MPI. Para programas habituales que no lo reconocen, simplemente mantenga las solicitudes en un nodo.

Almacenamiento, necesitarás diseñar algo para llevar archivos a los nodos. Normalmente las opciones incluyen:

  • Copie archivos al almacenamiento local de cada nodo. (sbcast de barrio bajo)
  • Divida un almacenamiento distribuido en los discos de muchos nodos. (Lustre, Ceph)
  • Compartir archivos de alto rendimiento montado en cada nodo. (Todos los arreglos flash que sirven NFS)

información relacionada