Newer
Older
Chris Hines
committed
---
- name: see if /raid exists
stat:
path: /raid
register: raiddir
- name: Set /mnt/nvme as spankprivatetmpdir if present
file:
src: /mnt/nvme
dest: "{{ spankprivatetmpmount }}"
owner: root
group: root
mode: u=rwx,g=rx,o=rx
state: link
become: true
when: hostvars[inventory_hostname]['ansible_devices']['nvme0n1'] is defined
- name: Link /raid as spankprivatetmpdir if present
file:
src: /raid
dest: "{{ spankprivatetmpmount }}"
owner: root
group: root
mode: u=rwx,g=rx,o=rx
state: link
become: true
when: raiddir.stat.isdir is defined and raiddir.stat.isdir == True
- name: create spankprivatetmpdir as directory if there is not a fast drive present
file:
path: "{{ spankprivatetmpmount }}"
owner: root
group: root
mode: u=rwx,g=rx,o=rx
state: directory
become: true
when: hostvars[inventory_hostname]['ansible_devices']['nvme0n1'] is not defined and raiddir.stat.isdir is not defined
Chris Hines
committed
- name: create munge group
group: name=munge system=yes gid=498
Chris Hines
committed
become: true
Chris Hines
committed
- name: create munge user
user: name=munge group=munge system=yes createhome=no uid=498
Chris Hines
committed
become: true
Chris Hines
committed
- name: create slurm group
group: name=slurm system=yes gid=497
Chris Hines
committed
become: true
Chris Hines
committed
- name: create slurm user
user: name=slurm group=slurm system=yes createhome=no uid=497
Chris Hines
committed
become: true
Chris Hines
committed
Chris Hines
committed
- include: createSlurmDirectories.yml
Chris Hines
committed
- name: install deps
package:
state: present
name:
- perl
- perl-DBI
- openssl-devel
- gcc
- rpm-build
- wget
- openssl-devel
- readline-devel
- pam-devel
- perl-ExtUtils-MakeMaker
- bzip2-devel
- hwloc
- hwloc-devel
- lua
- lua-devel
Chris Hines
committed
become: true
Chris Hines
committed
when: ansible_os_family == "RedHat"
- name: install deps
state: present
name:
- gcc
- wget
- libssl-dev # downgrade needed for bionic see https://github.com/dun/munge/issues/54
- libpam0g-dev
- libbz2-dev
- make
- perl
- libdbi-perl
- lua5.2
- liblua5.2-dev
- hwloc
- libhwloc-dev
Chris Hines
committed
become: true
Chris Hines
committed
when: ansible_os_family == "Debian"
- include: installMungeFromSource.yml
- name: chown mungedir
file: path={{ munge_dir }} state=directory owner=munge recurse=yes
Chris Hines
committed
become: true
Chris Hines
committed
- name: make munge logdir
file: path={{ munge_dir }}/var/log/munge state=directory owner=munge mode=700
Chris Hines
committed
become: true
Chris Hines
committed
- name: install munge key
template: src=munge_key.j2 dest={{ munge_dir }}/etc/munge/munge.key owner=munge mode=600
Chris Hines
committed
become: true
Chris Hines
committed
Chris Hines
committed
- name: enable munge on boot
service: name=munge enabled=yes
Chris Hines
committed
become: true
Chris Hines
committed
Chris Hines
committed
- include: installSlurmFromSource.yml
Chris Hines
committed
- include: createSlurmDirectories.yml
Chris Hines
committed
- name: get cpu count
shell: 'lscpu | grep "On-line CPU" | cut -f 2 -d ":" | sed "s/\ *//g"'
register: cpucount
check_mode: no
Chris Hines
committed
changed_when: False
Chris Hines
committed
- name: make slurm prolog dir
file: path=/opt/slurm/etc state=directory mode=755
become: true
become_user: root
template: src=slurm.prolog.j2 dest=/opt/slurm/etc/slurm.prolog mode=755
Chris Hines
committed
become: true
template: src=slurm.epilog.j2 dest=/opt/slurm/etc/slurm.epilog mode=755
Chris Hines
committed
become: true
- name: install slurmctld prolog
file: src=files/slurmctld.prolog dest=/opt/slurm-latest/etc/slurmctld.prolog mode=755
become: true
when: inventory_hostname in groups.ManagementNodes
- name: setup envirnment variables
template: src=slurm_setup.sh.j2 dest=/etc/profile.d/slurm_setup.sh
Chris Hines
committed
become: true