Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
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,395 views

Published on

  • Be the first to comment

  • Be the first to like this

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

×