diff --git a/roles/slurmdb/handlers/main.yml b/roles/slurmdb/handlers/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..cbbaae73ee7bef6df63023906addb9f499ecd1f2
--- /dev/null
+++ b/roles/slurmdb/handlers/main.yml
@@ -0,0 +1,8 @@
+---
+  - name: restart slurmdbd
+    service: name={{ item }} state=restarted
+    with_items:
+      - slurmdbd
+      - slurm
+    sudo: true
+
diff --git a/roles/slurmdb/tasks/main.yml b/roles/slurmdb/tasks/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..07d6bbeb1c68d84df7d596938b5fe94d73298b3d
--- /dev/null
+++ b/roles/slurmdb/tasks/main.yml
@@ -0,0 +1,13 @@
+---
+- name: create slurmdb user
+  user: name=slurmdb group=slurmdb system=yes createhome=no
+  sudo: true
+
+- name: install slurmdbd.conf
+  template: src=slurmdbd.conf.j2 dest=/etc/slurm/slurmdbd.conf
+  sudo: true
+
+- name: slurm db template 
+  template: src=slurmdb.sh.j2 dest=/etc/slurm/slurmdb.sh
+  sudo: true
+  notify: restart slurmdbd
diff --git a/roles/slurmdb/templates/slurmdb.sh.j2 b/roles/slurmdb/templates/slurmdb.sh.j2
new file mode 100644
index 0000000000000000000000000000000000000000..1ce3a1501863bc71b1a415b60afcf3d618744c40
--- /dev/null
+++ b/roles/slurmdb/templates/slurmdb.sh.j2
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+grant all privileges on slurm_acct_db.* to 'slurmdb'@\'{{ slurmctrl }}.{{ domain }}\' identified by \'{{ slurmDbPassword }}' with grant option;
+
diff --git a/roles/slurmdb/templates/slurmdbd.conf.j2 b/roles/slurmdb/templates/slurmdbd.conf.j2
new file mode 100644
index 0000000000000000000000000000000000000000..fbc4a56d4c58304a63133ab0b0258deed8802b02
--- /dev/null
+++ b/roles/slurmdb/templates/slurmdbd.conf.j2
@@ -0,0 +1,44 @@
+#
+# Example slurmdbd.conf file.
+#
+# See the slurmdbd.conf man page for more information.
+#
+# Archive info
+#ArchiveJobs=yes
+#ArchiveDir="/tmp"
+#ArchiveSteps=yes
+#ArchiveScript=
+#JobPurge=12
+#StepPurge=1
+#
+# Authentication info
+AuthType=auth/munge
+#AuthInfo=/var/run/munge/munge.socket.2
+#
+# slurmDBD info
+DbdAddr={{ slurmctrlip }}
+DbdHost={{ slurmctrl }}
+#DbdPort=7031
+SlurmUser=slurm
+#MessageTimeout=300
+#DefaultQOS=normal,standby
+{% if slurmschedlog and slurmschedlogfile %}
+DebugLevel={{ slurmschedlog }}
+LogFile={{ slurmschedlogfile }}
+{% else %}
+#DebugLevel=
+#LogFile=
+{% endif %}
+PidFile=/var/run/slurmdbd.pid
+#PluginDir=/usr/lib/slurm
+#PrivateData=accounts,users,usage,jobs
+#TrackWCKey=yes
+#
+# Database info
+StorageType=accounting_storage/mysql
+StorageHost={{ slurmctrl }}
+#StoragePort=1234
+StoragePass=password
+StorageUser=slurmdb
+StorageLoc=slurm_acct_db
+