diff --git a/README.rst b/README.rst
index 0bc8d4b..ae4d984 100644
--- a/README.rst
+++ b/README.rst
@@ -369,7 +369,24 @@
         cert_file: (certificate path)
         key_file: (key path)
 
+Setup redis coordination_backend url:
+---------------------------
+.. code-block:: yaml
 
+    ceilometer:
+      server:
+        coordination_backend:
+          engine: redis
+          redis:
+            password: pswd
+            user: openstack
+            db: '0'
+            sentinel:
+              host: 127.0.0.1
+              master_name: master_1
+              fallback:
+                - host: 127.0.1.1
+                - host: 127.0.2.1
 
 More Information
 ================
diff --git a/ceilometer/files/mitaka/ceilometer-server.conf.Debian b/ceilometer/files/mitaka/ceilometer-server.conf.Debian
index 79cb291..61ac78f 100644
--- a/ceilometer/files/mitaka/ceilometer-server.conf.Debian
+++ b/ceilometer/files/mitaka/ceilometer-server.conf.Debian
@@ -140,8 +140,19 @@
 # partitioning and will only function correctly if a single instance of that
 # service is running. (string value)
 {%- if server.coordination_backend is defined %}
+{%- if server.coordination_backend.redis is defined and server.coordination_backend.get('engine', redis) == 'redis' %}
+  {%- set conn = server.coordination_backend.redis %}
+  {%- if conn.sentinel is defined %}
+backend_url = {{ conn.get('scheme', 'redis') }}://{{ conn.user }}:{{ conn.password }}@{{ conn.sentinel.host }}:{{ conn.sentinel.get('port', '26379') }}?sentinel={{ conn.sentinel.master_name }}{%
+    if conn.db is defined -%}&db={{ conn.db }}{% endif -%}{%
+    if conn.sentinel.fallback is defined %}{% for member in conn.sentinel.fallback -%}&sentinel_fallback={{ member.host }}:{{ member.get('port', '26379') }}{%- endfor -%}{% endif -%}
+  {%- else %}
+backend_url = {{ conn.get('scheme', 'redis') }}://{{ conn.user }}:{{ conn.password }}@{{ conn.host }}:{{ conn.get('port', '6379') }}{% if conn.db is defined -%}?db={{ conn.db }}{% endif -%}
+  {%- endif %}
+{%- elif server.coordination_backend.url is defined %}
 backend_url = {{ server.coordination_backend.url }}
-{%-  endif %}
+{%- endif %}
+{%- endif %}
 
 # Number of seconds between heartbeats for distributed coordination. (floating
 # point value)
@@ -526,4 +537,4 @@
 #allow_headers = X-Auth-Token,X-Openstack-Request-Id,X-Subject-Token,X-Project-Id,X-Project-Name,X-Project-Domain-Id,X-Project-Domain-Name,X-Domain-Id,X-Domain-Name
 {% if server.get('cors', {}).allow_headers is defined %}
 allow_headers = {{ server.cors.allow_headers }}
-{% endif %}
\ No newline at end of file
+{% endif %}
diff --git a/ceilometer/files/ocata/ceilometer-server.conf.Debian b/ceilometer/files/ocata/ceilometer-server.conf.Debian
index 8619648..c726424 100644
--- a/ceilometer/files/ocata/ceilometer-server.conf.Debian
+++ b/ceilometer/files/ocata/ceilometer-server.conf.Debian
@@ -608,6 +608,20 @@
 # partitioning and will only function correctly if a single instance of that
 # service is running. (string value)
 #backend_url = <None>
+{%- if server.coordination_backend is defined %}
+{%- if server.coordination_backend.redis is defined and server.coordination_backend.get('engine', redis) == 'redis' %}
+  {%- set conn = server.coordination_backend.redis %}
+  {%- if conn.sentinel is defined %}
+backend_url = {{ conn.get('scheme', 'redis') }}://{{ conn.user }}:{{ conn.password }}@{{ conn.sentinel.host }}:{{ conn.sentinel.get('port', '26379') }}?sentinel={{ conn.sentinel.master_name }}{%
+    if conn.db is defined -%}&db={{ conn.db }}{% endif -%}{%
+    if conn.sentinel.fallback is defined %}{% for member in conn.sentinel.fallback -%}&sentinel_fallback={{ member.host }}:{{ member.get('port', '26379') }}{%- endfor -%}{% endif -%}
+  {%- else %}
+backend_url = {{ conn.get('scheme', 'redis') }}://{{ conn.user }}:{{ conn.password }}@{{ conn.host }}:{{ conn.get('port', '6379') }}{% if conn.db is defined -%}?db={{ conn.db }}{% endif -%}
+  {%- endif %}
+{%- elif server.coordination_backend.url is defined %}
+backend_url = {{ server.coordination_backend.url }}
+{%- endif %}
+{%- endif %}
 
 # Number of seconds between heartbeats for distributed coordination. (floating
 # point value)
diff --git a/ceilometer/files/pike/ceilometer-server.conf.Debian b/ceilometer/files/pike/ceilometer-server.conf.Debian
index a88721e..3ab3626 100644
--- a/ceilometer/files/pike/ceilometer-server.conf.Debian
+++ b/ceilometer/files/pike/ceilometer-server.conf.Debian
@@ -33,8 +33,19 @@
 
 
 {%- if server.coordination_backend is defined %}
+{%- if server.coordination_backend.redis is defined and server.coordination_backend.get('engine', redis) == 'redis' %}
+  {%- set conn = server.coordination_backend.redis %}
+  {%- if conn.sentinel is defined %}
+backend_url = {{ conn.get('scheme', 'redis') }}://{{ conn.user }}:{{ conn.password }}@{{ conn.sentinel.host }}:{{ conn.sentinel.get('port', '26379') }}?sentinel={{ conn.sentinel.master_name }}{%
+    if conn.db is defined -%}&db={{ conn.db }}{% endif -%}{%
+    if conn.sentinel.fallback is defined %}{% for member in conn.sentinel.fallback -%}&sentinel_fallback={{ member.host }}:{{ member.get('port', '26379') }}{%- endfor -%}{% endif -%}
+  {%- else %}
+backend_url = {{ conn.get('scheme', 'redis') }}://{{ conn.user }}:{{ conn.password }}@{{ conn.host }}:{{ conn.get('port', '6379') }}{% if conn.db is defined -%}?db={{ conn.db }}{% endif -%}
+  {%- endif %}
+{%- elif server.coordination_backend.url is defined %}
 backend_url = {{ server.coordination_backend.url }}
-{%-  endif %}
+{%- endif %}
+{%- endif %}
 
 {%- if server.get('coordination_backend', {}).heartbeat is defined %}
 heartbeat = {{ server.coordination_backend.heartbeat }}
diff --git a/ceilometer/files/queens/ceilometer-server.conf.Debian b/ceilometer/files/queens/ceilometer-server.conf.Debian
index 8b6e033..5054c06 100644
--- a/ceilometer/files/queens/ceilometer-server.conf.Debian
+++ b/ceilometer/files/queens/ceilometer-server.conf.Debian
@@ -91,8 +91,19 @@
 # service is running. (string value)
 #backend_url = <None>
 {%- if server.coordination_backend is defined %}
+{%- if server.coordination_backend.redis is defined and server.coordination_backend.get('engine', redis) == 'redis' %}
+  {%- set conn = server.coordination_backend.redis %}
+  {%- if conn.sentinel is defined %}
+backend_url = {{ conn.get('scheme', 'redis') }}://{{ conn.user }}:{{ conn.password }}@{{ conn.sentinel.host }}:{{ conn.sentinel.get('port', '26379') }}?sentinel={{ conn.sentinel.master_name }}{%
+    if conn.db is defined -%}&db={{ conn.db }}{% endif -%}{%
+    if conn.sentinel.fallback is defined %}{% for member in conn.sentinel.fallback -%}&sentinel_fallback={{ member.host }}:{{ member.get('port', '26379') }}{%- endfor -%}{% endif -%}
+  {%- else %}
+backend_url = {{ conn.get('scheme', 'redis') }}://{{ conn.user }}:{{ conn.password }}@{{ conn.host }}:{{ conn.get('port', '6379') }}{% if conn.db is defined -%}?db={{ conn.db }}{% endif -%}
+  {%- endif %}
+{%- elif server.coordination_backend.url is defined %}
 backend_url = {{ server.coordination_backend.url }}
-{%-  endif %}
+{%- endif %}
+{%- endif %}
 
 # Number of seconds between checks to see if group membership has changed
 # (floating point value)
diff --git a/tests/pillar/server_cluster.sls b/tests/pillar/server_cluster.sls
index be5f1bb..db6ce31 100644
--- a/tests/pillar/server_cluster.sls
+++ b/tests/pillar/server_cluster.sls
@@ -59,6 +59,19 @@
         enabled: true
         host: 127.0.0.4
         port: 8086
+    coordination_backend:
+      url: 'redis://127.0.0.1/test'
+      engine: redis
+      redis:
+        password: pswd
+        user: openstack
+        db: '0'
+        sentinel:
+          host: 127.0.0.1
+          master_name: master_1
+          fallback:
+            - host: 127.0.1.1
+            - host: 127.0.2.1
     notification:
       workers: 8
       batch_timeout: 10
