Ensure custom paths are created and have correct permissions.
diff --git a/grafana/files/default b/grafana/files/default
new file mode 100644
index 0000000..916b011
--- /dev/null
+++ b/grafana/files/default
@@ -0,0 +1,20 @@
+{%- from "grafana/map.jinja" import server with context %}
+GRAFANA_USER={{ server.user }}
+
+GRAFANA_GROUP={{ server.group }}
+
+GRAFANA_HOME=/usr/share/grafana
+
+LOG_DIR={{ server.path.logs }}
+
+DATA_DIR={{ server.path.data }}
+
+MAX_OPEN_FILES=10000
+
+CONF_DIR=/etc/grafana
+
+CONF_FILE=/etc/grafana/grafana.ini
+
+RESTART_ON_UPGRADE=true
+
+PLUGINS_DIR={{ server.path.data }}/plugins
diff --git a/grafana/files/grafana.ini b/grafana/files/grafana.ini
index da3ee3f..7742a8f 100644
--- a/grafana/files/grafana.ini
+++ b/grafana/files/grafana.ini
@@ -11,11 +11,11 @@
 [paths]
 # Path to where grafana can store temp files, sessions, and the sqlite3 db (if that is used)
 #
-data = {{ server.paths.data }}
+data = {{ server.path.data }}
 #
 # Directory where grafana can store logs
 #
-logs = {{ server.paths.logs }}
+logs = {{ server.path.logs }}
 
 #################################### Server ####################################
 [server]
diff --git a/grafana/map.jinja b/grafana/map.jinja
index 5562a39..18958ae 100644
--- a/grafana/map.jinja
+++ b/grafana/map.jinja
@@ -4,7 +4,10 @@
   pkgs:
   - grafana
   service: grafana-server
-  paths:
+  user: grafana
+  group: grafana
+  path:
+    home: /usr/share/grafana
     data: /var/lib/grafana
     logs: /var/log/grafana
   bind:
diff --git a/grafana/server.sls b/grafana/server.sls
index 7c66e5c..8bc42b1 100644
--- a/grafana/server.sls
+++ b/grafana/server.sls
@@ -28,6 +28,14 @@
 {%- endif %}
 
 
+/etc/default/grafana-server:
+  file.managed:
+  - name: /etc/default/grafana-server
+  - source: salt://grafana/files/default
+  - template: jinja
+  - require:
+    - pkg: grafana_packages
+
 {%- if server.dashboards.enabled %}
 
 grafana_copy_default_dashboards:
@@ -69,6 +77,20 @@
 
 {%- endfor %}
 
+{{server.path.data}}:
+  file.directory:
+    - makedirs: True
+    - mode: 755
+    - user: {{ server.user }}
+    - group: {{ server.group }}
+
+{{server.path.logs}}:
+  file.directory:
+    - makedirs: True
+    - mode: 755
+    - user: {{ server.user }}
+    - group: {{ server.group }}
+
 grafana_service:
   service.running:
   - name: {{ server.service }}
@@ -78,6 +100,7 @@
   - init_delay: 5
   - watch:
     - file: /etc/grafana/grafana.ini
+    - file: /etc/default/grafana-server
 
 {%- for plugin_name, plugin in server.get('plugins', {}).iteritems() %}
 {%- if plugin.get('enabled', False) %}