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. If set,
-
- 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.
- 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.
Possible future enhancement .TP Gres Generic resources associated with burst buffers. This is a completely separate name space from the Gres defined in the slurm.conf file. The Gres value consists of a comma separated list of generic resources, each of which includes a name separated by a colon and a numeric value. The numeric value can include a suffix of "k", "m" or "g", which multiplies the numeric value by 1,024, 1,048,576, or 1,073,741,824 respectively. The numeric value is a 32-bit value. See the example below.
- 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.
(NOTE: This option was added after the release of Slurm version 15.08 and will
its not be visible to users with Slurm tools until the version 16.05 release.)
- 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.
(NOTE: This option was added after the release of Slurm version 15.08 and will
its not be visible to users with Slurm tools until the version 16.05 release.)
EXAMPLE
##################################################################
# Slurm's burst buffer configuration file (burst_buffer.conf)
##################################################################
AllowUsers=alan,brenda
PrivateData=true
.br
Gres=nodes:10,other:20
#
Granularity=1G
#
StageInTimeout=30 # Seconds
StageOutTimeout=30 # Seconds
#
CreateBuffer=/usr/local/slurm/15.08/sbin/CB
DestroyBuffer=/usr/local/slurm/15.08/sbin/DB
GetSysState=/usr/local/slurm/15.08/sbin/GSS
StartStageIn=/usr/local/slurm/15.08/sbin/SSI
StartStageOut=/usr/local/slurm/15.08/sbin/SSO
StopStageIn=/usr/local/slurm/15.08/sbin/PSI
StopStageOut=/usr/local/slurm/15.08/sbin/PSO
COPYING
Copyright (C) 2014-2015 SchedMD LLC.This file is part of Slurm, a resource management program. For details, see <http://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)