Buncha updates for Jetstream
This commit is contained in:
commit
139b890e77
|
@ -0,0 +1,18 @@
|
|||
---
|
||||
|
||||
# FIXME: these are all broken (they need to be run only when a particular
|
||||
# service is enabled on that host
|
||||
#- name: reload slurmd
|
||||
# service:
|
||||
# name: "{{ slurmd_service_name }}"
|
||||
# state: reloaded
|
||||
#
|
||||
#- name: reload slurmctld
|
||||
# service:
|
||||
# name: "{{ slurmctld_service_name }}"
|
||||
# state: reloaded
|
||||
#
|
||||
#- name: reload slurmdbd
|
||||
# service:
|
||||
# name: "{{ slurmdbd_service_name }}"
|
||||
# state: reloaded
|
|
@ -0,0 +1,14 @@
|
|||
---
|
||||
|
||||
- name: Install virtualenv (yum)
|
||||
yum:
|
||||
pkg: python-virtualenv
|
||||
when: ansible_os_family == "RedHat"
|
||||
|
||||
- name: Create virtualenv for elastic components
|
||||
pip:
|
||||
name: "{{ item }}"
|
||||
virtualenv: "/opt/slurm_cloud_provision"
|
||||
with_items:
|
||||
- shade
|
||||
- ansible
|
|
@ -0,0 +1,155 @@
|
|||
---
|
||||
|
||||
- name: Include OS vars
|
||||
include_vars: "{{ ansible_os_family | lower }}.yml"
|
||||
|
||||
- name: Install Slurm (apt)
|
||||
apt:
|
||||
pkg: slurm-llnl
|
||||
when: ansible_os_family == "Debian"
|
||||
|
||||
- name: Configure slurm yum repository
|
||||
action:
|
||||
module: yum_repository
|
||||
args:
|
||||
baseurl: "{{ slurm_yum_repo_baseurl }}"
|
||||
description: "Galaxy Slurm repo"
|
||||
name: galaxy_slurm
|
||||
gpgcheck: 0
|
||||
when: ansible_os_family == "RedHat" and slurm_yum_repo_baseurl is defined
|
||||
|
||||
- name: Install Slurm (yum)
|
||||
yum:
|
||||
name: "{{ item }}"
|
||||
with_items:
|
||||
- munge
|
||||
- munge-libs
|
||||
- slurm-plugins
|
||||
- slurm
|
||||
- slurm-devel
|
||||
- slurm-munge
|
||||
- slurm-pam_slurm
|
||||
#- slurm-perlapi
|
||||
- slurm-sjobexit
|
||||
- slurm-sjstat
|
||||
- slurm-slurmdb-direct
|
||||
- slurm-slurmdbd
|
||||
#- slurm-sql
|
||||
#- slurm-torque
|
||||
when: ansible_os_family == "RedHat"
|
||||
|
||||
- name: Install slurm.conf
|
||||
template:
|
||||
src: "{{ slurm_conf_src | default( 'files/slurm/slurm.conf' ) }}"
|
||||
dest: "{{ slurm_conf_dir }}/slurm.conf"
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0444
|
||||
notify:
|
||||
- reload slurmd
|
||||
# FIXME: notify only for slurm controllers...
|
||||
#- reload slurmctld
|
||||
|
||||
- name: Install slurmdbd.conf
|
||||
template:
|
||||
src: slurmdbd.conf.j2
|
||||
dest: "{{ slurm_conf_dir }}/slurmdbd.conf"
|
||||
owner: slurm
|
||||
group: root
|
||||
mode: 0400
|
||||
notify:
|
||||
- reload slurmdbd
|
||||
when: "'slurmdbdservers' in group_names"
|
||||
|
||||
- name: Create slurm spool directory
|
||||
file:
|
||||
path: "{{ slurmd_spool_dir }}"
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0755
|
||||
state: directory
|
||||
notify:
|
||||
- reload slurmd
|
||||
|
||||
- name: Create slurm state directory
|
||||
file:
|
||||
path: "{{ slurmctld_state_dir }}"
|
||||
owner: slurm
|
||||
group: slurm
|
||||
mode: 0700
|
||||
state: directory
|
||||
when: "'slurmservers' in group_names"
|
||||
notify:
|
||||
- reload slurmctld
|
||||
|
||||
- name: Create slurm log directory
|
||||
file:
|
||||
path: "/var/log/{{ slurm_log_dir_name }}"
|
||||
owner: slurm
|
||||
group: slurm
|
||||
mode: 0755
|
||||
state: directory
|
||||
when: "'slurmservers' in group_names"
|
||||
|
||||
- name: Check munge dir
|
||||
file:
|
||||
path: /etc/munge
|
||||
owner: munge
|
||||
group: munge
|
||||
mode: 0700
|
||||
state: directory
|
||||
|
||||
- name: Install munge key
|
||||
action:
|
||||
module: decode
|
||||
args:
|
||||
content: "{{ munge_key }}"
|
||||
dest: /etc/munge/munge.key
|
||||
filter: base64
|
||||
owner: munge
|
||||
group: munge
|
||||
mode: 0400
|
||||
|
||||
# /var/log on Ubuntu 14.04+ is group writable, which causes munge to refuse to start
|
||||
# NOTE: This is fixed in munge 0.5.12
|
||||
- name: Check /var/log permissions
|
||||
stat:
|
||||
path: /var/log
|
||||
register: stat_var_log
|
||||
|
||||
- name: Force munge to start with "insecure" /var/log permissions
|
||||
lineinfile:
|
||||
dest: /etc/default/munge
|
||||
line: 'OPTIONS="--force"'
|
||||
regexp: ^OPTIONS=
|
||||
when: stat_var_log.stat.wgrp
|
||||
|
||||
- name: Ensure Munge is running
|
||||
service:
|
||||
name: munge
|
||||
enabled: yes
|
||||
state: started
|
||||
|
||||
- name: Ensure slurmd is running
|
||||
service:
|
||||
name: "{{ slurmd_service_name }}"
|
||||
enabled: yes
|
||||
state: started
|
||||
when: "'slurmexechosts' in group_names"
|
||||
|
||||
- name: Ensure slurmctld is running
|
||||
service:
|
||||
name: "{{ slurmctld_service_name }}"
|
||||
enabled: yes
|
||||
state: started
|
||||
when: "'slurmservers' in group_names"
|
||||
|
||||
- name: Ensure slurmdbd is running
|
||||
service:
|
||||
name: "{{ slurmdbd_service_name }}"
|
||||
enabled: yes
|
||||
state: started
|
||||
when: "'slurmdbdservers' in group_names"
|
||||
|
||||
- include: elastic.yml
|
||||
when: "'slurmelasticservers' in group_names"
|
|
@ -0,0 +1,30 @@
|
|||
##
|
||||
## This file is maintained by Ansible - CHANGES WILL BE OVERWRITTEN
|
||||
##
|
||||
|
||||
# Authentication info
|
||||
AuthType=auth/munge
|
||||
#AuthInfo=/var/run/munge/munge.socket.2
|
||||
|
||||
# slurmDBD info
|
||||
DbdAddr=galaxy02
|
||||
DbdHost=galaxy02
|
||||
#DbdPort=7031
|
||||
DbdPort=30001
|
||||
SlurmUser=slurm
|
||||
#MessageTimeout=300
|
||||
DebugLevel=4
|
||||
#DefaultQOS=normal,standby
|
||||
LogFile=/var/log/slurm/slurmdbd.log
|
||||
PidFile=/var/run/slurmdbd.pid
|
||||
#PluginDir=/usr/lib/slurm
|
||||
#PrivateData=accounts,users,usage,jobs
|
||||
#TrackWCKey=yes
|
||||
|
||||
# Database info
|
||||
StorageType=accounting_storage/mysql
|
||||
#StorageHost=localhost
|
||||
#StoragePort=1234
|
||||
StoragePass={{ slurmdbd_mysql_pass }}
|
||||
StorageUser=slurm
|
||||
#StorageLoc=slurm_acct_db
|
|
@ -0,0 +1,9 @@
|
|||
---
|
||||
|
||||
slurm_conf_dir: /etc/slurm-llnl
|
||||
# FIXME
|
||||
slurm_service_name: slurm-llnl
|
||||
slurm_log_dir_name: slurm-llnl
|
||||
slurmd_spool_dir: /var/lib/slurm-llnl/slurmd/slurmd.spool
|
||||
slurmctld_state_dir: /var/lib/slurm-llnl/slurmctld/slurm.state
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
---
|
||||
|
||||
slurm_conf_dir: /etc/slurm
|
||||
slurm_log_dir_name: slurm
|
||||
slurmd_service_name: slurmd
|
||||
slurmctld_service_name: slurmctld
|
||||
slurmdbd_service_name: slurmdbd
|
||||
slurmd_spool_dir: /var/lib/slurm/slurmd/slurmd.spool
|
||||
slurmctld_state_dir: /var/lib/slurm/slurmctld/slurm.state
|
Loading…
Reference in New Issue