- Description
- Setup - The basics of getting started with clustershell
- Usage - Configuration options and additional functionality
- Reference - Module reference
This module will manage ClusterShell
This module will install the clustershell packages and manage the clustershell configs.
For systems with yum
package manager there is a dependency on puppetlabs/yumrepo_core.
If genders support is enabled there is a soft dependency on treydock/genders
Install clustershell and define groups in local.cfg:
class { '::clustershell':
groupmembers => {
compute => {
group => 'compute',
member => 'node[00-99]',
}
login => {
group => 'login',
member => 'login[01-02]',
}
},
}
The equivalent in hiera would be:
clustershell::groupmembers:
compute:
group: 'compute'
member: 'node[00-99]'
login:
group: 'login'
member: 'login[01-02]'
Enable SLURM groups and make them the default:
class { '::clustershell':
default_group_source => 'slurm',
include_slurm_groups => true,
}
Enable genders groups and make them the default:
class { '::clustershell':
default_group_source => 'genders',
include_genders_groups => true,
}
Define groups via YAML group files:
class { '::clustershell':
group_yaml => {
'cluster' => {
'data' => {
'local' => {
'compute' => 'node[00-99]',
'login' => 'login[01-02]',
}
}
}
}
}
Defining group YAML files via defined type:
::clustershell::group_yaml { 'cluster':
data => {
'local' => {
'compute' => 'node[00-99]',
'login' => 'login[01-02]',
}
}
}
Can also supply custom templates to clustershell::group_yaml
::clustershell::group_yaml { 'cluster':
content => template('profile/clustershell/cluster.yaml.erb'),
}
Example of defining custom group source:
::clustershell::group_source { 'batch':
ensure => 'present',
section => 'job,moabrsv',
map => 'clustershell-batch-mapper.py $SOURCE map $GROUP',
list => 'clustershell-batch-mapper.py $SOURCE list',
}