diff --git a/cinder/files/kilo/cinder.conf.controller.Debian b/cinder/files/kilo/cinder.conf.controller.Debian
index a891cc5..5f616e4 100644
--- a/cinder/files/kilo/cinder.conf.controller.Debian
+++ b/cinder/files/kilo/cinder.conf.controller.Debian
@@ -30,7 +30,7 @@
 glance_api_version=2
 
 volume_backend_name=DEFAULT
-default_volume_type={% for type in controller.get('types', []) %}{% if loop.first %}{{ type.name }}{% endif %}{% endfor %}
+default_volume_type={% for type in controller.get('types', []) %}{% if loop.first %}{{ type.backend }}{% endif %}{% endfor %}
 
 #RPC response timeout recommended by Hitachi
 rpc_response_timeout=3600
@@ -62,7 +62,7 @@
 verbose=True
 lock_path=/var/lock/cinder
 
-enabled_backends={% for type in controller.get('types', []) %}{{ type.name }}{% if not loop.last %},{% endif %}{% endfor %}
+enabled_backends={% for type in controller.get('types', []) %}{{ type.backend }}{% if not loop.last %},{% endif %}{% endfor %}
 
 [oslo_concurrency]
 
@@ -99,9 +99,9 @@
 
 {%- for type in controller.get('types', []) %}
 
-[{{ type.name }}]
+[{{ type.backend }}]
 volume_driver = cinder.volume.drivers.ibm.storwize_svc.StorwizeSVCDriver
-volume_backend_name={{ type.name }}
+volume_backend_name={{ type.backend }}
 san_ip={{ controller.storage.host }}
 san_ssh_port={{ controller.storage.port }}
 san_login={{ controller.storage.user }}
@@ -122,9 +122,9 @@
 
 {%- for type in controller.get('types', []) %}
 
-[{{ type.name }}]
+[{{ type.backend }}]
 volume_driver = cinder.volume.drivers.hitachi.hbsd_fc.HBSDFCDriver
-volume_backend_name={{ type.name }}
+volume_backend_name={{ type.backend }}
 
 #
 # Options defined in cinder.volume.drivers.hitachi.hbsd_common
@@ -212,7 +212,7 @@
 
 {%- for type in controller.get('types', []) %}
 
-[{{ type.name }}]
+[{{ type.backend }}]
 
 volume_driver = cinder.volume.drivers.rbd.RBDDriver
 #
@@ -268,7 +268,7 @@
 
 {%- for type in controller.get('types', []) %}
 
-[{{ type.name }}]
+[{{ type.backend }}]
 
 hp3par_api_url={{ controller.storage.url }}
 
@@ -329,10 +329,10 @@
 
 {%- for type in controller.get('types', []) %}
 
-[{{ type.name }}]
-volume_backend_name={{ type.name }}
+[{{ type.backend }}]
+volume_backend_name={{ type.backend }}
 volume_driver=cinder.volume.drivers.fujitsu.fujitsu_eternus_dx_fc.FJDXFCDriver
-cinder_eternus_config_file=/etc/cinder/cinder_fujitsu_eternus_dx_{{ type.name }}.xml
+cinder_eternus_config_file=/etc/cinder/cinder_fujitsu_eternus_dx_{{ type.backend }}.xml
 
 {%- endfor %}
 
@@ -342,8 +342,8 @@
 
 {%- for type in controller.get('types', []) %}
 
-[{{ type.name }}]
-volume_backend_name={{ type.name }}
+[{{ type.backend }}]
+volume_backend_name={{ type.backend }}
 volume_driver = cinder.volume.drivers.ibm.gpfs.GPFSDriver
 gpfs_mount_point_base={{ type.mount_point }}
 #gpfs_mount_point_base=/mnt/gpfs-openstack/cinder/gold
diff --git a/cinder/files/kilo/cinder.conf.volume.Debian b/cinder/files/kilo/cinder.conf.volume.Debian
index 177c491..cd7dd93 100644
--- a/cinder/files/kilo/cinder.conf.volume.Debian
+++ b/cinder/files/kilo/cinder.conf.volume.Debian
@@ -30,7 +30,7 @@
 glance_api_version=2
 
 volume_backend_name=DEFAULT
-default_volume_type={% for type in volume.get('types', []) %}{% if loop.first %}{{ type.name }}{% endif %}{% endfor %}
+default_volume_type={% for type in volume.get('types', []) %}{% if loop.first %}{{ type.backend }}{% endif %}{% endfor %}
 
 #RPC response timeout recommended by Hitachi
 rpc_response_timeout=3600
@@ -70,7 +70,7 @@
 use_syslog=false
 verbose=True
 
-enabled_backends={% for type in volume.get('types', []) %}{{ type.name }}{% if not loop.last %},{% endif %}{% endfor %}{% if volume.storage.engine == "openvstorage" %}{% for vpool in pillar.openvstorage.server.get('vpools', []) %}{{ vpool }}{% if not loop.last %},{% endif %}{% endfor %}{% endif %}
+enabled_backends={% for type in volume.get('types', []) %}{{ type.backend }}{% if not loop.last %},{% endif %}{% endfor %}{% if volume.storage.engine == "openvstorage" %}{% for vpool in pillar.openvstorage.server.get('vpools', []) %}{{ vpool }}{% if not loop.last %},{% endif %}{% endfor %}{% endif %}
 
 [oslo_concurrency]
 
@@ -108,9 +108,9 @@
 
 {%- for type in volume.get('types', []) %}
 
-[{{ type.name }}]
+[{{ type.backend }}]
 volume_driver = cinder.volume.drivers.ibm.storwize_svc.StorwizeSVCDriver
-volume_backend_name={{ type.name }}
+volume_backend_name={{ type.backend }}
 san_ip={{ volume.storage.host }}
 san_ssh_port={{ volume.storage.port }}
 san_login={{ volume.storage.user }}
@@ -131,12 +131,12 @@
 
 {%- for type in volume.get('types', []) %}
 
-[{{ type.name }}]
+[{{ type.backend }}]
 
 {%- if volume.storage.version == "1.0" %}
 
 volume_driver = cinder.volume.drivers.hitachi.hbsd_fc.HBSDFCDriver
-volume_backend_name={{ type.name }}
+volume_backend_name={{ type.backend }}
 
 #
 # Options defined in cinder.volume.drivers.hitachi.hbsd_common
@@ -276,7 +276,7 @@
 
 {%- for type in volume.get('types', []) %}
 
-[{{ type.name }}]
+[{{ type.backend }}]
 
 volume_driver = cinder.volume.drivers.rbd.RBDDriver
 #
@@ -332,7 +332,7 @@
 
 {%- for type in volume.get('types', []) %}
 
-[{{ type.name }}]
+[{{ type.backend }}]
 
 hp3par_api_url={{ volume.storage.url }}
 
@@ -406,10 +406,10 @@
 
 {%- for type in volume.get('types', []) %}
 
-[{{ type.name }}]
-volume_backend_name={{ type.name }}
+[{{ type.backend }}]
+volume_backend_name={{ type.backend }}
 volume_driver=cinder.volume.drivers.fujitsu.fujitsu_eternus_dx_fc.FJDXFCDriver
-cinder_eternus_config_file=/etc/cinder/cinder_fujitsu_eternus_dx_{{ type.name }}.xml
+cinder_eternus_config_file=/etc/cinder/cinder_fujitsu_eternus_dx_{{ type.backend }}.xml
 
 {%- endfor %}
 
@@ -419,8 +419,8 @@
 
 {%- for type in volume.get('types', []) %}
 
-[{{ type.name }}]
-volume_backend_name={{ type.name }}
+[{{ type.backend }}]
+volume_backend_name={{ type.backend }}
 volume_driver = cinder.volume.drivers.ibm.gpfs.GPFSDriver
 gpfs_mount_point_base={{ type.mount_point }}
 #gpfs_mount_point_base=/mnt/gpfs-openstack/cinder/gold
diff --git a/cinder/files/liberty/cinder.conf.controller.Debian b/cinder/files/liberty/cinder.conf.controller.Debian
index 66ad5e1..e206f03 100644
--- a/cinder/files/liberty/cinder.conf.controller.Debian
+++ b/cinder/files/liberty/cinder.conf.controller.Debian
@@ -30,7 +30,7 @@
 glance_api_version=2
 
 volume_backend_name=DEFAULT
-default_volume_type={% for type in controller.get('types', []) %}{% if loop.first %}{{ type.name }}{% endif %}{% endfor %}
+default_volume_type={% for type in controller.get('types', []) %}{% if loop.first %}{{ type.backend }}{% endif %}{% endfor %}
 
 #RPC response timeout recommended by Hitachi
 rpc_response_timeout=3600
@@ -62,7 +62,7 @@
 verbose=True
 lock_path=/var/lock/cinder
 
-enabled_backends={% for type in controller.get('types', []) %}{{ type.name }}{% if not loop.last %},{% endif %}{% endfor %}
+enabled_backends={% for type in controller.get('types', []) %}{{ type.backend }}{% if not loop.last %},{% endif %}{% endfor %}
 
 [oslo_concurrency]
 
@@ -101,9 +101,9 @@
 
 {%- for type in controller.get('types', []) %}
 
-[{{ type.name }}]
+[{{ type.backend }}]
 volume_driver = cinder.volume.drivers.ibm.storwize_svc.StorwizeSVCDriver
-volume_backend_name={{ type.name }}
+volume_backend_name={{ type.backend }}
 san_ip={{ controller.storage.host }}
 san_ssh_port={{ controller.storage.port }}
 san_login={{ controller.storage.user }}
@@ -124,9 +124,9 @@
 
 {%- for type in controller.get('types', []) %}
 
-[{{ type.name }}]
+[{{ type.backend }}]
 volume_driver = cinder.volume.drivers.hitachi.hbsd_fc.HBSDFCDriver
-volume_backend_name={{ type.name }}
+volume_backend_name={{ type.backend }}
 
 #
 # Options defined in cinder.volume.drivers.hitachi.hbsd_common
@@ -214,7 +214,7 @@
 
 {%- for type in controller.get('types', []) %}
 
-[{{ type.name }}]
+[{{ type.backend }}]
 
 volume_driver = cinder.volume.drivers.rbd.RBDDriver
 #
@@ -270,7 +270,7 @@
 
 {%- for type in controller.get('types', []) %}
 
-[{{ type.name }}]
+[{{ type.backend }}]
 
 hp3par_api_url={{ controller.storage.url }}
 
@@ -331,10 +331,10 @@
 
 {%- for type in controller.get('types', []) %}
 
-[{{ type.name }}]
-volume_backend_name={{ type.name }}
+[{{ type.backend }}]
+volume_backend_name={{ type.backend }}
 volume_driver=cinder.volume.drivers.fujitsu.fujitsu_eternus_dx_fc.FJDXFCDriver
-cinder_eternus_config_file=/etc/cinder/cinder_fujitsu_eternus_dx_{{ type.name }}.xml
+cinder_eternus_config_file=/etc/cinder/cinder_fujitsu_eternus_dx_{{ type.backend }}.xml
 
 {%- endfor %}
 
@@ -344,8 +344,8 @@
 
 {%- for type in controller.get('types', []) %}
 
-[{{ type.name }}]
-volume_backend_name={{ type.name }}
+[{{ type.backend }}]
+volume_backend_name={{ type.backend }}
 volume_driver = cinder.volume.drivers.ibm.gpfs.GPFSDriver
 gpfs_mount_point_base={{ type.mount_point }}
 #gpfs_mount_point_base=/mnt/gpfs-openstack/cinder/gold
diff --git a/cinder/files/liberty/cinder.conf.volume.Debian b/cinder/files/liberty/cinder.conf.volume.Debian
index c58e757..ebc1c3f 100644
--- a/cinder/files/liberty/cinder.conf.volume.Debian
+++ b/cinder/files/liberty/cinder.conf.volume.Debian
@@ -30,7 +30,7 @@
 glance_api_version=2
 
 volume_backend_name=DEFAULT
-default_volume_type={% for type in volume.get('types', []) %}{% if loop.first %}{{ type.name }}{% endif %}{% endfor %}
+default_volume_type={% for type in volume.get('types', []) %}{% if loop.first %}{{ type.backend }}{% endif %}{% endfor %}
 
 #RPC response timeout recommended by Hitachi
 rpc_response_timeout=3600
@@ -70,7 +70,7 @@
 use_syslog=false
 verbose=True
 
-enabled_backends={% for type in volume.get('types', []) %}{{ type.name }}{% if not loop.last %},{% endif %}{% endfor %}{% if volume.storage.engine == "openvstorage" %}{% for vpool in pillar.openvstorage.server.get('vpools', []) %}{{ vpool }}{% if not loop.last %},{% endif %}{% endfor %}{% endif %}
+enabled_backends={% for type in volume.get('types', []) %}{{ type.backend }}{% if not loop.last %},{% endif %}{% endfor %}{% if volume.storage.engine == "openvstorage" %}{% for vpool in pillar.openvstorage.server.get('vpools', []) %}{{ vpool }}{% if not loop.last %},{% endif %}{% endfor %}{% endif %}
 
 [oslo_concurrency]
 
@@ -110,9 +110,9 @@
 
 {%- for type in volume.get('types', []) %}
 
-[{{ type.name }}]
+[{{ type.backend }}]
 volume_driver = cinder.volume.drivers.ibm.storwize_svc.StorwizeSVCDriver
-volume_backend_name={{ type.name }}
+volume_backend_name={{ type.backend }}
 san_ip={{ volume.storage.host }}
 san_ssh_port={{ volume.storage.port }}
 san_login={{ volume.storage.user }}
@@ -133,12 +133,12 @@
 
 {%- for type in volume.get('types', []) %}
 
-[{{ type.name }}]
+[{{ type.backend }}]
 
 {%- if volume.storage.version == "1.0" %}
 
 volume_driver = cinder.volume.drivers.hitachi.hbsd_fc.HBSDFCDriver
-volume_backend_name={{ type.name }}
+volume_backend_name={{ type.backend }}
 
 #
 # Options defined in cinder.volume.drivers.hitachi.hbsd_common
@@ -278,7 +278,7 @@
 
 {%- for type in volume.get('types', []) %}
 
-[{{ type.name }}]
+[{{ type.backend }}]
 
 volume_driver = cinder.volume.drivers.rbd.RBDDriver
 #
@@ -334,7 +334,7 @@
 
 {%- for type in volume.get('types', []) %}
 
-[{{ type.name }}]
+[{{ type.backend }}]
 
 hp3par_api_url={{ volume.storage.url }}
 
@@ -408,10 +408,10 @@
 
 {%- for type in volume.get('types', []) %}
 
-[{{ type.name }}]
-volume_backend_name={{ type.name }}
+[{{ type.backend }}]
+volume_backend_name={{ type.backend }}
 volume_driver=cinder.volume.drivers.fujitsu.fujitsu_eternus_dx_fc.FJDXFCDriver
-cinder_eternus_config_file=/etc/cinder/cinder_fujitsu_eternus_dx_{{ type.name }}.xml
+cinder_eternus_config_file=/etc/cinder/cinder_fujitsu_eternus_dx_{{ type.backend }}.xml
 
 {%- endfor %}
 
@@ -421,8 +421,8 @@
 
 {%- for type in volume.get('types', []) %}
 
-[{{ type.name }}]
-volume_backend_name={{ type.name }}
+[{{ type.backend }}]
+volume_backend_name={{ type.backend }}
 volume_driver = cinder.volume.drivers.ibm.gpfs.GPFSDriver
 gpfs_mount_point_base={{ type.mount_point }}
 #gpfs_mount_point_base=/mnt/gpfs-openstack/cinder/gold
