slurm.conf settings, prolog and epilog scripts, and packages installed on login and compute nodes. Some changes
restart parts of the cluster, and a few can stop Slurm scheduling if they are wrong.
Changing the configuration needs the clusters.configure permission. Treat it as root on every node: prolog,
epilog, and package scripts run as root. See Permissions.
What you can set
By default a cluster has one partition per GPU type, named like
compute-h200, and a default partition all with
every node. Setting slurmPartitions replaces all of them.
Changes take effect in different ways:
Any change closes open SSH sessions on the cluster; see Connect over SSH.
Read the configuration
PUT restores the configuration you started from.
Change the configuration
PUT replaces all nine settings at once: a setting you leave out is cleared. Always start from the current
configuration and change only what you mean to.
This adds a prolog that keeps jobs off a node that has lost a GPU, and keeps everything else:
spec.schedulerGeneration on the cluster. It increases with each
PUT that changes something. Sending the same configuration again changes nothing and does not increase it.
When a prolog exits with an error, Slurm drains the node, so it takes no new jobs, and requeues the job. See
Prolog in the slurm.conf documentation.
To add a setting to slurm.conf:
slurmExtraConfig replaces what was there before, so include any lines you set earlier.
Validation
Platform checks file names, sizes, and shebang lines before they reach the cluster, and returns400 with code
invalid_scheduler_config and a message saying what is wrong. The
validation rules list every check.
Set defaults for new clusters
An organization can hold a default configuration that every new cluster starts with. It takes the same settings exceptslurmPartitions and gresConf, which describe one cluster’s hardware.
PUT replaces the whole default. The default applies only to clusters created after you set it. Existing
clusters keep their configuration.