grycap.slurm

Licencia CI

Rol de clúster SLURM

Instala el clúster SLURM.

Variables del Rol

Las variables que se pueden pasar a este rol y una breve descripción de cada una son las siguientes.

# Versión de SLURM a instalar (en caso de sistemas RH)
slurm_version: 20.02.7
# Lista de servidores para descargar el código de slurm
slurm_mirrors: [ "http://ftpgrycap.i3m.upv.es/src/", "https://download.schedmd.com/slurm/" ]
# Tipo de nodo a instalar: front o wn
slurm_type_of_node: front
# Nombre del servidor SLURM
slurm_server_name: slurmserver
# Dirección IP del servidor SLURM
slurm_server_ip: 127.0.0.1
# Prefijo para establecer en los nodos de trabajo SLURM
slurm_vnode_prefix: vnode-
# Lista de nombres de los nodos de trabajo
slurm_wn_nodenames: []
# Número de CPU de los nodos de trabajo
slurm_wn_cpus: 1
# Cantidad de memoria de los nodos de trabajo (en MB, ver RealMemory). Si es 0, no se establece
slurm_wn_mem: 0
# Especificación de GRES para el nodo de trabajo
slurm_wn_gres: ""
# Especificación de tipos de GRES para el nodo de trabajo
slurm_wn_gres_tpes: ""
# Archivo de configuración de datos GRES
slurm_wn_gres_conf: "AutoDetect=nvml"
# Usuario predeterminado para gestión de ssh y slurm
# Usuario predeterminado de ssh
user: user1
# Instalar la biblioteca DRMAA
drmaa_lib_install: false
drmaa_lib_version: 1.0.7
# Opciones de configuración predeterminadas de SLURM
slurm_default_conf_options:
    AuthType: auth/munge
    CryptoType: crypto/munge
    FirstJobId: 1
    JobRequeue: 0
    JobSubmitPlugins: all_partitions
    ProctrackType: proctrack/pgid
    ReturnToService: 2
    SlurmctldPidFile: /var/run/slurmctld.pid
    SlurmctldPort: 6817
    SlurmdPidFile: /var/run/slurmctld.pid
    SlurmdPort: 6818
    SlurmdSpoolDir: /var/spool/slurm
    SlurmUser: slurm
    StateSaveLocation: /var/slurm/checkpoint
    SwitchType: switch/none
    TaskPlugin: task/none
    InactiveLimit: 0
    KillWait: 30
    MessageTimeout: 30
    MinJobAge: 300
    SlurmctldTimeout: 30
    SlurmdTimeout: 40
    Waittime: 0
    FastSchedule: 1
    SchedulerType: sched/backfill
    SelectType: select/linear
    AccountingStorageType: accounting_storage/none
    ClusterName: cluster
    JobCompType: jobcomp/none
    JobAcctGatherFrequency: 30
    JobAcctGatherType: jobacct_gather/none
    SlurmctldDebug: debug5
    SlurmctldLogFile: /var/log/slurm/slurmctld.log
    SlurmdDebug: debug5
    SlurmdLogFile: /var/log/slurm/slurmd.log
# Opciones de configuración del usuario SLURM
slurm_conf_options: {}
# Opciones de configuración de SLURM para cgroup
slurm_cgroup_conf_options:
    CgroupPlugin: cgroup/v1

Ejemplo de Playbook

Este es un ejemplo de cómo instalar un clúster SLURM:

  - hosts: server
  roles:
  - { role: 'grycap.slurm', slurm_type_of_node: 'front', slurm_server_ip: '{{ansible_default_ipv4}}', slurm_wn_nodenames: "{{ groups['wns']|map('extract', hostvars, 'ansible_hostname')|list }}" }
  - hosts: wns
  roles:
  - { role: 'grycap.slurm', slurm_type_of_node: 'wn', slurm_server_ip: "{{hostvars['server']['ansible_default_ipv4']}}" }

Contribuyendo al rol

Para mantener el código limpio, se ha deshabilitado el envío de cambios a la rama principal. Si quieres contribuir, debes crear una rama, cargar tus cambios y luego crear una solicitud de extracción.
Gracias.

Acerca del proyecto

Install SLURM cluster

Instalar
ansible-galaxy install grycap.slurm
Licencia
apache-2.0
Descargas
3k
Propietario
Grid y Computación de Altas Prestaciones