burst_buffer.conf(5)

NAME
burst_buffer.conf - Slurm configuration file for burst buffer management.

DESCRIPTION
burst_buffer.conf is an ASCII file which describes the configuration of burst buffer resource management. This file is only required on the head node(s), where the slurmctld daemon executes. The file location can be modified at system build time using the DEFAULT_SLURM_CONF parameter or at execution time by setting the SLURM_CONF environment variable. The file will always be located in the same directory as the slurm.conf file. In order to support multiple configuration files for multiple burst buffer plugins, the configuration file may alternately be given a name containing the plugin name. For example, if "burst_buffer.conf" is not found, the burst_buffer/generic configuration could be read from a file named "burst_buffer_generic.conf".

Parameter names are case insensitive. Any text following a "#" in the configuration file is treated as a comment through the end of that line. Changes to the configuration file take effect upon restart of Slurm daemons, daemon receipt of the SIGHUP signal, or execution of the command "scontrol reconfigure".

The configuration parameters available include:

AllowUsers
    Comma separated list of user names and/or IDs permitted to use burst buffers. The options AllowUsers and DenyUsers can not both be specified. By default all users are permitted to use burst buffers.

CreateBuffer
    Fully qualified path name of a program which will create both persistent and per-job burst buffers. This option is not used by the burst_buffer/cray plugin.

DefaultPool
    Name of the pool used by default for resource allocations. The default value is the first pool reported by the burst buffer infrastructure. This option is only used by the burst_buffer/cray plugin.

DenyUsers
    Colon delimited list of user names and/or IDs prevented from using burst buffers. The options AllowUsers and DenyUsers can not both be specified. By default all users are permitted to use burst buffers.

DestroyBuffer
    Fully qualified path name of a program which will destroy both persistent and per-job burst buffers. This option is not used by the burst_buffer/cray plugin.

Flags
    String used to control various functions. Multiple options may be comma separated. Supported options include:

    DisablePersistent
        Prevents regular users from being able to create and destroy persistent burst buffers. This is the default behaviour, only privileged users (Slurm operators and administrators) can create or destroy persistent burst buffers.

    EmulateCray
        Emulating a Cray DataWarp system using the dw_wlm_cli script in the burst_buffer/cray plugin.

    EnablePersistent
        Enables regular users to create and destroy persistent burst buffers. By default, only privileged users (Slurm operators and administrators) can create or destroy persistent burst buffers.

    PrivateData
        If set, then only Slurm operators and the burst buffer owner can see burst buffer data.

    TeardownFailure
        If set, then teardown a burst buffer after file staging error. Otherwise preserve the burst buffer for analysis and manual teardown.

GetSysState
    Fully qualified path name of a program which will return the current burst buffer state. See the src/plugins/burst_buffer/generic/bb_get_state.example in the Slurm distribution for an example. For the Cray plugin, this should be the path of the dw_wlm_cli command and it's default value is /opt/cray/dw_wlm/default/bin/dw_wlm_cli.

GetSysStatus
    Fully qualified path name of a program which will return the current burst buffer status. For the Cray plugin, this should be the path of the dwstat command and it's default value is /opt/cray/dws/default/bin/dwstat.

Granularity
    Granularity of job space allocations in units of bytes. The numeric value may have a suffix of "m" (megabytes), "g" (gigabytes), "t" (terabytes), "p" (petabytes), or "n" (nodes). Bytes is assumed if no suffix is supplied. This option is not used by the burst_buffer/cray plugin.

OtherTimeout
    If a burst buffer operation (other than job validation, stage in, or stage out) runs for longer than this number of seconds, the job will be placed in a held state. A Slurm administrator will be required to release the job. By default there is a 300 second (5 minute) timeout for these operations. Also see StageInTimeout, StageOutTimeout, and ValidateTimeout options.

PrivateData
    If set to "true" then users will only be able to view burst buffers they can use. Slurm administrators will still be able to view all burst buffers. By default, users can view all burst buffers.

StageInTimeout
    If the stage in of files for a job takes more than this number of seconds, the burst buffer will be released and the job will be placed in a held state. A Slurm administrator will be required to release the job. By default there is a one day timeout for the stage in process.

StageOutTimeout
    If the stage out of files for a job takes more than this number of seconds, the burst buffer will be released and the job will be purged. By default there is a one day timeout for the stage out process.

StartStageIn
    Fully qualified path name of a program which will stage files in for a job. See the src/plugins/burst_buffer/generic/bb_start_stage_in.example in the Slurm distribution for an example. This option is not used by the burst_buffer/cray plugin.

StartStageOut
    Fully qualified path name of a program which will stage files out for a job. See the src/plugins/burst_buffer/generic/bb_start_stage_out.example in the Slurm distribution for an example. This option is not used by the burst_buffer/cray plugin.

StopStageIn
    Fully qualified path name of a program which will stop staging files in for a job. See the src/plugins/burst_buffer/generic/bb_stop_stage_out.example in the Slurm distribution for an example. This option is not used by the burst_buffer/cray plugin.

StopStageOut
    Fully qualified path name of a program which will stop staging files in for a job. See the src/plugins/burst_buffer/generic/bb_stop_stage_out.example in the Slurm distribution for an example. This option is not used by the burst_buffer/cray plugin.

ValidateTimeout
    If the validation of a job submission request takes more than this number of seconds, the submission will be rejected. The value of ValidateTimeout must be less than the value of MessageTimeout configured in the slurm.conf file or job submission requests may fail with a response timeout error. By default there is a 5 second timeout for the validation operations.

EXAMPLE

##################################################################
# Slurm's burst buffer configuration file (burst_buffer.conf)
##################################################################
AllowUsers=alan,brenda
PrivateData=true
#
Granularity=1G
#
StageInTimeout=30 # Seconds
StageOutTimeout=30 # Seconds
#
CreateBuffer=/usr/local/slurm/17.11/sbin/CB
DestroyBuffer=/usr/local/slurm/17.11/sbin/DB
GetSysState=/usr/local/slurm/17.11/sbin/GSS
StartStageIn=/usr/local/slurm/17.11/sbin/SSI
StartStageOut=/usr/local/slurm/17.11/sbin/SSO
StopStageIn=/usr/local/slurm/17.11/sbin/PSI
StopStageOut=/usr/local/slurm/17.11/sbin/PSO

COPYING
Copyright (C) 2014-2017 SchedMD LLC.

This file is part of Slurm, a resource management program. For details, see <https://slurm.schedmd.com/>.

Slurm is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

Slurm is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

SEE ALSO

slurm.conf(5)