From 56575ff08292c08b7b3f949f3c6e97cba5e548e7 Mon Sep 17 00:00:00 2001 From: Chris Hines <chris.hines@monash.edu> Date: Fri, 24 Jul 2015 09:12:23 +0000 Subject: [PATCH] rearrange slurm roles a bit --- .../tasks/main.yml | 0 .../defaults/main.yml | 0 .../handlers/main.yml | 0 .../tasks/installCgroup.yml | 0 .../tasks/installMungeFromSource.yml | 0 .../tasks/installNhc.yml | 0 .../tasks/installSlurmFromSource.yml | 0 .../tasks/main.yml | 0 .../templates/cgroup.conf.j2 | 0 .../templates/cgroup_allowed_devices.conf.j2 | 0 .../templates/gres.conf.j2 | 0 .../templates/gres_sub.conf.j2 | 0 .../templates/job_submit.lua.j2 | 0 .../templates/munge.initd.j2 | 0 .../templates/munge_key.j2 | 0 .../templates/nhc.sysconfig.j2 | 0 .../templates/nhc_cron.j2 | 0 .../templates/nhclog.j2 | 0 .../templates/slurm-vpn.conf.j2 | 0 .../templates/slurm.conf.j2 | 0 .../templates/slurm.initd.j2 | 0 .../templates/slurm_setup.sh.j2 | 0 roles/{slurmdb => slurm-sql}/tasks/main.yml | 32 +--- roles/slurm/defaults/main.yml | 12 -- roles/slurm/handlers/main.yml | 18 --- roles/slurm/tasks/main.yml | 100 ------------- roles/slurm/templates/munge_key.j2 | 1 - roles/slurm/templates/slurm-vpn.conf.j2 | 109 -------------- roles/slurm/templates/slurm.conf.j2 | 141 ------------------ .../handlers/main.yml | 0 roles/slurmdb-config/tasks/main.yml | 37 +++++ .../templates/slurmdbd.conf.j2 | 0 .../templates/slurmdbd.initd.j2 | 0 33 files changed, 38 insertions(+), 412 deletions(-) rename roles/{slurm-build => slurm-build-rpms}/tasks/main.yml (100%) rename roles/{slurm-from-source => slurm-common}/defaults/main.yml (100%) rename roles/{slurm-from-source => slurm-common}/handlers/main.yml (100%) rename roles/{slurm-from-source => slurm-common}/tasks/installCgroup.yml (100%) rename roles/{slurm-from-source => slurm-common}/tasks/installMungeFromSource.yml (100%) rename roles/{slurm-from-source => slurm-common}/tasks/installNhc.yml (100%) rename roles/{slurm-from-source => slurm-common}/tasks/installSlurmFromSource.yml (100%) rename roles/{slurm-from-source => slurm-common}/tasks/main.yml (100%) rename roles/{slurm-from-source => slurm-common}/templates/cgroup.conf.j2 (100%) rename roles/{slurm-from-source => slurm-common}/templates/cgroup_allowed_devices.conf.j2 (100%) rename roles/{slurm-from-source => slurm-common}/templates/gres.conf.j2 (100%) rename roles/{slurm-from-source => slurm-common}/templates/gres_sub.conf.j2 (100%) rename roles/{slurm-from-source => slurm-common}/templates/job_submit.lua.j2 (100%) rename roles/{slurm-from-source => slurm-common}/templates/munge.initd.j2 (100%) rename roles/{slurm-from-source => slurm-common}/templates/munge_key.j2 (100%) rename roles/{slurm-from-source => slurm-common}/templates/nhc.sysconfig.j2 (100%) rename roles/{slurm-from-source => slurm-common}/templates/nhc_cron.j2 (100%) rename roles/{slurm-from-source => slurm-common}/templates/nhclog.j2 (100%) rename roles/{slurm-from-source => slurm-common}/templates/slurm-vpn.conf.j2 (100%) rename roles/{slurm-from-source => slurm-common}/templates/slurm.conf.j2 (100%) rename roles/{slurm-from-source => slurm-common}/templates/slurm.initd.j2 (100%) rename roles/{slurm-from-source => slurm-common}/templates/slurm_setup.sh.j2 (100%) rename roles/{slurmdb => slurm-sql}/tasks/main.yml (64%) delete mode 100644 roles/slurm/defaults/main.yml delete mode 100644 roles/slurm/handlers/main.yml delete mode 100644 roles/slurm/tasks/main.yml delete mode 100644 roles/slurm/templates/munge_key.j2 delete mode 100644 roles/slurm/templates/slurm-vpn.conf.j2 delete mode 100644 roles/slurm/templates/slurm.conf.j2 rename roles/{slurmdb => slurmdb-config}/handlers/main.yml (100%) create mode 100644 roles/slurmdb-config/tasks/main.yml rename roles/{slurmdb => slurmdb-config}/templates/slurmdbd.conf.j2 (100%) rename roles/{slurmdb => slurmdb-config}/templates/slurmdbd.initd.j2 (100%) diff --git a/roles/slurm-build/tasks/main.yml b/roles/slurm-build-rpms/tasks/main.yml similarity index 100% rename from roles/slurm-build/tasks/main.yml rename to roles/slurm-build-rpms/tasks/main.yml diff --git a/roles/slurm-from-source/defaults/main.yml b/roles/slurm-common/defaults/main.yml similarity index 100% rename from roles/slurm-from-source/defaults/main.yml rename to roles/slurm-common/defaults/main.yml diff --git a/roles/slurm-from-source/handlers/main.yml b/roles/slurm-common/handlers/main.yml similarity index 100% rename from roles/slurm-from-source/handlers/main.yml rename to roles/slurm-common/handlers/main.yml diff --git a/roles/slurm-from-source/tasks/installCgroup.yml b/roles/slurm-common/tasks/installCgroup.yml similarity index 100% rename from roles/slurm-from-source/tasks/installCgroup.yml rename to roles/slurm-common/tasks/installCgroup.yml diff --git a/roles/slurm-from-source/tasks/installMungeFromSource.yml b/roles/slurm-common/tasks/installMungeFromSource.yml similarity index 100% rename from roles/slurm-from-source/tasks/installMungeFromSource.yml rename to roles/slurm-common/tasks/installMungeFromSource.yml diff --git a/roles/slurm-from-source/tasks/installNhc.yml b/roles/slurm-common/tasks/installNhc.yml similarity index 100% rename from roles/slurm-from-source/tasks/installNhc.yml rename to roles/slurm-common/tasks/installNhc.yml diff --git a/roles/slurm-from-source/tasks/installSlurmFromSource.yml b/roles/slurm-common/tasks/installSlurmFromSource.yml similarity index 100% rename from roles/slurm-from-source/tasks/installSlurmFromSource.yml rename to roles/slurm-common/tasks/installSlurmFromSource.yml diff --git a/roles/slurm-from-source/tasks/main.yml b/roles/slurm-common/tasks/main.yml similarity index 100% rename from roles/slurm-from-source/tasks/main.yml rename to roles/slurm-common/tasks/main.yml diff --git a/roles/slurm-from-source/templates/cgroup.conf.j2 b/roles/slurm-common/templates/cgroup.conf.j2 similarity index 100% rename from roles/slurm-from-source/templates/cgroup.conf.j2 rename to roles/slurm-common/templates/cgroup.conf.j2 diff --git a/roles/slurm-from-source/templates/cgroup_allowed_devices.conf.j2 b/roles/slurm-common/templates/cgroup_allowed_devices.conf.j2 similarity index 100% rename from roles/slurm-from-source/templates/cgroup_allowed_devices.conf.j2 rename to roles/slurm-common/templates/cgroup_allowed_devices.conf.j2 diff --git a/roles/slurm-from-source/templates/gres.conf.j2 b/roles/slurm-common/templates/gres.conf.j2 similarity index 100% rename from roles/slurm-from-source/templates/gres.conf.j2 rename to roles/slurm-common/templates/gres.conf.j2 diff --git a/roles/slurm-from-source/templates/gres_sub.conf.j2 b/roles/slurm-common/templates/gres_sub.conf.j2 similarity index 100% rename from roles/slurm-from-source/templates/gres_sub.conf.j2 rename to roles/slurm-common/templates/gres_sub.conf.j2 diff --git a/roles/slurm-from-source/templates/job_submit.lua.j2 b/roles/slurm-common/templates/job_submit.lua.j2 similarity index 100% rename from roles/slurm-from-source/templates/job_submit.lua.j2 rename to roles/slurm-common/templates/job_submit.lua.j2 diff --git a/roles/slurm-from-source/templates/munge.initd.j2 b/roles/slurm-common/templates/munge.initd.j2 similarity index 100% rename from roles/slurm-from-source/templates/munge.initd.j2 rename to roles/slurm-common/templates/munge.initd.j2 diff --git a/roles/slurm-from-source/templates/munge_key.j2 b/roles/slurm-common/templates/munge_key.j2 similarity index 100% rename from roles/slurm-from-source/templates/munge_key.j2 rename to roles/slurm-common/templates/munge_key.j2 diff --git a/roles/slurm-from-source/templates/nhc.sysconfig.j2 b/roles/slurm-common/templates/nhc.sysconfig.j2 similarity index 100% rename from roles/slurm-from-source/templates/nhc.sysconfig.j2 rename to roles/slurm-common/templates/nhc.sysconfig.j2 diff --git a/roles/slurm-from-source/templates/nhc_cron.j2 b/roles/slurm-common/templates/nhc_cron.j2 similarity index 100% rename from roles/slurm-from-source/templates/nhc_cron.j2 rename to roles/slurm-common/templates/nhc_cron.j2 diff --git a/roles/slurm-from-source/templates/nhclog.j2 b/roles/slurm-common/templates/nhclog.j2 similarity index 100% rename from roles/slurm-from-source/templates/nhclog.j2 rename to roles/slurm-common/templates/nhclog.j2 diff --git a/roles/slurm-from-source/templates/slurm-vpn.conf.j2 b/roles/slurm-common/templates/slurm-vpn.conf.j2 similarity index 100% rename from roles/slurm-from-source/templates/slurm-vpn.conf.j2 rename to roles/slurm-common/templates/slurm-vpn.conf.j2 diff --git a/roles/slurm-from-source/templates/slurm.conf.j2 b/roles/slurm-common/templates/slurm.conf.j2 similarity index 100% rename from roles/slurm-from-source/templates/slurm.conf.j2 rename to roles/slurm-common/templates/slurm.conf.j2 diff --git a/roles/slurm-from-source/templates/slurm.initd.j2 b/roles/slurm-common/templates/slurm.initd.j2 similarity index 100% rename from roles/slurm-from-source/templates/slurm.initd.j2 rename to roles/slurm-common/templates/slurm.initd.j2 diff --git a/roles/slurm-from-source/templates/slurm_setup.sh.j2 b/roles/slurm-common/templates/slurm_setup.sh.j2 similarity index 100% rename from roles/slurm-from-source/templates/slurm_setup.sh.j2 rename to roles/slurm-common/templates/slurm_setup.sh.j2 diff --git a/roles/slurmdb/tasks/main.yml b/roles/slurm-sql/tasks/main.yml similarity index 64% rename from roles/slurmdb/tasks/main.yml rename to roles/slurm-sql/tasks/main.yml index f238b60..954d595 100644 --- a/roles/slurmdb/tasks/main.yml +++ b/roles/slurm-sql/tasks/main.yml @@ -1,21 +1,16 @@ ---- + - name: install deps in control node yum: name={{ item }} state=installed sudo: true with_items: - - mysql - mysql-server - - mysql-devel - - MySQL-python when: ansible_os_family == "RedHat" - name: install deps in control node apt: name={{ item }} state=installed sudo: true with_items: - - mysql-client - mysql-server - - python-mysqldb when: ansible_os_family == "Debian" - name: "Start the Server" @@ -32,21 +27,6 @@ mysql_user: check_implicit_admin=True login_user=root login_password={{ sqlrootPasswd }} name=root password={{ sqlrootPasswd }} state=present sudo: true -- name: install slurmdbd init - template: src=slurmdbd.initd.j2 dest=/etc/init.d/slurmdbd mode=755 - sudo: true - -- name: install slurmdb.conf init - template: src=slurmdbd.conf.j2 dest={{ slurm_dir }}/etc/slurmdbd.conf - sudo: true - when: slurm_dir is defined - - -- name: install slurmdbd.conf - template: src=slurmdbd.conf.j2 dest=/etc/slurm/slurmdbd.conf - sudo: true - when: slurm_dir is not defined - - name: configure database slurmdb localhost mysql_user: login_user=root login_password="{{ sqlrootPasswd }}" name=slurmdb password="{{ slurmdb_passwd }}" host=localhost priv=*.*:ALL,GRANT state=present sudo: true @@ -54,13 +34,3 @@ - name: configure database slurmdb domain mysql_user: login_user=root login_password="{{ sqlrootPasswd }}" name=slurmdb password="{{ slurmdb_passwd }}" host="{{ ansible_hostname }}"."{{ ansible_domain }}" priv=*.*:ALL,GRANT state=present sudo: true - -- name: sanity check slrumdbd service - service: "name=slurmdbd enabled=yes state=started" - sudo: true - -- name: sanity check slurm service - service: "name=slurm enabled=yes state=started" - sudo: true - - diff --git a/roles/slurm/defaults/main.yml b/roles/slurm/defaults/main.yml deleted file mode 100644 index 362d9cf..0000000 --- a/roles/slurm/defaults/main.yml +++ /dev/null @@ -1,12 +0,0 @@ ---- -slurm_use_vpn: False -slurmctlddebug: {level: 9, log: '/var/log/slurm/slurmctld.log'} -slurmddebug: {level: 9, log: '/var/log/slurm/slurmd.log'} -slurmschedlog: {level: 9, log: '/var/log/slurm/slurmsched.log'} -slurmdbdlog: {level: 9, log: '/var/log/slurm/slurmdbd.log'} -slurmfairshare: {def: false, val: 10000} -slurmdatadir: "/var/spool/slurm" -slurmselecttype: "select/linear" -slurmfastschedule: "1" -slurmschedulertype: "sched/backfill" - diff --git a/roles/slurm/handlers/main.yml b/roles/slurm/handlers/main.yml deleted file mode 100644 index 57f0cb1..0000000 --- a/roles/slurm/handlers/main.yml +++ /dev/null @@ -1,18 +0,0 @@ ---- - - name: restart munge - service: name=munge state=restarted - sudo: true - - - name: restart slurm - service: name=slurm state=restarted - sudo: true - - - name: restart slurmdbd - service: name=slurmdbd state=restarted - sudo: true - - - name: scontrol reconfigure - shell: sleep 10 ; scontrol reconfigure - sudo: true - delegate_to: "{{ slurmctrl }}" - run_once: true diff --git a/roles/slurm/tasks/main.yml b/roles/slurm/tasks/main.yml deleted file mode 100644 index b34568d..0000000 --- a/roles/slurm/tasks/main.yml +++ /dev/null @@ -1,100 +0,0 @@ ---- - -- name: create slurm group - group: name=slurm system=yes gid=497 - sudo: true - -- name: create slurm user - user: name=slurm group=slurm system=yes createhome=no uid=497 - sudo: true - -- name: make sure slurm conf dir exists - file: dest=/etc/slurm state=directory - sudo: true - -- name: create data directory - file: path="{{ slurmdatadir }}" state=directory owner=slurm group=slurm mode=755 - sudo: true - -- name: create log directory - shell: mkdir -p {{ slurmddebug.log | dirname }}; chown slurm:slurm {{ slurmddebug.log | dirname }} - args: - creates: "{{ slurmddebug.log | dirname }}" - sudo: true - when: slurmddebug is defined and slurmddebug.log - -- name: copy rpms - copy: src=/tmp/rpmbuild dest=/tmp - sudo: true - -- name: install munge rpms - shell: "rpm --install /tmp/rpmbuild/RPMS/x86_64/munge*{{ munge_version }}*rpm" - sudo: true - ignore_errors: true - when: ansible_os_family == "RedHat" - -- name: install deps - apt: name={{ item }} state=installed update_cache=yes - sudo: true - with_items: - - gcc - - wget - - libssl-dev - - libpam0g-dev - - libbz2-dev - - make - - alien - when: ansible_os_family == "Debian" - -- include: installMungeFromSource.yml - when: ansible_os_family == "Debian" - -- name: install munge key - template: src=munge_key.j2 dest=/etc/munge/munge.key owner=munge mode=600 - sudo: true - notify: restart munge - -- name: install perl - yum: name={{ item }} state=latest - with_items: - - perl - - perl-DBI - sudo: true - when: ansible_os_family == "RedHat" - -- name: install perl - apt: name={{ item }} state=latest - with_items: - - perl - - libdbi-perl - sudo: true - when: ansible_os_family == "Debian" - - -- include: installSlurmFromSource.yml - when: ansible_os_family == "Debian" - -- name: install slurm rpms - shell: "rpm --install /tmp/rpmbuild/RPMS/x86_64/slurm*{{ slurm_version }}*rpm" - sudo: true - ignore_errors: true - when: ansible_os_family == "RedHat" - -- name: install slurm.conf - template: src=slurm.conf.j2 dest=/etc/slurm/slurm.conf - sudo: true - when: slurm_use_vpn==False - -- name: install slurm.conf - template: src=slurm-vpn.conf.j2 dest=/etc/slurm/slurm.conf - sudo: true - when: slurm_use_vpn==True - - -- name: start munge - service: name=munge state=started - sudo: true - -- name: start slurm - service: name=slurm state=started - sudo: true diff --git a/roles/slurm/templates/munge_key.j2 b/roles/slurm/templates/munge_key.j2 deleted file mode 100644 index 83d3483..0000000 --- a/roles/slurm/templates/munge_key.j2 +++ /dev/null @@ -1 +0,0 @@ -{{ mungekey }} diff --git a/roles/slurm/templates/slurm-vpn.conf.j2 b/roles/slurm/templates/slurm-vpn.conf.j2 deleted file mode 100644 index 671840e..0000000 --- a/roles/slurm/templates/slurm-vpn.conf.j2 +++ /dev/null @@ -1,109 +0,0 @@ -# -# Example slurm.conf file. Please run configurator.html -# (in doc/html) to build a configuration file customized -# for your environment. -# -# -# slurm.conf file generated by configurator.html. -# -# See the slurm.conf man page for more information. -# -ClusterName=CIAB -ControlMachine={{ slurmctrl }} -ControlAddr={{ slurmctrl }}-vpn -#BackupController= -#BackupAddr= -# -SlurmUser=slurm -#SlurmdUser=root -SlurmctldPort=6817 -SlurmdPort=6818 -AuthType=auth/munge -#JobCredentialPrivateKey= -#JobCredentialPublicCertificate= -StateSaveLocation=/tmp -SlurmdSpoolDir=/tmp/slurmd -SwitchType=switch/none -MpiDefault=none -SlurmctldPidFile=/var/run/slurmctld.pid -SlurmdPidFile=/var/run/slurmd.pid -ProctrackType=proctrack/pgid -#PluginDir= -CacheGroups=0 -#FirstJobId= -ReturnToService=0 -#MaxJobCount= -#PlugStackConfig= -#PropagatePrioProcess= -#PropagateResourceLimits= -#PropagateResourceLimitsExcept= -#Prolog= -#Epilog= -#SrunProlog= -#SrunEpilog= -#TaskProlog= -#TaskEpilog= -#TaskPlugin= -#TrackWCKey=no -#TreeWidth=50 -#TmpFS= -#UsePAM= -# -# TIMERS -SlurmctldTimeout=300 -SlurmdTimeout=300 -InactiveLimit=0 -MinJobAge=300 -KillWait=30 -Waittime=0 -# -# SCHEDULING -SchedulerType=sched/backfill -#SchedulerAuth= -#SchedulerPort= -#SchedulerRootFilter= -SelectType=select/linear -FastSchedule=1 -#PriorityType=priority/multifactor -#PriorityDecayHalfLife=14-0 -#PriorityUsageResetPeriod=14-0 -#PriorityWeightFairshare=100000 -#PriorityWeightAge=1000 -#PriorityWeightPartition=10000 -#PriorityWeightJobSize=1000 -#PriorityMaxAge=1-0 -# -# LOGGING -SlurmctldDebug=3 -#SlurmctldLogFile= -SlurmdDebug=3 -#SlurmdLogFile= -JobCompType=jobcomp/none -#JobCompLoc= -# -# ACCOUNTING -#JobAcctGatherType=jobacct_gather/linux -#JobAcctGatherFrequency=30 -# -#AccountingStorageType=accounting_storage/slurmdbd -#AccountingStorageHost= -#AccountingStorageLoc= -#AccountingStoragePass= -#AccountingStorageUser= -# -MpiParams=ports=12000-12999 -# COMPUTE NODES -{% set nodelist = [] %} -{% for queue in slurmqueues %} -{% for node in groups[queue.group] %} -{% if nodelist.append(node) %} -{% endif %} -{% endfor %} -{% endfor %} -{% for node in nodelist|unique %} -NodeName={{ node }} NodeAddr={{ node }}-vpn Procs={{ hostvars[node]['ansible_processor_cores'] }} State=UNKNOWN -{% endfor %} - -{% for queue in slurmqueues %} -PartitionName={{ queue.name }} {% if queue.default %}Default=yes{% endif %} Nodes={{ groups[queue.group]|join(',') }} -{% endfor %} diff --git a/roles/slurm/templates/slurm.conf.j2 b/roles/slurm/templates/slurm.conf.j2 deleted file mode 100644 index b8d0753..0000000 --- a/roles/slurm/templates/slurm.conf.j2 +++ /dev/null @@ -1,141 +0,0 @@ -# -# Example slurm.conf file. Please run configurator.html -# (in doc/html) to build a configuration file customized -# for your environment. -# -# -# slurm.conf file generated by configurator.html. -# -# See the slurm.conf man page for more information. -# -ClusterName={{ clustername }} -ControlMachine={{ slurmctrl }} -#ControlAddr= -#BackupController= -#BackupAddr= -# -SlurmUser=slurm -SlurmdUser=root -SlurmctldPort=6817 -SlurmdPort=6818 -AuthType=auth/munge -#JobCredentialPrivateKey= -#JobCredentialPublicCertificate= -StateSaveLocation={{ slurmdatadir }} -SlurmdSpoolDir={{ slurmdatadir }} -SwitchType=switch/none -MpiDefault=none -SlurmctldPidFile=/var/run/slurmctld.pid -SlurmdPidFile=/var/run/slurmd.pid -ProctrackType=proctrack/pgid -#PluginDir= -CacheGroups=0 -#FirstJobId= -ReturnToService=0 -#MaxJobCount= -#PlugStackConfig= -#PropagatePrioProcess= -#PropagateResourceLimits= -#PropagateResourceLimitsExcept= -#Prolog= -#Epilog= -#SrunProlog= -#SrunEpilog= -#TaskProlog= -#TaskEpilog= -#TaskPlugin= -#TrackWCKey=no -#TreeWidth=50 -#TmpFS= -#UsePAM= -# -# TIMERS -SlurmctldTimeout=300 -SlurmdTimeout=300 -InactiveLimit=0 -MinJobAge=300 -KillWait=30 -Waittime=0 -# -# SCHEDULING -SchedulerType={{ slurmschedulertype }} -#SchedulerAuth= -#SchedulerPort= -#SchedulerRootFilter= -SelectType={{ slurmselecttype }} -FastSchedule={{ slurmfastschedule }} -#PriorityType=priority/multifactor -#PriorityDecayHalfLife=14-0 -#PriorityUsageResetPeriod=14-0 -#PriorityWeightFairshare=100000 -#PriorityWeightAge=1000 -#PriorityWeightPartition=10000 -#PriorityWeightJobSize=1000 -#PriorityMaxAge=1-0 -# -# LOGGING -{% if slurmctlddebug %} -SlurmctldDebug={{ slurmctlddebug.level }} -SlurmctldLogFile={{ slurmctlddebug.log }} -{% else %} -#SlurmctldDebug= -#SlurmctldLogFile= -{% endif %} -{% if slurmddebug %} -SlurmdDebug={{ slurmddebug.level }} -SlurmdLogFile={{ slurmddebug.log }} -{% else %} -#SlurmdDebug= -#SlurmdLogFile= -{% endif %} -{% if slurmschedlog %} -SlurmSchedlogLevel={{ slurmschedlog.level }} -SlurmSchedLogFile={{ slurmschedlog.log }} -{% else %} -#SlurmSchedlogLevel= -#SlurmSchedLogFile= -{% endif %} -JobCompType=jobcomp/none -#JobCompLoc= -# -{% if slurmjob %} -Prolog={{ slurmjob.prolog }} -Epilog={{ slurmjob.epilog }} -{% endif %} -# -# ACCOUNTING -#JobAcctGatherType=jobacct_gather/linux -#JobAcctGatherFrequency=30 -# -AccountingStorageType=accounting_storage/slurmdbd -AccountingStorageHost={{ slurmctrl }} -#AccountingStorageEnforce=limits,safe -#AccountingStorageLoc= -#AccountingStoragePass= -#AccountingStorageUser= -# -#GRES -#GresTypes=gpu - -# Fair share -{% if slurmfairshare.def %} -PriorityWeightFairshare={{ slurmfairshare.val }} -{% endif %} - -DisableRootJobs=YES -MpiParams=ports=12000-12999 -# COMPUTE NODES -{% set nodelist = [] %} -{% for queue in slurmqueues %} -{% for node in groups[queue.group] %} -{% if nodelist.append(node) %} -{% endif %} -{% endfor %} -{% endfor %} -{% for node in nodelist|unique %} -NodeName={{ node }} Procs={{ hostvars[node]['ansible_processor_vcpus'] }} -{% endfor %} - -{% for queue in slurmqueues %} -PartitionName={{ queue.name }} {% if queue.default %}Default=yes{% endif %} Nodes={{ groups[queue.group]|join(',') }} -{% endfor %} diff --git a/roles/slurmdb/handlers/main.yml b/roles/slurmdb-config/handlers/main.yml similarity index 100% rename from roles/slurmdb/handlers/main.yml rename to roles/slurmdb-config/handlers/main.yml diff --git a/roles/slurmdb-config/tasks/main.yml b/roles/slurmdb-config/tasks/main.yml new file mode 100644 index 0000000..8d9fbd0 --- /dev/null +++ b/roles/slurmdb-config/tasks/main.yml @@ -0,0 +1,37 @@ +--- +- name: install deps in control node + yum: name={{ item }} state=installed + sudo: true + with_items: + - mysql + - mysql-devel + - MySQL-python + when: ansible_os_family == "RedHat" + +- name: install deps in control node + apt: name={{ item }} state=installed + sudo: true + with_items: + - mysql-client + - python-mysqldb + when: ansible_os_family == "Debian" + +- name: install slurmdbd init + template: src=slurmdbd.initd.j2 dest=/etc/init.d/slurmdbd mode=755 + sudo: true + +- name: install slurmdb.conf init + template: src=slurmdbd.conf.j2 dest={{ slurm_dir }}/etc/slurmdbd.conf + sudo: true + when: slurm_dir is defined + + +- name: install slurmdbd.conf + template: src=slurmdbd.conf.j2 dest=/etc/slurm/slurmdbd.conf + sudo: true + when: slurm_dir is not defined + +- name: sanity check slurmdbd service + service: "name=slurmdbd enabled=yes state=started" + sudo: true + diff --git a/roles/slurmdb/templates/slurmdbd.conf.j2 b/roles/slurmdb-config/templates/slurmdbd.conf.j2 similarity index 100% rename from roles/slurmdb/templates/slurmdbd.conf.j2 rename to roles/slurmdb-config/templates/slurmdbd.conf.j2 diff --git a/roles/slurmdb/templates/slurmdbd.initd.j2 b/roles/slurmdb-config/templates/slurmdbd.initd.j2 similarity index 100% rename from roles/slurmdb/templates/slurmdbd.initd.j2 rename to roles/slurmdb-config/templates/slurmdbd.initd.j2 -- GitLab