Skip to content

Latest commit

 

History

History
3024 lines (1411 loc) · 58.8 KB

REFERENCE.md

File metadata and controls

3024 lines (1411 loc) · 58.8 KB

Reference

Table of Contents

Classes

Public Classes

Private Classes

  • slurm::client
  • slurm::common::config
  • slurm::common::install
  • slurm::common::install::apt
  • slurm::common::install::rpm
  • slurm::common::install::source
  • slurm::common::munge
  • slurm::common::setup
  • slurm::common::user
  • slurm::params
  • slurm::resources: Manage SLURM resources using Puppet types
  • slurm::slurmctld
  • slurm::slurmctld::config
  • slurm::slurmctld::service
  • slurm::slurmd
  • slurm::slurmd::config
  • slurm::slurmd::service
  • slurm::slurmdbd
  • slurm::slurmdbd::config
  • slurm::slurmdbd::db
  • slurm::slurmdbd::service
  • slurm::slurmrestd
  • slurm::slurmrestd::service

Defined types

Data types

Tasks

Classes

slurm

Roles

Parameters

The following parameters are available in the slurm class:

slurmd

Data type: Boolean

Default value: false

slurmctld

Data type: Boolean

Default value: false

slurmdbd

Data type: Boolean

Default value: false

database

Data type: Boolean

Default value: false

client

Data type: Boolean

Default value: true

slurmrestd

Data type: Boolean

Default value: false

repo_baseurl

Data type: Optional[Variant[Stdlib::HTTPSUrl, Stdlib::HTTPUrl, Pattern[/^file:\/\//]]]

Default value: undef

install_method

Data type: Optional[Enum['package','source','none']]

Default value: undef

install_prefix

Data type: Stdlib::Absolutepath

Default value: '/usr'

package_ensure

Data type: String

Default value: 'present'

install_torque_wrapper

Data type: Boolean

Default value: false

install_pam

Data type: Boolean

Default value: true

version

Data type: String

Default value: '23.11.5'

source_dependencies

Data type: Array

Default value: []

configure_flags

Data type: Array

Default value: []

source_install_manage_alternatives

Data type: Boolean

Default value: true

slurmd_service_ensure

Data type: Enum['running','stopped']

Default value: 'running'

slurmd_service_enable

Data type: Boolean

Default value: true

slurmd_service_limits

Data type: Hash

Default value: {}

slurmd_options

Data type: Optional[String[1]]

Default value: undef

slurmctld_service_ensure

Data type: Enum['running','stopped']

Default value: 'running'

slurmctld_service_enable

Data type: Boolean

Default value: true

slurmctld_service_limits

Data type: Hash

Default value: {}

slurmctld_options

Data type: Optional[String[1]]

Default value: undef

slurmdbd_service_ensure

Data type: Enum['running','stopped']

Default value: 'running'

slurmdbd_service_enable

Data type: Boolean

Default value: true

slurmdbd_service_limits

Data type: Hash

Default value: {}

slurmdbd_options

Data type: Optional[String[1]]

Default value: undef

slurmctld_restart_on_failure

Data type: Boolean

Default value: true

slurmdbd_restart_on_failure

Data type: Boolean

Default value: true

reload_services

Data type: Boolean

Default value: false

restart_services

Data type: Boolean

Default value: true

slurmctld_conn_validator_timeout

Data type: Integer

Default value: 60

reconfig_ignore_errors

Data type: Boolean

Default value: false

manage_slurm_user

Data type: Boolean

Default value: true

slurm_user_group

Data type: String[1]

Default value: 'slurm'

slurm_group_gid

Data type: Optional[Integer]

Default value: undef

slurm_user

Data type: String[1]

Default value: 'slurm'

slurm_user_uid

Data type: Optional[Integer]

Default value: undef

slurm_user_comment

Data type: String[1]

Default value: 'SLURM User'

slurm_user_home

Data type: Stdlib::Absolutepath

Default value: '/var/lib/slurm'

slurm_user_managehome

Data type: Boolean

Default value: true

slurm_user_shell

Data type: Stdlib::Absolutepath

Default value: '/sbin/nologin'

slurmd_user

Data type: String[1]

Default value: 'root'

slurmd_user_group

Data type: String[1]

Default value: 'root'

manage_munge

Data type: Boolean

Default value: false

munge_key_source

Data type: Optional[String]

Default value: undef

munge_key_content

Data type: Optional[String]

Default value: undef

manage_slurm_conf

Data type: Boolean

Default value: true

manage_scripts

Data type: Boolean

Default value: true

manage_firewall

Data type: Boolean

Default value: true

use_syslog

Data type: Boolean

Default value: false

manage_logrotate

Data type: Boolean

Default value: true

logrotate_syslog_pid_path

Data type: Stdlib::Absolutepath

Default value: '/var/run/syslogd.pid'

manage_rsyslog

Data type: Boolean

Default value: true

manage_database

Data type: Boolean

Default value: true

export_database

Data type: Boolean

Default value: false

export_database_tag

Data type: Optional[String[1]]

Default value: $facts['networking']['domain']

cli_filter_lua_source

Data type: Optional[String[1]]

Default value: undef

cli_filter_lua_content

Data type: Optional[String[1]]

Default value: undef

scrun_lua_source

Data type: Optional[String[1]]

Default value: undef

scrun_lua_content

Data type: Optional[String[1]]

Default value: undef

state_dir_nfs_device

Data type: Optional[String[1]]

Default value: undef

state_dir_nfs_options

Data type: String[1]

Default value: 'rw,sync,noexec,nolock,auto'

job_submit_lua_source

Data type: Optional[String[1]]

Default value: undef

job_submit_lua_content

Data type: Optional[String[1]]

Default value: undef

cluster_name

Data type: String[1]

Default value: 'linux'

slurmctld_host

Data type: Variant[Array, String]

Default value: 'slurm'

slurmdbd_host

Data type: Stdlib::Host

Default value: 'slurmdbd'

conf_dir

Data type: Stdlib::Absolutepath

Default value: '/etc/slurm'

log_dir

Data type: Stdlib::Absolutepath

Default value: '/var/log/slurm'

env_dir

Data type: Stdlib::Absolutepath

Default value: '/etc/sysconfig'

spank_plugins

Data type: Hash

Default value: {}

enable_configless

Data type: Boolean

Default value: false

configless

Data type: Boolean

Default value: false

conf_server

Data type: Optional[String]

Default value: undef

slurm_conf_override

Data type: Hash

Default value: {}

slurm_conf_template

Data type: String[1]

Default value: 'slurm/slurm.conf/slurm.conf.erb'

slurm_conf_source

Data type: Optional[String[1]]

Default value: undef

partition_template

Data type: String[1]

Default value: 'slurm/slurm.conf/conf_values.erb'

partition_source

Data type: Optional[String[1]]

Default value: undef

node_template

Data type: String[1]

Default value: 'slurm/slurm.conf/conf_values.erb'

node_source

Data type: Optional[String[1]]

Default value: undef

switch_template

Data type: String[1]

Default value: 'slurm/slurm.conf/conf_values.erb'

topology_source

Data type: Optional[String[1]]

Default value: undef

gres_template

Data type: String[1]

Default value: 'slurm/slurm.conf/conf_values.erb'

gres_source

Data type: Optional[String[1]]

Default value: undef

partitions

Data type: Hash

Default value: {}

nodes

Data type: Hash

Default value: {}

nodesets

Data type: Hash

Default value: {}

switches

Data type: Hash

Default value: {}

greses

Data type: Hash

Default value: {}

job_containers

Data type: Hash

Default value: {}

slurmd_log_file

Data type: Optional[Stdlib::Absolutepath]

Default value: undef

slurmd_spool_dir

Data type: Stdlib::Absolutepath

Default value: '/var/spool/slurmd'

slurmctld_log_file

Data type: Optional[Stdlib::Absolutepath]

Default value: undef

state_save_location

Data type: Stdlib::Absolutepath

Default value: '/var/spool/slurmctld.state'

slurmdbd_archive_dir

Data type: Stdlib::Absolutepath

Default value: '/var/lib/slurmdbd.archive'

slurmdbd_log_file

Data type: Optional[Stdlib::Absolutepath]

Default value: undef

slurmdbd_storage_host

Data type: Stdlib::Host

Default value: 'localhost'

slurmdbd_storage_loc

Data type: String[1]

Default value: 'slurm_acct_db'

slurmdbd_storage_pass

Data type: String[1]

Default value: 'slurmdbd'

slurmdbd_storage_port

Data type: Variant[Stdlib::Port, String[0,0]]

Default value: 3306

slurmdbd_storage_type

Data type: String[1]

Default value: 'accounting_storage/mysql'

slurmdbd_storage_user

Data type: String[1]

Default value: 'slurmdbd'

slurmdbd_db_charset

Data type: String[1]

Default value: 'utf8'

slurmdbd_db_collate

Data type: String[1]

Default value: 'utf8_general_ci'

slurmdbd_conf_override

Data type: Hash

Default value: {}

slurmdbd_archive_dir_nfs_device

Data type: Optional[String[1]]

Default value: undef

slurmdbd_archive_dir_nfs_options

Data type: String[1]

Default value: 'rw,sync,noexec,nolock,auto'

use_nhc

Data type: Boolean

Default value: false

include_nhc

Data type: Boolean

Default value: false

health_check_program

Data type: Optional[Stdlib::Absolutepath]

Default value: undef

health_check_program_source

Data type: Optional[String[1]]

Default value: undef

manage_epilog

Data type: Boolean

Default value: true

epilog

Data type: Optional[String[1]]

Default value: undef

epilog_source

Data type: Optional[Variant[String[1], Array[String[1]]]]

Default value: undef

epilog_sourceselect

Data type: Optional[String[1]]

Default value: undef

manage_prolog

Data type: Boolean

Default value: true

prolog

Data type: Optional[String[1]]

Default value: undef

prolog_source

Data type: Optional[Variant[String[1], Array[String[1]]]]

Default value: undef

prolog_sourceselect

Data type: Optional[String[1]]

Default value: undef

manage_task_epilog

Data type: Boolean

Default value: true

task_epilog

Data type: Optional[String[1]]

Default value: undef

task_epilog_source

Data type: Optional[Variant[String[1], Array[String[1]]]]

Default value: undef

manage_task_prolog

Data type: Boolean

Default value: true

task_prolog

Data type: Optional[String[1]]

Default value: undef

task_prolog_source

Data type: Optional[Variant[String[1], Array[String[1]]]]

Default value: undef

auth_alt_types

Data type: Array

Default value: []

jwt_key_content

Data type: Optional[String]

Default value: undef

jwt_key_source

Data type: Optional[String]

Default value: undef

slurmrestd_listen_address

Data type: String

Default value: $facts['networking']['ip']

slurmrestd_disable_token_creation

Data type: Boolean

Default value: false

slurmrestd_user

Data type: String

Default value: 'daemon'

slurmrestd_user_group

Data type: String

Default value: 'daemon'

slurmrestd_service_ensure

Data type: Enum['running','stopped']

Default value: 'running'

slurmrestd_service_enable

Data type: Boolean

Default value: true

slurmrestd_service_limits

Data type: Hash

Default value: {}

slurmrestd_options

Data type: Optional[String[1]]

Default value: undef

slurmrestd_restart_on_failure

Data type: Boolean

Default value: true

cgroup_conf_template

Data type: String

Default value: 'slurm/cgroup/cgroup.conf.erb'

cgroup_conf_source

Data type: Optional[String]

Default value: undef

cgroup_mountpoint

Data type: Stdlib::Absolutepath

Default value: '/sys/fs/cgroup'

cgroup_plugin

Data type: String

Default value: 'autodetect'

cgroup_allowed_ram_space

Data type: Integer

Default value: 100

cgroup_allowed_swap_space

Data type: Integer

Default value: 0

cgroup_constrain_cores

Data type: Boolean

Default value: false

cgroup_constrain_devices

Data type: Boolean

Default value: false

cgroup_constrain_ram_space

Data type: Boolean

Default value: false

cgroup_constrain_swap_space

Data type: Boolean

Default value: false

cgroup_max_ram_percent

Data type: Integer

Default value: 100

cgroup_max_swap_percent

Data type: Integer

Default value: 100

cgroup_memory_swappiness

Data type: Optional[Integer[0,100]]

Default value: undef

cgroup_min_ram_space

Data type: Integer

Default value: 30

cgroup_signal_child_processes

Data type: Optional[Boolean]

Default value: undef

oci_conf_template

Data type: String

Default value: 'slurm/oci.conf.erb'

oci_conf_source

Data type: Optional[String]

Default value: undef

oci_container_path

Data type: Optional[String[1]]

Default value: undef

oci_create_env_file

Data type: String[1]

Default value: 'disabled'

oci_debug_flags

Data type: Optional[String[1]]

Default value: undef

oci_disable_cleanup

Data type: Boolean

Default value: false

oci_disable_hooks

Data type: Optional[String[1]]

Default value: undef

oci_env_exclude

Data type: Optional[String[1]]

Default value: undef

oci_mount_spool_dir

Data type: Stdlib::Absolutepath

Default value: '/var/run/slurm/'

oci_run_time_env_exclude

Data type: Optional[String[1]]

Default value: undef

oci_file_debug

Data type: Optional[String[1]]

Default value: undef

oci_ignore_file_config_json

Data type: Boolean

Default value: false

oci_run_time_create

Data type: Optional[String[1]]

Default value: undef

oci_run_time_delete

Data type: Optional[String[1]]

Default value: undef

oci_run_time_kill

Data type: Optional[String[1]]

Default value: undef

oci_run_time_query

Data type: Optional[String[1]]

Default value: undef

oci_run_time_run

Data type: Optional[String[1]]

Default value: undef

oci_run_time_start

Data type: Optional[String[1]]

Default value: undef

oci_srun_path

Data type: Optional[Stdlib::Absolutepath]

Default value: undef

oci_srun_args

Data type: Optional[String[1]]

Default value: undef

oci_std_io_debug

Data type: Optional[String[1]]

Default value: undef

oci_syslog_debug

Data type: Optional[String[1]]

Default value: undef

slurm_sh_template

Data type: String[1]

Default value: 'slurm/profile.d/slurm.sh.erb'

slurm_csh_template

Data type: String[1]

Default value: 'slurm/profile.d/slurm.csh.erb'

profile_d_env_vars

Data type: Hash

Default value: {}

slurmd_port

Data type: Stdlib::Port

Default value: 6818

slurmctld_port

Data type: Stdlib::Port

Default value: 6817

slurmdbd_port

Data type: Stdlib::Port

Default value: 6819

slurmrestd_port

Data type: Stdlib::Port

Default value: 6820

tuning_net_core_somaxconn

Data type: Variant[Boolean, Integer]

Default value: 1024

include_resources

Data type: Boolean

Default value: false

clusters

Data type: Hash

Default value: {}

qoses

Data type: Hash

Default value: {}

reservations

Data type: Hash

Default value: {}

accounts

Data type: Hash

Default value: {}

users

Data type: Hash

Default value: {}

licenses

Data type: Hash

Default value: {}

purge_qos

Data type: Boolean

Default value: false

slurmdbd_conn_validator_timeout

Data type: Integer

Default value: 30

Defined types

slurm::conf

Manage Slurm main configuration

Examples

Create /etc/slurm/slurm-ascend.conf
include slurm
$cluster_conf = {
  'ClusterName'   => 'ascend',
  'SlurmctldHost' => 'ascend-slurm01.example.com',
}
slurm::conf { 'ascend':
  configs => $slurm::slurm_conf + $cluster_conf,
}

Parameters

The following parameters are available in the slurm::conf defined type:

configs

Data type: Hash

Hash of Slurm configs

Default value: {}

template

Data type: Optional[String]

Template to use to generate slurm.conf contents

Default value: undef

source

Data type: Optional[String]

Source of configuration instead of templated configs

Default value: undef

config_name

Data type: String

Name of configuration file

Default value: "slurm-${name}.conf"

slurm::down_node

Manage SLURM down node configuration

Parameters

The following parameters are available in the slurm::down_node defined type:

down_nodes

Data type: String

Default value: $name

reason

Data type: Optional[String]

Default value: undef

state

Data type: Slurm::DownNodeState

Default value: 'UNKNOWN'

target

Data type: String

Default value: 'slurm.conf'

order

Data type: Variant[String[1], Integer]

Default value: '75'

slurm::gres

Manage SLURM GRES configuration

Examples

Add static GPU GRES
slurm::gres { 'gpu':
  type  => 'v100',
  file  => '/dev/nvidia0',
  cores => '0,1',
}
Add nvml AutoDetect gres
slurm::gres { 'nvml':
  auto_detect => 'nvml',
}

Parameters

The following parameters are available in the slurm::gres defined type:

gres_name

Data type: String[1]

Default value: $name

type

Data type: Optional[String[1]]

Default value: undef

node_name

Data type: Optional[Variant[String[1], Array[String[1]]]]

Default value: undef

auto_detect

Data type: Optional[Enum['nvml','rsmi','oneapi','off']]

Default value: undef

count

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

cores

Data type: Optional[Variant[String[1], Integer, Array[Variant[String[1],Integer]]]]

Default value: undef

file

Data type: Optional[Stdlib::Absolutepath]

Default value: undef

flags

Data type: Optional[Enum['CountOnly']]

Default value: undef

links

Data type: Optional[Variant[Integer, Array[Integer]]]

Default value: undef

order

Data type: Variant[String[1], Integer]

Default value: '50'

slurm::job_container

Manage SLURM job_container.conf entry

Parameters

The following parameters are available in the slurm::job_container defined type:

base_path

Data type: Stdlib::Absolutepath

job_container.conf BasePath

auto_base_path

Data type: Boolean

job_container.conf AutoBasePath

Default value: false

dirs

Data type: Optional[Array[Stdlib::Absolutepath]]

job_container.conf Dirs

Default value: undef

init_script

Data type: Optional[Stdlib::Absolutepath]

job_container.conf InitScript

Default value: undef

node_name

Data type: Optional[String]

job_container.conf NodeName

Default value: undef

shared

Data type: Optional[Boolean]

job_container.conf Shared

Default value: undef

order

Data type: Variant[String[1], Integer]

Order in job_container.conf

Default value: '50'

slurm::node

Manage SLURM node configuration

Parameters

The following parameters are available in the slurm::node defined type:

node_name

Data type: String[1]

Default value: $name

node_hostname

Data type: Optional[Stdlib::Host]

Default value: undef

node_addr

Data type: Optional[Stdlib::IP::Address]

Default value: undef

bcast_addr

Data type: Optional[Stdlib::IP::Address]

Default value: undef

boards

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

core_spec_count

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

cores_per_socket

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

cpu_bind

Data type: Optional[Slurm::CPUBind]

Default value: undef

cpus

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

cpu_spec_list

Data type: Optional[Variant[String[1], Array[String[1]]]]

Default value: undef

features

Data type: Optional[Variant[String[1], Array[String[1]]]]

Default value: undef

gres

Data type: Optional[Variant[String[1], Array[String[1]]]]

Default value: undef

mem_spec_limit

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

port

Data type: Optional[Stdlib::Port]

Default value: undef

real_memory

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

reason

Data type: Optional[String[1]]

Default value: undef

sockets

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

sockets_per_board

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

state

Data type: Slurm::NodeState

Default value: 'UNKNOWN'

threads_per_core

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

tmp_disk

Data type: Optional[Integer]

Default value: undef

weight

Data type: Optional[Integer]

Default value: undef

target

Data type: String[1]

Default value: 'slurm.conf'

order

Data type: Variant[String[1], Integer]

Default value: '90'

slurm::nodeset

Manage SLURM nodeset configuration

Parameters

The following parameters are available in the slurm::nodeset defined type:

feature

Data type: Optional[String]

Default value: undef

nodes

Data type: Optional[String]

Default value: undef

node_set

Data type: String

Default value: $name

target

Data type: String[1]

Default value: 'slurm.conf'

order

Data type: Variant[String[1], Integer]

Default value: '40'

slurm::partition

Manage a SLURM partition configuration

Parameters

The following parameters are available in the slurm::partition defined type:

partition_name

Data type: String[1]

Default value: $name

alloc_nodes

Data type: Optional[Variant[String[1], Array[String[1]]]]

Default value: undef

allow_accounts

Data type: Optional[Variant[String[1], Array[String[1]]]]

Default value: undef

allow_groups

Data type: Optional[Variant[String[1], Array[String[1]]]]

Default value: undef

allow_qos

Data type: Optional[Variant[String[1], Array[String[1]]]]

Default value: undef

alternate

Data type: Optional[String[1]]

Default value: undef

cpu_bind

Data type: Optional[Slurm::CPUBind]

Default value: undef

default

Data type: Optional[Slurm::YesNo]

Default value: undef

def_cpu_per_gpu

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

def_mem_per_cpu

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

def_mem_per_gpu

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

def_mem_per_node

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

deny_accounts

Data type: Optional[Variant[String[1], Array[String[1]]]]

Default value: undef

deny_qos

Data type: Optional[Variant[String[1], Array[String[1]]]]

Default value: undef

default_time

Data type: Optional[String[1]]

Default value: undef

disable_root_jobs

Data type: Optional[Slurm::YesNo]

Default value: undef

exclusive_user

Data type: Optional[Slurm::YesNo]

Default value: undef

grace_time

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

hidden

Data type: Optional[Slurm::YesNo]

Default value: undef

lln

Data type: Optional[Slurm::YesNo]

Default value: undef

max_cpus_per_node

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

max_mem_per_cpu

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

max_mem_per_node

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

max_nodes

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

max_time

Data type: Optional[String[1]]

Default value: undef

min_nodes

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

nodes

Data type: Optional[Variant[String[1], Array[String[1]]]]

Default value: undef

over_subscribe

Data type: Optional[Enum['EXCLUSIVE','FORCE','YES','NO']]

Default value: undef

over_time_limit

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

preempt_mode

Data type: Optional[Slurm::PreemptMode]

Default value: undef

priority_job_factor

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

priority_tier

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

qos

Data type: Optional[String[1]]

Default value: undef

req_resv

Data type: Optional[Slurm::YesNo]

Default value: undef

resume_timeout

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

root_only

Data type: Optional[Slurm::YesNo]

Default value: undef

select_type_parameters

Data type: Optional[Slurm::SelectTypeParameters]

Default value: undef

shared

Data type: Optional[Enum['EXCLUSIVE','FORCE','YES','NO']]

Default value: undef

state

Data type: Slurm::PartitionState

Default value: 'UP'

suspend_time

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

suspend_timeout

Data type: Optional[Variant[String[1], Integer]]

Default value: undef

tres_billing_weights

Data type: Optional[Variant[String[1], Array[String[1]]]]

Default value: undef

target

Data type: String[1]

Default value: 'slurm.conf'

order

Data type: Variant[String[1], Integer]

Default value: '50'

slurm::spank

Manage SLURM SPANK plugin

Parameters

The following parameters are available in the slurm::spank defined type:

ensure

Data type: Enum['present','absent']

Ensure state of SPANK plugin

Default value: 'present'

plugin

Data type: String

The shared library

Default value: "${name}.so"

arguments

Data type: Optional[Variant[Hash, Array, String]]

Arguments for the plugin

Default value: undef

required

Data type: Boolean

Is this plugin required?

Default value: false

manage_package

Data type: Boolean

Manage plugin package?

Default value: true

package_name

Data type: String

Plugin package name

Default value: "slurm-spank-${name}"

package_ensure

Data type: String

Plugin package ensure value

Default value: 'installed'

order

Data type: Variant[String[1], Integer]

Order in plugstack.conf

Default value: '50'

slurm::switch

Add switch to topology.conf

Examples

slurm::switch { 'switch1':
  switches => 'switch[2-3],
}
slurm::switch { 'switch2':
  nodes => 'c0[1-2]',
}

Parameters

The following parameters are available in the slurm::switch defined type:

switch_name

Data type: String[1]

= $name, SwitchName value, see man page for topology.conf

Default value: $name

switches

Data type: Optional[String[1]]

= undef, Switches value, see man page for topology.conf

Default value: undef

nodes

Data type: Optional[String[1]]

= undef, Nodes value, see man page for topology.conf

Default value: undef

link_speed

Data type: Optional[String[1]]

= undef, LinkSpeed value, see man page for topology.conf

Default value: undef

order

Data type: Variant[String[1], Integer]

= '50', Order inside topology.conf

Default value: '50'

Data types

Slurm::CPUBind

Type for CPU bind settings

Alias of Enum['none', 'socket', 'ldom', 'core', 'thread', 'UNSET']

Slurm::DownNodeState

The Slurm::DownNodeState data type.

Alias of Enum['DOWN', 'DRAIN', 'FAIL', 'FAILING', 'UNKNOWN']

Slurm::NodeState

The Slurm::NodeState data type.

Alias of Variant[Enum['CLOUD','FUTURE'], Slurm::DownNodeState]

Slurm::PartitionState

The Slurm::PartitionState data type.

Alias of Enum['UP', 'DOWN', 'DRAIN', 'INACTIVE']

Slurm::PreemptMode

The Slurm::PreemptMode data type.

Alias of Enum['OFF', 'CANCEL', 'CHECKPOINT', 'GANG', 'REQUEUE', 'SUSPEND']

Slurm::SelectTypeParameters

The Slurm::SelectTypeParameters data type.

Alias of Enum['CR_Core', 'CR_Core_Memory', 'CR_Socket', 'CR_Socket_Memory']

Slurm::YesNo

The Slurm::YesNo data type.

Alias of Enum['YES', 'NO', 'UNSET']

Tasks

reconfig

Execute 'scontrol reconfig'

Supports noop? false

Parameters

scontrol

Data type: String[1]

Path to scontrol (default: 'scontrol', searches $PATH)