diff --git a/.gitignore b/.gitignore
index aa8e42a..2a61b98 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,6 @@
 .kitchen
 tests/build/
 *.swp
+*.swo
 *.pyc
 .ropeproject
diff --git a/cinder/map.jinja b/cinder/map.jinja
index 22fd95a..79dff75 100644
--- a/cinder/map.jinja
+++ b/cinder/map.jinja
@@ -1,8 +1,10 @@
 {%- set default_params = {
-    'cacert_file': salt['grains.filter_by']({
-        'Debian': '/etc/ssl/certs/ca-certificates.crt',
-        'RedHat': '/etc/pki/tls/certs/ca-bundle.crt'
-    })}
+        'cacert_file': salt['grains.filter_by']({
+            'Debian': '/etc/ssl/certs/ca-certificates.crt',
+            'RedHat': '/etc/pki/tls/certs/ca-bundle.crt'
+        }),
+    'enabled': false,
+    }
 %}
 
 {% set controller = salt['grains.filter_by']({
@@ -150,4 +152,13 @@
         'services_failed_critical_threshold_percent': 0.6,
         'endpoint_failed_major_threshold': 0.5,
     },
-}, grain='os_family', merge=salt['pillar.get']('cinder:monitoring')) %}
+}, grain='os_family', merge=pillar.get('cinder', {}).get('monitoring')) %}
+
+{% set upgrade = pillar.get('cinder', {}).get('upgrade', {}) %}
+
+{# Only for transition untill we split backup service to separate sls #}
+{%- if controller.enabled %}
+{% set backup = controller.get('backup', {}) %}
+{%- elif volume.enabled %}
+{% set backup = volume.get('backup', {}) %}
+{%- endif %}
diff --git a/cinder/meta/salt.yml b/cinder/meta/salt.yml
index 7df3cf9..045e522 100644
--- a/cinder/meta/salt.yml
+++ b/cinder/meta/salt.yml
@@ -1,13 +1,8 @@
-orchestrate:
-  controller:
-    priority: 540
-    batch: 1
-    require:
-    - salt: keystone.server
-  volume:
-    priority: 550
-    require:
-    - salt: cinder.controller
+orchestration:
+  upgrade:
+    applications:
+      cinder:
+         priority: 1200
 dependency:
   {% from "cinder/map.jinja" import controller, client with context %}
   {%- if client.get('enabled', False) or controller.get('enabled', False) %}
diff --git a/cinder/upgrade/pkgs_latest.sls b/cinder/upgrade/pkgs_latest.sls
new file mode 100644
index 0000000..b8d690d
--- /dev/null
+++ b/cinder/upgrade/pkgs_latest.sls
@@ -0,0 +1,39 @@
+{%- from "cinder/map.jinja" import controller,volume,backup,client with context %}
+
+cinder_task_pkg_latest:
+  test.show_notification:
+    - text: "Running cinder.upgrade.pkg_latest"
+
+policy-rc.d_present:
+  file.managed:
+    - name: /usr/sbin/policy-rc.d
+    - mode: 755
+    - contents: |
+        #!/bin/sh
+        exit 101
+
+{%- set pkgs = [] %}
+{%- if controller.enabled %}
+  {%- do pkgs.extend(controller.pkgs) %}
+{%- endif %}
+{%- if volume.enabled %}
+  {%- do pkgs.extend(volume.pkgs) %}
+{%- endif %}
+{%- if backup.engine != None %}
+  {%- do pkgs.extend(backup.pkgs) %}
+{%- endif %}
+{%- if client.enabled %}
+  {%- do pkgs.extend(client.pkgs) %}
+{%- endif %}
+
+cinder_pkg_latest:
+  pkg.latest:
+  - names: {{ pkgs|unique }}
+  - require:
+    - file: policy-rc.d_present
+  - require_in:
+    - file: policy-rc.d_absent
+
+policy-rc.d_absent:
+  file.absent:
+    - name: /usr/sbin/policy-rc.d
diff --git a/cinder/upgrade/post/init.sls b/cinder/upgrade/post/init.sls
new file mode 100644
index 0000000..fcad85f
--- /dev/null
+++ b/cinder/upgrade/post/init.sls
@@ -0,0 +1,3 @@
+cinder_post:
+  test.show_notification:
+    - text: "Running cinder.upgrade.post"
diff --git a/cinder/upgrade/pre/init.sls b/cinder/upgrade/pre/init.sls
new file mode 100644
index 0000000..5dcfa90
--- /dev/null
+++ b/cinder/upgrade/pre/init.sls
@@ -0,0 +1,7 @@
+include:
+ - cinder.upgrade.verify.api
+
+
+cinder_pre:
+  test.show_notification:
+    - text: "Running cinder.upgrade.pre"
diff --git a/cinder/upgrade/render_config.sls b/cinder/upgrade/render_config.sls
new file mode 100644
index 0000000..7191084
--- /dev/null
+++ b/cinder/upgrade/render_config.sls
@@ -0,0 +1,14 @@
+{%- from "cinder/map.jinja" import controller,volume with context %}
+
+{%- if volume.enabled %}
+  {%- set _data = volume %}
+  {%- set type = 'volume' %}
+{%- elif controller.enabled %}
+  {%- set _data = controller %}
+  {%- set type = 'controller' %}
+{%- endif %}
+
+/etc/cinder/cinder.conf:
+  file.managed:
+  - source: salt://cinder/files/{{ _data.version }}/cinder.conf.{{ type }}.{{ grains.os_family }}
+  - template: jinja
diff --git a/cinder/upgrade/service_running.sls b/cinder/upgrade/service_running.sls
new file mode 100644
index 0000000..24f4c2b
--- /dev/null
+++ b/cinder/upgrade/service_running.sls
@@ -0,0 +1,29 @@
+{%- from "cinder/map.jinja" import controller,volume,backup,upgrade with context %}
+
+cinder_task_service_running:
+  test.show_notification:
+    - text: "Running cinder.upgrade.service_running"
+
+{%- set cservices = [] %}
+{%- if controller.enabled %}
+  {%- do cservices.extend(controller.services) %}
+  {#- After newton release cinder running under apache #}
+  {%- if upgrade.old_release in ['mitaka', 'newton'] %}
+    {%- do cservices.append('cinder-api') %}
+  {%- else %}
+    {%- do cservices.append('apache2') %}
+  {%- endif %}
+{%- endif %}
+{%- if volume.enabled %}
+   {%- do cservices.extend(volume.services) %}
+{%- endif %}
+{%- if backup.engine != None %}
+  {%- do cservices.extend(backup.services) %}
+{%- endif %}
+
+{%- for cservice in cservices|unique %}
+cinder_service_running_{{ cservice }}:
+  service.running:
+  - name: {{ cservice }}
+  - enable: True
+{%- endfor %}
diff --git a/cinder/upgrade/service_stopped.sls b/cinder/upgrade/service_stopped.sls
new file mode 100644
index 0000000..848c5f0
--- /dev/null
+++ b/cinder/upgrade/service_stopped.sls
@@ -0,0 +1,29 @@
+{%- from "cinder/map.jinja" import controller,volume,backup,upgrade with context %}
+
+cinder_task_service_stopped:
+  test.show_notification:
+    - text: "Running cinder.upgrade.service_stopped"
+
+{%- set cservices = [] %}
+{%- if controller.enabled %}
+  {%- do cservices.extend(controller.services) %}
+  {#- After newton release cinder running under apache #}
+  {%- if upgrade.old_release in ['mitaka', 'newton'] %}
+    {%- do cservices.append('cinder-api') %}
+  {%- else %}
+    {%- do cservices.append('apache2') %}
+  {%- endif %}
+{%- endif %}
+{%- if volume.enabled %}
+   {%- do cservices.extend(volume.services) %}
+{%- endif %}
+{%- if backup.engine != None %}
+  {%- do cservices.extend(backup.services) %}
+{%- endif %}
+
+{%- for cservice in cservices|unique %}
+cinder_service_stopped_{{ cservice }}:
+  service.dead:
+  - name: {{ cservice }}
+  - enable: False
+{%- endfor %}
diff --git a/cinder/upgrade/upgrade/init.sls b/cinder/upgrade/upgrade/init.sls
new file mode 100644
index 0000000..2a84a9a
--- /dev/null
+++ b/cinder/upgrade/upgrade/init.sls
@@ -0,0 +1,10 @@
+cinder_upgrade:
+  test.show_notification:
+    - text: "Running cinder.upgrade.upgrade"
+
+include:
+ - cinder.upgrade.service_stopped
+ - cinder.upgrade.pkgs_latest
+ - cinder.upgrade.render_config
+ - cinder.db.offline_sync
+ - cinder.upgrade.service_running
diff --git a/cinder/upgrade/verify/api.sls b/cinder/upgrade/verify/api.sls
new file mode 100644
index 0000000..afe2117
--- /dev/null
+++ b/cinder/upgrade/verify/api.sls
@@ -0,0 +1,39 @@
+{%- from "cinder/map.jinja" import controller with context %}
+{%- from "keystone/map.jinja" import client as kclient with context %}
+
+
+cinder_upgrade_verify_api:
+  test.show_notification:
+    - text: "Running cinder.upgrade.verify.api"
+
+{%- if kclient.enabled and kclient.get('os_client_config', {}).get('enabled', False)  %}
+  {%- if controller.enabled %}
+    {%- if controller.get('version') not in ('mitaka', 'newton') -%}
+      {%- set volume_type_name = 'TestVolumeType' %}
+
+cinderv3_volume_list:
+  module.run:
+    - name: cinderv3.volume_list
+    - kwargs:
+        cloud_name: admin_identity
+
+cinderv3_volume_type_present:
+  cinderv3.volume_type_present:
+  - name: {{ volume_type_name }}
+  - cloud_name: admin_identity
+
+cinderv3_volume_type_key_present:
+  cinderv3.volume_type_key_present:
+  - name: {{ volume_type_name }}
+  - key: key1
+  - value: val1
+  - cloud_name: admin_identity
+
+cinderv3_volume_type_absent:
+  cinderv3.volume_type_absent:
+  - name: {{ volume_type_name }}
+  - cloud_name: admin_identity
+
+    {%- endif %}
+  {%- endif %}
+{%- endif %}
