Closed sjpb closed 2 years ago
Note test13 for openhpc_config
was not actually getting run, and verification for it needed fixing. Done in this PR as we also need openhpc_config
for autoscaling.
centos:8.2.2004, test4 failed in CI but worked ok on local molecule. Rerunning ...
Passed on 2nd attempt, ready for re-review @jovial.
Passed tests on 2nd attempt
@jovial can you rereview please? Think this is ready to go.
Most of the autoscaling setup can be done either before running runtime.yml, or using the openhpc_config variable to pass in additional slurm.conf parameters.
This PR adds an option
extra_nodes
to the group/partition definitions in openhpc_partitions to allow additional nodes definitions to be added into the slurm.conf node/partition definitions. As well as autoscaling/state=CLOUD nodes these could actually be used to add non-role-controlled normal nodes into a cluster using this role.It also modifies the docs, as I realised they were a bit messy/confusing in places.
There are some subtleties which needed changes to the slurm.conf templating:
NodeName=DEFAULT
approach can't be used as we don't want cpu information to "fall through" to subsequent partitions which might not define all the current threads_per_core etc variables. I found existing code to group nodenames, so it uses that instead (renamed to avoid total confusion) to keep node definitions concise. As a bonus this will make the config MUCH shorter in the usual case of sequential nodenames, which will help slurmctld performance and startup time for large clusters.