Skip to content

Commit

Permalink
Merge pull request #9076 from schlad/slurm_configs_distribution
Browse files Browse the repository at this point in the history
HPC: use script_run for munge keys and slurm conf
  • Loading branch information
jlausuch committed Dec 4, 2019
2 parents 77b3bc9 + c18cca9 commit 26d97ea
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 6 deletions.
8 changes: 4 additions & 4 deletions lib/hpc/configs.pm
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,15 @@ sub prepare_slurm_conf {

if ($slurm_conf eq "basic") {
my $config = << "EOF";
sed -i "/^ControlMachine.*/c\\ControlMachine=$cluster_ctl_nodes[0]" /etc/slurm/slurm.conf
sed -i "/^SlurmctldHost.*/c\\SlurmctldHost=$cluster_ctl_nodes[0]" /etc/slurm/slurm.conf
sed -i "/^NodeName.*/c\\NodeName=$cluster_ctl_nodes,$cluster_compute_nodes Sockets=1 CoresPerSocket=1 ThreadsPerCore=1 State=unknown" /etc/slurm/slurm.conf
sed -i "/^PartitionName.*/c\\PartitionName=normal Nodes=$cluster_ctl_nodes,$cluster_compute_nodes Default=YES MaxTime=24:00:00 State=UP" /etc/slurm/slurm.conf
sed -i "/^SlurmctldDebug.*/c\\SlurmctldDebug=debug5" /etc/slurm/slurm.conf
EOF
assert_script_run($_) foreach (split /\n/, $config);
} elsif ($slurm_conf eq "accounting") {
my $config = << "EOF";
sed -i "/^ControlMachine.*/c\\ControlMachine=$cluster_ctl_nodes[0]" /etc/slurm/slurm.conf
sed -i "/^SlurmctldHost.*/c\\SlurmctldHost=$cluster_ctl_nodes[0]" /etc/slurm/slurm.conf
sed -i "/^NodeName.*/c\\NodeName=$cluster_ctl_nodes,$cluster_compute_nodes Sockets=1 CoresPerSocket=1 ThreadsPerCore=1 State=unknown" /etc/slurm/slurm.conf
sed -i "/^PartitionName.*/c\\PartitionName=normal Nodes=$cluster_ctl_nodes,$cluster_compute_nodes Default=YES MaxTime=24:00:00 State=UP" /etc/slurm/slurm.conf
sed -i "/^#JobAcctGatherType.*/c\\JobAcctGatherType=jobacct_gather/linux" /etc/slurm/slurm.conf
Expand All @@ -44,7 +44,7 @@ EOF
assert_script_run($_) foreach (split /\n/, $config);
} elsif ($slurm_conf eq "ha") {
my $config = << "EOF";
sed -i "/^ControlMachine.*/c\\ControlMachine=$cluster_ctl_nodes[0]" /etc/slurm/slurm.conf
sed -i "/^SlurmctldHost.*/c\\SlurmctldHost=$cluster_ctl_nodes[0]" /etc/slurm/slurm.conf
sed -i "/^#BackupController.*/c\\BackupController=$cluster_ctl_nodes[1]" /etc/slurm/slurm.conf
sed -i "/^StateSaveLocation.*/c\\StateSaveLocation=/shared/slurm/" /etc/slurm/slurm.conf
sed -i "/^NodeName.*/c\\NodeName=$cluster_ctl_nodes,$cluster_compute_nodes Sockets=1 CoresPerSocket=1 ThreadsPerCore=1 State=unknown" /etc/slurm/slurm.conf
Expand All @@ -56,7 +56,7 @@ EOF
assert_script_run($_) foreach (split /\n/, $config);
} elsif ($slurm_conf eq "nfs_db") {
my $config = << "EOF";
sed -i "/^ControlMachine.*/c\\ControlMachine=$cluster_ctl_nodes[0]" /etc/slurm/slurm.conf
sed -i "/^SlurmctldHost.*/c\\SlurmctldHost=$cluster_ctl_nodes[0]" /etc/slurm/slurm.conf
sed -i "/^#BackupController.*/c\\BackupController=$cluster_ctl_nodes[1]" /etc/slurm/slurm.conf
sed -i "/^StateSaveLocation.*/c\\StateSaveLocation=/shared/slurm/" /etc/slurm/slurm.conf
sed -i "/^NodeName.*/c\\NodeName=$cluster_ctl_nodes,$cluster_compute_nodes Sockets=1 CoresPerSocket=1 ThreadsPerCore=1 State=unknown" /etc/slurm/slurm.conf
Expand Down
4 changes: 2 additions & 2 deletions lib/hpcbase.pm
Original file line number Diff line number Diff line change
Expand Up @@ -85,15 +85,15 @@ sub distribute_munge_key {
my ($self) = @_;
my @cluster_nodes = cluster_names();
foreach (@cluster_nodes) {
exec_and_insert_password("scp -o StrictHostKeyChecking=no /etc/munge/munge.key root\@$_:/etc/munge/munge.key");
script_run("scp -o StrictHostKeyChecking=no /etc/munge/munge.key root\@$_:/etc/munge/munge.key");
}
}

sub distribute_slurm_conf {
my ($self) = @_;
my @cluster_nodes = cluster_names();
foreach (@cluster_nodes) {
exec_and_insert_password("scp -o StrictHostKeyChecking=no /etc/slurm/slurm.conf root\@$_:/etc/slurm/slurm.conf");
script_run("scp -o StrictHostKeyChecking=no /etc/slurm/slurm.conf root\@$_:/etc/slurm/slurm.conf");
}
}

Expand Down
1 change: 1 addition & 0 deletions tests/hpc/slurm_master.pm
Original file line number Diff line number Diff line change
Expand Up @@ -219,6 +219,7 @@ sub run {
my $nodes = get_required_var('CLUSTER_NODES');
my $slurm_conf = get_required_var('SLURM_CONF');
$self->prepare_user_and_group();
$self->generate_and_distribute_ssh();

# provision HPC cluster, so the proper rpms are installed,
# munge key is distributed to all nodes, so is slurm.conf
Expand Down

0 comments on commit 26d97ea

Please sign in to comment.