1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
# ClusterShell groups config cluster.yaml.example
#
# Example of YAML groups config file with multiple sources.
# ^^^^^^^
# Here you can describe your cluster nodes and equipment using several
# group sources.
#
# Example of group source use-cases are:
# - functional info (compute, storage, service nodes, etc.)
# - location (room, rack position, etc.)
# - physical attributes (cpu type, gpu types, memory size, etc.)
# - vendors and hardware models, useful info for firmware update
# - infrastructure (pdu, network and interco switches)
# - ownership of nodes and partitions...
#
# File will be auto-loaded if renamed to .yaml
#
# Break and adapt to fit your own needs. Use nodeset CLI to test config.
# Group source roles:
# define groups @roles:adm, @roles:io, etc.
roles:
adm: 'example0'
io: '@racks:rack2,example2'
compute: '@racks:rack[3-4]'
gpu: '@racks:rack4'
# the 'all' special group is only needed if we don't want all nodes from
# this group source included, here we don't want example0 for clush -a
all: '@io,@compute'
# Group source racks:
# define groups @racks:rack[1-4], @racks:old and @racks:new
racks:
rack1: 'example[0,2]'
rack2: 'example[4-5]'
rack3: 'example[32-159]'
rack4: 'example[156-159]'
# groups from same source may be referenced without the "source:" prefix
# and yes, ranges work for groups too!
old: '@rack[1,3]'
new: '@rack[2,4]'
# YAML lists
rack5:
- 'example[200-205]' # some comment about example[200-205]
- 'example245'
- 'example300,example[401-406]'
# Group source cpu:
# define groups @cpu:ivy, @cpu:hsw and @cpu:all
cpu:
ivy: 'example[32-63]'
# groups from other sources must be prefixed with "source:"
hsw: '@roles:compute!@ivy'
|