diff --git a/build/etc/ansible/hosts b/build/etc/ansible/hosts index 0a260cc3..83f531c5 100644 --- a/build/etc/ansible/hosts +++ b/build/etc/ansible/hosts @@ -18,3 +18,10 @@ worker-02.cluster [amd-build] controller-02.cluster + +[slurm-primary] +worker-02.cluster + +[slurm-workers] +worker-01.cluster +worker-03.cluster diff --git a/build/etc/slurm-llnl/out.key b/build/etc/munge/munge.key similarity index 100% rename from build/etc/slurm-llnl/out.key rename to build/etc/munge/munge.key diff --git a/build/etc/slurm-llnl/slurm.conf b/build/etc/slurm-llnl/slurm.conf index 5416c4a4..ce205863 100644 --- a/build/etc/slurm-llnl/slurm.conf +++ b/build/etc/slurm-llnl/slurm.conf @@ -425,4 +425,4 @@ NodeName=worker-03 NodeAddr=100.91.208.123 CPUs=4 State=UNKNOWN # line where PartitionName is "DEFAULT" will replace or add to previous default # values and not a reinitialize the default values. -PartitionName=compute-cluster Nodes=worker-[02-03] Default=YES MaxTime=INFINITE State=UP +PartitionName=compute-cluster Nodes=worker-[01-03] Default=YES MaxTime=INFINITE State=UP diff --git a/build/playbooks/slurm/build.yml b/build/playbooks/slurm/build.yml index 1fb38c3b..afb3906b 100644 --- a/build/playbooks/slurm/build.yml +++ b/build/playbooks/slurm/build.yml @@ -1,6 +1,6 @@ --- - name: Build slurm cluster - hosts: arm-build + hosts: slurm-primary remote_user: pi tasks: - name: Install slurm @@ -10,13 +10,93 @@ name: 'slurm-wlm' state: latest update_cache: yes - - name: Start slurm + - name: Copy munge config become: yes become_method: sudo - command: | - systemctl enable munge - systemctl start munge - systemctl enable slurmd - systemctl start slurmd - systemctl enable slurmctld - systemctl start slurmctld + ansible.builtin.copy: + src: /home/blong14/Developer/git/compute-cluster/build/etc/munge/{{item}} + dest: /etc/munge/{{item}} + loop: + - munge.key + - name: Copy slurm config + become: yes + become_method: sudo + ansible.builtin.copy: + src: /home/blong14/Developer/git/compute-cluster/build/etc/slurm-llnl/{{item}} + dest: /etc/slurm/{{item}} + loop: + - cgroup.conf + - cgroup_allowed_devices_file.conf + - plugstack.conf + - slurm.conf + - name: Start munge + become: yes + become_method: sudo + ansible.builtin.systemd: + name: munge + state: started + enabled: true + - name: Start slurmd + become: yes + become_method: sudo + ansible.builtin.systemd: + name: slurmd + state: started + enabled: true + - name: Start slurmctld + become: yes + become_method: sudo + ansible.builtin.systemd: + name: slurmctld + state: started + enabled: true +- name: Build slurm workers + hosts: slurm-workers + remote_user: pi + tasks: + - name: Install slurm + become: yes + become_method: sudo + apt: + name: 'slurmd' + state: latest + update_cache: yes + - name: Install slurm-client + become: yes + become_method: sudo + apt: + name: 'slurm-client' + state: latest + update_cache: yes + - name: Copy munge config + become: yes + become_method: sudo + ansible.builtin.copy: + src: /home/blong14/Developer/git/compute-cluster/build/etc/munge/{{item}} + dest: /etc/munge/{{item}} + loop: + - munge.key + - name: Copy slurm config + become: yes + become_method: sudo + ansible.builtin.copy: + src: /home/blong14/Developer/git/compute-cluster/build/etc/slurm-llnl/{{item}} + dest: /etc/slurm/{{item}} + loop: + - cgroup.conf + - cgroup_allowed_devices_file.conf + - slurm.conf + - name: Start munge + become: yes + become_method: sudo + ansible.builtin.systemd: + name: munge + state: started + enabled: true + - name: Start slurmd + become: yes + become_method: sudo + ansible.builtin.systemd: + name: slurmd + state: started + enabled: true