slurmd
Contents
slurmd#
The Slurm compute node.
Configurations#
To change a configuration for this charm, use the Juju command:
$ juju config slurmd configuration=value
custom-slurm-repo
#
Use a custom repository for Slurm installation.
This can be set to the Organization's local mirror/cache of packages and supersedes the Omnivector repositories. Alternatively, it can be used to track a testing
Slurm version, e.g. by setting to ppa:omnivector/osd-testing
(on Ubuntu), or https://omnivector-solutions.github.io/repo/centos7/stable/$basearch
(on CentOS).
Note
The configuration custom-slurm-repo
must be set before deploying the units. Changing this value after deploying the units will not reinstall Slurm.
type: string
default-value: empty
partition-name
#
Name by which the partition may be referenced (e.g. Interactive
).
Note
The partition name should only contain letters, numbers, and hyphens. Spaces are not allowed.
type: string
default-value:
None
partition-config
#
Extra partition configuration, specified as a space separated key=value
in a single line.
Example Usage:
$ juju config slurmd partition-config="DefaultTime=45:00 MaxTime=1:00:00"
type: string
default-value: empty
partition-state
#
State of partition or availability for use. Possible values are UP
, DOWN
, DRAIN
and INACTIVE
. The default value is UP
. See also the related Alternate
keyword.
type: string
default-value:
UP
nhc-conf
#
Custom extra configuration to use for Node Health Check.
These lines are appended to a basic nhc.conf
provided by the charm.
type: string
default-value: empty
Actions#
To run an action for this charm, use the Juju run-action
command:
$ juju run-action slurmd/leader action-name [parameters=value]
version
#
Return version of installed software.
node-configured
#
Remove a node from DownNodes when the reason is New node
.
get-node-inventory
#
Return node inventory.
set-node-inventory
#
Modify node inventory.
Parameters:
real-memory
: Total amount of memory of the node, in MB.type: integer
show-nhc-config
#
Display the currently used nhc.conf
.
get-infiniband-repo
#
Display the currently configured repository for Infiniband drivers.
set-infiniband-repo
#
Overrides the repository file with a custom repository for Infiniband installation.
Note
This file should be base64 encoded.
On CentOS, the file is placed at /etc/yum.repos.d/infiniband.repo
, while on Ubuntu it is at /etc/apt/sources.list.d/infiniband.list
.
Parameters:
repo
: Base64 encoded string that holds all information about the repository.type: string
install-infiniband
#
Install Mellanox Infiniband drivers. This might take a few minutes to complete.
If no custom repository was specified before, this action will set the Mellanox repository as the default and install the latest drivers from it.
uninstall-infiniband
#
Uninstall Mellanox Infiniband drivers.
start-infiniband
#
Start Infiniband systemd service.
enable-infiniband
#
Enable Infiniband systemd service.
stop-infiniband
#
Stop Infiniband systemd service.
is-active-infiniband
#
Check if Infiniband systemd service is active.
nvidia-repo
#
Get or set the repository used to install Nvidia drivers.
This value must be set before installing the drivers. Changing it afterwards has no impact on the system.
Note
The repository file must be base64 encoded when using this action.
Parameters:
repo
: If specified, set the repository to the value specified.type: string
nvidia-package
#
Get or set the Nvidia driver package name.
This value must be set before installing the drivers. Changing it afterwards has no impact on the system.
Parameters:
package
: If specified, set the package name to the value specifiedtype: string
nvidia-install
#
Install Nvidia GPU drivers. This might take a few minutes to complete.
If no custom repository was specified before, this action will set the Nvidia repository as the default and install the latest drivers from it.
singularity-install
#
Install Singularity. This might take a few minutes to complete.
This action will install singularity using the official .deb (Ubuntu) or .rpm (CentOS) packages retrieved from GitHub Releases.
Note
The .deb or .rpm files must be supplied as Juju resources.