Un Clúster con SLURM Uso y configuración     Miguel Oliván    ANAIS ­ GIFNA Universidad de Zaragoza
Clúster   Agrupación coordinada de ordenadores que se      comportan como uno solo   Tipos según servicio esperado:     ...
Componentes   SLURM → Distribuye el trabajo en los nodos   NIS → Sincroniza los usuarios   NFS/SMB → Sistema de fichero...
SLURM   SLURM →Sistema gestor de recursos          Clusters heterogéneos          Tolerante a fallos          Configur...
Imagen única   NIS →Network Information Service          Gestión centralizada de usuarios   NFS → Network File System  ...
sultan   4 nodos          1 nodo acceso + cómputo (4 procesadores)          3 nodos cómputo                   dos mono...
Sistema de ficheros   Compartidos por todos los nodos:           NFS (a Gigabit Ethernet ­ ext3)                   /scr...
Uso SLURM   Uso básico: sbatch script [parametros]   El script contiene:           Variables de entorno adecuadas (PATH...
Uso SLURM - Ejemplo#!/bin/sh#Available variables in sbatch scriptecho $SLURM_JOB_IDecho $SLURM_JOB_CPUS_PER_NODE#Environme...
Uso SLURM - prioridades   Encolar tarea con más prioridad:    sbatch -p prior script [parametros]   La partición prior e...
Supervisión   sview (visualización, cancelación, gestión, ...)
Configuración de SLURM   Configurado el gestor de recursos para pensando en      aplicaciones secuenciales que demandan p...
Configuración de SLURM             Prioridades   Partición: conjunto de nodos   Asignación de prioridades por partición ...
Configuración   Slurm → /etc/slurm-llnl/slurm.conf   NIS →        /etc/hosts.allow        /etc/default/portmap        /e...
Enlaces   Slurm              Quick Start Administrator Guide             Generador de configuración             Config...
Upcoming SlideShare
Loading in …5
×

Un Clúster con SLURM, uso y configuración

3,018 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
3,018
On SlideShare
0
From Embeds
0
Number of Embeds
853
Actions
Shares
0
Downloads
14
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Un Clúster con SLURM, uso y configuración

  1. 1. Un Clúster con SLURM Uso y configuración Miguel Oliván ANAIS ­ GIFNA Universidad de Zaragoza
  2. 2. Clúster Agrupación coordinada de ordenadores que se  comportan como uno solo Tipos según servicio esperado:  Alto rendimiento  Alta disponibilidad  Balanceo de carga
  3. 3. Componentes SLURM → Distribuye el trabajo en los nodos NIS → Sincroniza los usuarios NFS/SMB → Sistema de ficheros en red NTP → Sincronización de relojes Cfengine → Gestiona configuraciones
  4. 4. SLURM SLURM →Sistema gestor de recursos  Clusters heterogéneos  Tolerante a fallos  Configurable (gestión de nodos, trabajos, tareas  reservas, grupos, ...)  Extensible
  5. 5. Imagen única NIS →Network Information Service  Gestión centralizada de usuarios NFS → Network File System  Permite compartir el sistema de ficheros para dar una  imagen común del arbol de directorios a todos los  nodos SMB/CIFS→Server Message Block/Common Internet File  System  Análogo a NFS – típico en NAS
  6. 6. sultan 4 nodos  1 nodo acceso + cómputo (4 procesadores)  3 nodos cómputo   dos monoprocesador  Uno 4 procesadores → 10 procesadores Red local Gigabit Ethernet Recusos de almacenamiento compartido
  7. 7. Sistema de ficheros Compartidos por todos los nodos:  NFS (a Gigabit Ethernet ­ ext3)  /scratch (~50 Gb)  SMB (a Gigabit Ethernet – NAS RAID 5)  /media/hardstorage (2 Tb) Ideales para fich. entrada/salida si el volumen no es grande  SMB (a 10Mb Ethernet) /media/next /media/tpc  /media/megas Replicado para todos los nodos /programas
  8. 8. Uso SLURM Uso básico: sbatch script [parametros] El script contiene:  Variables de entorno adecuadas (PATH, LD_LIBRARY_PATH, ROOTSYS, G4INSTALL,...)  Llama al programa: srun program Puede usar variables de entorno definidas por SLURM  (SLURM_JOB_ID, SLURM_JOB_CPUS_PER_NODE,...) Asumimos tareas secuenciales, no multithread, no MPI  Si no, reserva de CPUs: sbatch -n4 script
  9. 9. Uso SLURM - Ejemplo#!/bin/sh#Available variables in sbatch scriptecho $SLURM_JOB_IDecho $SLURM_JOB_CPUS_PER_NODE#Environment variables###GEANT4G4SYSTEM=Linux-g++G4WORKDIR=/media/next/SimData/laura/GeantWork/#[...]export PATH=$PATH:$G4WORKDIR/bin/$G4SYSTEM#call slurmsrun next225 "$@"
  10. 10. Uso SLURM - prioridades Encolar tarea con más prioridad: sbatch -p prior script [parametros] La partición prior es más prioritaria que la de defecto Esto se salta la cola de menos prioritarias (si las hay)  Permite tener dos vías (o más) con distintas  prioridades (y usuarios/grupos)  Existe opciones de configuración para expulsar a las  menos prioritarias: cancelarlas o reencolarlas  (demasiado expeditivas), suspenderlas (cambia la  planificación) crear y restaurar y puntos  checkpoints (no trivial)
  11. 11. Supervisión sview (visualización, cancelación, gestión, ...)
  12. 12. Configuración de SLURM Configurado el gestor de recursos para pensando en  aplicaciones secuenciales que demandan procesador CPU recurso escaso + aplicación secuencial →  SchedulerType=sched/backfill Especialmente indicado para SPMD (Un sólo programa,  distintos datos) Válido para simulación GEANT4 ¿Válido para análisis de datos? Planificación FIFO (First in, first out)
  13. 13. Configuración de SLURM Prioridades Partición: conjunto de nodos Asignación de prioridades por partición sin expulsión de  menos prioritario: PartitionName=debug Nodes=sultan,nodo01,nodo02,nodo03 Default=YES MaxTime=INFINITE State=UP PartitionName=prior Nodes=sultan,nodo01,nodo02,nodo03 Priority=10 Default=NO MaxTime=INFINITE State=UPPreemptType=preempt/partition_prio Existen también prioridades basadas en otras métricas) Existen expulsiones de menos prioritarias → suspensión,  cancelación, reencolado
  14. 14. Configuración Slurm → /etc/slurm-llnl/slurm.conf NIS → /etc/hosts.allow /etc/default/portmap /etc/default/nis /etc/yp.conf NFS/SMB → /etc/fstab /etc/exports NTP → /etc/ntp.conf
  15. 15. Enlaces Slurm   Quick Start Administrator Guide  Generador de configuración  Configuración de expulsión de tareas NIS  Guía rápida para Ubuntu Cfengine

×