diff --git a/ansible/roles/aodh/handlers/main.yml b/ansible/roles/aodh/handlers/main.yml
index ad1905119e0923b1e5f2a1d59f3b1e7a2a27527c..c18cace4a94f04c60bf2ea7ede826f619aa2970e 100644
--- a/ansible/roles/aodh/handlers/main.yml
+++ b/ansible/roles/aodh/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "aodh-api"
     service: "{{ aodh_services[service_name] }}"
-    config_json: "{{ aodh_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    aodh_conf: "{{ aodh_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ aodh_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    aodh_api_container: "{{ check_aodh_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,22 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or aodh_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or aodh_conf_wsgi.changed | bool
-      or aodh_api_container.changed | bool
 
 - name: Restart aodh-evaluator container
   vars:
     service_name: "aodh-evaluator"
     service: "{{ aodh_services[service_name] }}"
-    config_json: "{{ aodh_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    aodh_conf: "{{ aodh_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ aodh_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    aodh_evaluator_container: "{{ check_aodh_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -43,21 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or aodh_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or aodh_evaluator_container.changed | bool
 
 - name: Restart aodh-listener container
   vars:
     service_name: "aodh-listener"
     service: "{{ aodh_services[service_name] }}"
-    config_json: "{{ aodh_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    aodh_conf: "{{ aodh_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ aodh_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    aodh_listener_container: "{{ check_aodh_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -68,21 +43,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or aodh_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or aodh_listener_container.changed | bool
 
 - name: Restart aodh-notifier container
   vars:
     service_name: "aodh-notifier"
     service: "{{ aodh_services[service_name] }}"
-    config_json: "{{ aodh_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    aodh_conf: "{{ aodh_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ aodh_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    aodh_notifier_container: "{{ check_aodh_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -93,9 +58,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or aodh_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or aodh_notifier_container.changed | bool
diff --git a/ansible/roles/aodh/tasks/config.yml b/ansible/roles/aodh/tasks/config.yml
index 22e2c0c7c73fd6584e3dfb891b6ac76400b6d065..a5e8279709e932b44b0e82100bc9cf078ca59e35 100644
--- a/ansible/roles/aodh/tasks/config.yml
+++ b/ansible/roles/aodh/tasks/config.yml
@@ -35,17 +35,13 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ aodh_policy_file }}"
     mode: "0660"
   become: true
-  register: aodh_policy_overwriting
   when:
     - aodh_policy_file is defined
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ aodh_services }}"
   notify:
-    - Restart aodh-api container
-    - Restart aodh-evaluator container
-    - Restart aodh-listener container
-    - Restart aodh-notifier container
+    - "Restart {{ item.key }} container"
 
 - name: Copying over config.json files for services
   template:
@@ -53,16 +49,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: aodh_config_jsons
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ aodh_services }}"
   notify:
-    - Restart aodh-api container
-    - Restart aodh-evaluator container
-    - Restart aodh-listener container
-    - Restart aodh-notifier container
+    - "Restart {{ item.key }} container"
 
 - name: Copying over aodh.conf
   vars:
@@ -77,16 +69,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/aodh.conf"
     mode: "0660"
   become: true
-  register: aodh_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ aodh_services }}"
   notify:
-    - Restart aodh-api container
-    - Restart aodh-evaluator container
-    - Restart aodh-listener container
-    - Restart aodh-notifier container
+    - "Restart {{ item.key }} container"
 
 - name: Copying over wsgi-aodh files for services
   vars:
@@ -96,12 +84,11 @@
     dest: "{{ node_config_directory }}/aodh-api/wsgi-aodh.conf"
     mode: "0660"
   become: true
-  register: aodh_conf_wsgi
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
   notify:
-    - Restart aodh-api container
+    - "Restart aodh-api container"
 
 - name: Check aodh containers
   become: true
@@ -112,14 +99,10 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_aodh_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ aodh_services }}"
   notify:
-    - Restart aodh-api container
-    - Restart aodh-evaluator container
-    - Restart aodh-listener container
-    - Restart aodh-notifier container
+    - "Restart {{ item.key }} container"
diff --git a/ansible/roles/barbican/handlers/main.yml b/ansible/roles/barbican/handlers/main.yml
index ea164f9a9e059fac4a105863040cfc3c99c86348..5b4e487667cac2df8c020f56e6d3d8d560c34e89 100644
--- a/ansible/roles/barbican/handlers/main.yml
+++ b/ansible/roles/barbican/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "barbican-api"
     service: "{{ barbican_services[service_name] }}"
-    config_json: "{{ barbican_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    barbican_conf: "{{ barbican_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ barbican_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    barbican_api_container: "{{ check_barbican_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,23 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or barbican_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or barbican_api_ini.changed | bool
-      or barbican_api_paste.changed | bool
-      or barbican_api_container.changed | bool
 
 - name: Restart barbican-keystone-listener container
   vars:
     service_name: "barbican-keystone-listener"
     service: "{{ barbican_services[service_name] }}"
-    config_json: "{{ barbican_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    barbican_conf: "{{ barbican_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ barbican_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    barbican_keystone_listener_container: "{{ check_barbican_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -44,21 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or barbican_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or barbican_keystone_listener_container.changed | bool
 
 - name: Restart barbican-worker container
   vars:
     service_name: "barbican-worker"
     service: "{{ barbican_services[service_name] }}"
-    config_json: "{{ barbican_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    barbican_conf: "{{ barbican_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ barbican_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    barbican_worker_container: "{{ check_barbican_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -69,9 +43,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or barbican_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or barbican_worker_container.changed | bool
diff --git a/ansible/roles/barbican/tasks/config.yml b/ansible/roles/barbican/tasks/config.yml
index 5c6b55470528e5786fe94dd41511233fdadf0f38..b983e19e0b913975592aa5ca5926c1004310faf8 100644
--- a/ansible/roles/barbican/tasks/config.yml
+++ b/ansible/roles/barbican/tasks/config.yml
@@ -1,5 +1,20 @@
 ---
 - name: Ensuring config directories exist
+  file:
+    path: "{{ node_config_directory }}/{{ item.key }}"
+    state: "directory"
+    owner: "{{ config_owner_user }}"
+    group: "{{ config_owner_group }}"
+    mode: "0770"
+  become: true
+  when:
+    - inventory_hostname in groups[item.value.group]
+    - item.value.enabled | bool
+  with_dict: "{{ barbican_services }}"
+
+- name: Ensuring vassals config directories exist
+  vars:
+    service: "{{ barbican_services['barbican-api'] }}"
   file:
     path: "{{ node_config_directory }}/{{ item }}"
     state: "directory"
@@ -7,10 +22,11 @@
     group: "{{ config_owner_group }}"
     mode: "0770"
   become: true
+  when:
+    - inventory_hostname in groups[service.group]
+    - service.enabled | bool
   with_items:
     - "barbican-api/vassals"
-    - "barbican-keystone-listener"
-    - "barbican-worker"
 
 - name: Check if policies shall be overwritten
   local_action: stat path="{{ item }}"
@@ -35,7 +51,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: barbican_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -54,9 +69,8 @@
     dest: "{{ node_config_directory }}/barbican-api/vassals/barbican-api.ini"
     mode: "0660"
   become: true
-  register: barbican_api_ini
   when:
-    - inventory_hostname in groups['barbican-api']
+    - inventory_hostname in groups[service.group]
     - service.enabled | bool
   notify:
     - Restart barbican-api container
@@ -68,6 +82,7 @@
   run_once: True
   register: check_barbican_api_paste_ini
   when:
+    - inventory_hostname in groups[service.group]
     - service.enabled | bool
 
 - name: Copying over barbican-api-paste.ini
@@ -79,10 +94,9 @@
     mode: "0660"
   become: true
   when:
-    - inventory_hostname in groups['barbican-api']
+    - inventory_hostname in groups[service.group]
     - service.enabled | bool
     - check_barbican_api_paste_ini.stat.exists
-  register: barbican_api_paste
   notify:
     - Restart barbican-api container
 
@@ -99,7 +113,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/barbican.conf"
     mode: "0660"
   become: true
-  register: barbican_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
@@ -113,7 +126,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ barbican_policy_file }}"
     mode: "0660"
   become: true
-  register: barbican_policy_overwriting
   when:
     - barbican_policy_file is defined
     - inventory_hostname in groups[item.value.group]
@@ -131,7 +143,6 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_barbican_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/blazar/handlers/main.yml b/ansible/roles/blazar/handlers/main.yml
index f410f249c34637e5a31515e034c697a54bd05f98..c1559f8a5552070ec4f47724ab1e7f6e8885f1d8 100644
--- a/ansible/roles/blazar/handlers/main.yml
+++ b/ansible/roles/blazar/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "blazar-api"
     service: "{{ blazar_services[service_name] }}"
-    config_json: "{{ blazar_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    blazar_conf: "{{ blazar_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ blazar_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    blazar_api_container: "{{ check_blazar_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,21 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or blazar_conf.changed | bool
-      or policy_overwriting | bool
-      or blazar_api_container.changed | bool
 
 - name: Restart blazar-manager container
   vars:
     service_name: "blazar-manager"
     service: "{{ blazar_services[service_name] }}"
-    config_json: "{{ blazar_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    blazar_conf: "{{ blazar_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ blazar_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    blazar_manager_container: "{{ check_blazar_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -42,9 +28,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or blazar_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or blazar_manager_container.changed | bool
diff --git a/ansible/roles/blazar/tasks/config.yml b/ansible/roles/blazar/tasks/config.yml
index f86c815dc1f0443265b6528097209fdf12ca8d90..f959c3250d4eb187bbd0416486f84cf1dc731938 100644
--- a/ansible/roles/blazar/tasks/config.yml
+++ b/ansible/roles/blazar/tasks/config.yml
@@ -35,14 +35,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: blazar_config_jsons
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ blazar_services }}"
   notify:
-    - Restart blazar-api container
-    - Restart blazar-manager container
+    - Restart {{ item.key }} container
 
 - name: Copying over blazar.conf
   vars:
@@ -57,14 +55,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/blazar.conf"
     mode: "0660"
   become: true
-  register: blazar_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ blazar_services }}"
   notify:
-    - Restart blazar-api container
-    - Restart blazar-manager container
+    - Restart {{ item.key }} container
 
 - name: Copying over existing policy file
   template:
@@ -72,14 +68,13 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ blazar_policy_file }}"
     mode: "0660"
   become: true
-  register: blazar_policy_overwriting
   when:
     - blazar_policy_file is defined
     - inventory_hostname in groups[item.value.group]
+    - item.value.enabled | bool
   with_dict: "{{ blazar_services }}"
   notify:
-    - Restart blazar-api container
-    - Restart blazar-manager container
+    - Restart {{ item.key }} container
 
 - name: Check blazar containers
   become: true
@@ -90,12 +85,10 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_blazar_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ blazar_services }}"
   notify:
-    - Restart blazar-api container
-    - Restart blazar-manager container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/ceilometer/handlers/main.yml b/ansible/roles/ceilometer/handlers/main.yml
index 82f0327788d8456dbf23cf726c9b284d88e1fe25..87a541148c6bbed0ba3a2402d4c446d00cedcd91 100644
--- a/ansible/roles/ceilometer/handlers/main.yml
+++ b/ansible/roles/ceilometer/handlers/main.yml
@@ -3,15 +3,6 @@
   vars:
     service_name: "ceilometer-notification"
     service: "{{ ceilometer_services[service_name] }}"
-    config_json: "{{ ceilometer_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ceilometer_conf: "{{ ceilometer_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ceilometer_pipeline: "{{ ceilometer_pipelines.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    gnocchi_resources_overwriting: "{{ ceilometer_gnocchi_resources_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    pipeline_overwriting: "{{ ceilometer_pipeline_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ ceilometer_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    polling_overwriting: "{{ ceilometer_polling_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ceilometer_notification_container: "{{ check_ceilometer_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    panko_conf: "{{ panko_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -22,34 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or ceilometer_conf.changed | bool
-      or ceilometer_event_definitions_overwriting.changed | bool
-      or ceilometer_event_pipeline_overwriting.changed | bool
-      or gnocchi_resources_overwriting.changed | bool
-      or pipeline_overwriting.changed | bool
-      or policy_overwriting.changed | bool
-      or polling_overwriting.changed | bool
-      or ceilometer_event_definitions.changed | bool
-      or ceilometer_event_pipeline.changed | bool
-      or ceilometer_pipeline.changed | bool
-      or ceilometer_notification_container.changed | bool
-      or panko_conf.changed | bool
 
 - name: Restart ceilometer-central container
   vars:
     service_name: "ceilometer-central"
     service: "{{ ceilometer_services[service_name] }}"
-    config_json: "{{ ceilometer_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ceilometer_conf: "{{ ceilometer_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ceilometer_pipeline: "{{ ceilometer_pipelines.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    gnocchi_resources_overwriting: "{{ ceilometer_gnocchi_resources_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    pipeline_overwriting: "{{ ceilometer_pipeline_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ ceilometer_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    polling_overwriting: "{{ ceilometer_polling_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ceilometer_central_container: "{{ check_ceilometer_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -60,29 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or ceilometer_conf.changed | bool
-      or ceilometer_pipeline.changed | bool
-      or gnocchi_resources_overwriting.changed | bool
-      or pipeline_overwriting.changed | bool
-      or policy_overwriting.changed | bool
-      or polling_overwriting.changed | bool
-      or ceilometer_central_container.changed | bool
 
 - name: Restart ceilometer-compute container
   vars:
     service_name: "ceilometer-compute"
     service: "{{ ceilometer_services[service_name] }}"
-    config_json: "{{ ceilometer_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ceilometer_conf: "{{ ceilometer_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ceilometer_pipeline: "{{ ceilometer_pipelines.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    gnocchi_resources_overwriting: "{{ ceilometer_gnocchi_resources_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    pipeline_overwriting: "{{ ceilometer_pipeline_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ ceilometer_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    polling_overwriting: "{{ ceilometer_polling_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ceilometer_compute_container: "{{ check_ceilometer_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -94,29 +44,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or ceilometer_conf.changed | bool
-      or ceilometer_pipeline.changed | bool
-      or gnocchi_resources_overwriting.changed | bool
-      or pipeline_overwriting.changed | bool
-      or policy_overwriting.changed | bool
-      or polling_overwriting.changed | bool
-      or vcenter_ca_file.changed | bool
-      or ceilometer_compute_container.changed | bool
 
 - name: Restart ceilometer-ipmi container
   vars:
     service_name: "ceilometer-ipmi"
     service: "{{ ceilometer_services[service_name] }}"
-    config_json: "{{ ceilometer_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ceilometer_conf: "{{ ceilometer_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ceilometer_pipeline: "{{ ceilometer_pipelines.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    gnocchi_resources_overwriting: "{{ ceilometer_gnocchi_resources_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ ceilometer_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    polling_overwriting: "{{ ceilometer_polling_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ceilometer_ipmi_container: "{{ check_ceilometer_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -127,12 +59,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or ceilometer_conf.changed | bool
-      or ceilometer_pipeline.changed | bool
-      or gnocchi_resources_overwriting.changed | bool
-      or policy_overwriting.changed | bool
-      or polling_overwriting.changed | bool
-      or ceilometer_ipmi_container.changed | bool
diff --git a/ansible/roles/ceilometer/tasks/config.yml b/ansible/roles/ceilometer/tasks/config.yml
index 34d32a9e1e2b9881c5a05d503647946561aeecd1..ec2a0c60afefe32741a5d0af08220a2ab6ae9288 100644
--- a/ansible/roles/ceilometer/tasks/config.yml
+++ b/ansible/roles/ceilometer/tasks/config.yml
@@ -69,7 +69,6 @@
     force: True
     mode: "0660"
   become: true
-  register: ceilometer_polling_overwriting
   when:
     - ceilometer_polling_file.stat.exists
     - inventory_hostname in groups[item.value.group]
@@ -95,7 +94,6 @@
     force: True
     mode: "0660"
   become: true
-  register: ceilometer_gnocchi_resources_overwriting
   when:
     - ceilometer_gnocchi_resources_file.stat.exists
     - inventory_hostname in groups[item.value.group]
@@ -133,16 +131,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: ceilometer_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ ceilometer_services }}"
   notify:
-    - Restart ceilometer-notification container
-    - Restart ceilometer-central container
-    - Restart ceilometer-compute container
-    - Restart ceilometer-ipmi container
+    - "Restart {{ item.key }} container"
 
 - name: Copying over ceilometer.conf
   vars:
@@ -157,16 +151,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/ceilometer.conf"
     mode: "0660"
   become: true
-  register: ceilometer_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ ceilometer_services }}"
   notify:
-    - Restart ceilometer-notification container
-    - Restart ceilometer-central container
-    - Restart ceilometer-compute container
-    - Restart ceilometer-ipmi container
+    - "Restart {{ item.key }} container"
 
 - name: Check custom event_definitions.yaml exists
   local_action: stat path="{{ node_custom_config }}/ceilometer/event_definitions.yaml"
@@ -234,7 +224,6 @@
     dest: "{{ node_config_directory }}/ceilometer-notification/event_pipeline.yaml"
     mode: "0660"
   become: true
-  register: ceilometer_event_pipeline
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -279,7 +268,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/pipeline.yaml"
     mode: "0660"
   become: true
-  register: ceilometer_pipelines
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -303,7 +291,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/panko.conf"
     mode: "0660"
   become: true
-  register: panko_confs
   when:
     - enable_panko | bool
     - item.value.enabled | bool
@@ -320,7 +307,6 @@
     src: "{{ node_custom_config }}/vmware_ca"
     dest: "{{ node_config_directory }}/ceilometer-compute/vmware_ca"
     mode: "0660"
-  register: vcenter_ca_file
   when:
     - nova_compute_virt_type == "vmware"
     - not vmware_vcenter_insecure | bool
@@ -335,17 +321,13 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ ceilometer_policy_file }}"
     mode: "0660"
   become: true
-  register: ceilometer_policy_overwriting
   when:
     - ceilometer_policy_file is defined
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ ceilometer_services }}"
   notify:
-    - Restart ceilometer-notification container
-    - Restart ceilometer-central container
-    - Restart ceilometer-compute container
-    - Restart ceilometer-ipmi container
+    - "Restart {{ item.key }} container"
 
 # check whether the containers parameter is changed. If yes, trigger the handler.
 - name: Check ceilometer containers
@@ -358,14 +340,10 @@
     privileged: "{{ item.value.privileged | default(False) }}"
     volumes: "{{ item.value.volumes | reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_ceilometer_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ ceilometer_services }}"
   notify:
-    - Restart ceilometer-notification container
-    - Restart ceilometer-central container
-    - Restart ceilometer-compute container
-    - Restart ceilometer-ipmi container
+    - "Restart {{ item.key }} container"
diff --git a/ansible/roles/chrony/handlers/main.yml b/ansible/roles/chrony/handlers/main.yml
index 67b224cc3606aec3ef78499f343fc45f6076c712..3c800c7d286e6bfe16cf63cd8e11c1483fd72826 100644
--- a/ansible/roles/chrony/handlers/main.yml
+++ b/ansible/roles/chrony/handlers/main.yml
@@ -14,5 +14,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
diff --git a/ansible/roles/chrony/tasks/config.yml b/ansible/roles/chrony/tasks/config.yml
index 002de5bcb0956b5e4a148e2fc61deae04b9ff9e0..0d3690fad8e2899dbbdf2402769cdf4b407703f6 100644
--- a/ansible/roles/chrony/tasks/config.yml
+++ b/ansible/roles/chrony/tasks/config.yml
@@ -1,5 +1,8 @@
 ---
 - name: Ensuring config directories exist
+  vars:
+    service_name: "chrony"
+    service: "{{ chrony_services[service_name] }}"
   file:
     path: "{{ node_config_directory }}/{{ item }}"
     state: "directory"
@@ -7,26 +10,41 @@
     group: "{{ config_owner_group }}"
     mode: "0770"
   become: true
+  when:
+    - inventory_hostname in groups[service.group]
+    - service.enabled | bool
   with_items:
     - "chrony"
 
 - name: Copying over config.json files for services
+  vars:
+    service_name: "chrony"
+    service: "{{ chrony_services[service_name] }}"
   template:
     src: "{{ item }}.json.j2"
     dest: "{{ node_config_directory }}/{{ item }}/config.json"
     mode: "0660"
   become: true
+  when:
+    - inventory_hostname in groups[service.group]
+    - service.enabled | bool
   with_items:
     - "chrony"
   notify:
     - Restart chrony container
 
 - name: Copying over chrony.conf
+  vars:
+    service_name: "chrony"
+    service: "{{ chrony_services[service_name] }}"
   template:
     src: "{{ item }}"
     dest: "{{ node_config_directory }}/chrony/chrony.conf"
     mode: "0660"
   become: true
+  when:
+    - inventory_hostname in groups[service.group]
+    - service.enabled | bool
   with_first_found:
     - "{{ node_custom_config }}/chrony/{{ inventory_hostname }}/chrony.conf"
     - "{{ node_custom_config }}/chrony/chrony.conf"
@@ -50,4 +68,4 @@
     - item.value.enabled | bool
   with_dict: "{{ chrony_services }}"
   notify:
-    - Restart chrony container
+    - "Restart {{ item.key }} container"
diff --git a/ansible/roles/cinder/handlers/main.yml b/ansible/roles/cinder/handlers/main.yml
index 08122965a4ee4a3c1b288770ec2ff6bb5f15498d..47a470f7fce1faf2a29e1dd19aef0ca4cf9375a3 100644
--- a/ansible/roles/cinder/handlers/main.yml
+++ b/ansible/roles/cinder/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "cinder-api"
     service: "{{ cinder_services[service_name] }}"
-    config_json: "{{ cinder_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cinder_conf: "{{ cinder_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ cinder_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cinder_api_container: "{{ check_cinder_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,22 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or cinder_conf.changed | bool
-      or wsgi_cinder_api.changed | bool
-      or policy_overwriting.changed | bool
-      or cinder_api_container.changed | bool
 
 - name: Restart cinder-scheduler container
   vars:
     service_name: "cinder-scheduler"
     service: "{{ cinder_services[service_name] }}"
-    config_json: "{{ cinder_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cinder_conf: "{{ cinder_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ cinder_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cinder_scheduler_container: "{{ check_cinder_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -43,22 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or cinder_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or cinder_scheduler_container.changed | bool
 
 - name: Restart cinder-volume container
   vars:
     service_name: "cinder-volume"
     service: "{{ cinder_services[service_name] }}"
-    config_json: "{{ cinder_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cinder_conf: "{{ cinder_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ceph_conf: "{{ ceph_confs.results|selectattr('item.key', 'equalto', service_name)|first if ceph_confs is defined else none }}"
-    policy_overwriting: "{{ cinder_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cinder_volume_container: "{{ check_cinder_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -71,24 +45,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or cinder_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or cinder_volume_container.changed | bool
-      or ( ceph_conf is not none and ceph_conf.changed | bool )
-      or ( cinder_volume_ceph_keyring is defined and cinder_volume_ceph_keyring.changed | bool )
 
 - name: Restart cinder-backup container
   vars:
     service_name: "cinder-backup"
     service: "{{ cinder_services[service_name] }}"
-    config_json: "{{ cinder_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cinder_conf: "{{ cinder_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ceph_conf: "{{ ceph_confs.results|selectattr('item.key', 'equalto', service_name)|first if ceph_confs is defined else none }}"
-    policy_overwriting: "{{ cinder_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cinder_backup_container: "{{ check_cinder_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -100,11 +61,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or cinder_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or cinder_backup_container.changed | bool
-      or ( ceph_conf is not none and ceph_conf.changed | bool )
-      or ( cinder_backup_ceph_keyring is defined and cinder_backup_ceph_keyring.changed | bool )
diff --git a/ansible/roles/cinder/tasks/ceph.yml b/ansible/roles/cinder/tasks/ceph.yml
index dae58d1d1b5c0cd09e96003db49151fc5e803f6c..5e318db4808b0494dce8db501e355e665932347f 100644
--- a/ansible/roles/cinder/tasks/ceph.yml
+++ b/ansible/roles/cinder/tasks/ceph.yml
@@ -12,7 +12,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/ceph.conf"
     mode: "0660"
   become: true
-  register: ceph_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
@@ -72,3 +71,5 @@
   when:
     - inventory_hostname in groups[item.service_name]
     - cinder_services[item.service_name].enabled | bool
+  notify:
+    - "Restart {{ item.service_name }} container"
diff --git a/ansible/roles/cinder/tasks/config.yml b/ansible/roles/cinder/tasks/config.yml
index 9b87c1c0aef5a1a419fd144c3744f9085124c361..a094d6b7f718b8f93a5d51312ad6b8f751796469 100644
--- a/ansible/roles/cinder/tasks/config.yml
+++ b/ansible/roles/cinder/tasks/config.yml
@@ -50,16 +50,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: cinder_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ cinder_services }}"
   notify:
-    - Restart cinder-api container
-    - Restart cinder-scheduler container
-    - Restart cinder-volume container
-    - Restart cinder-backup container
+    - "Restart {{ item.key }} container"
 
 - name: Copying over cinder-wsgi.conf
   vars:
@@ -73,7 +69,6 @@
     - "{{ node_custom_config }}/cinder/{{ inventory_hostname }}/cinder-wsgi.conf"
     - "{{ node_custom_config }}/cinder/cinder-wsgi.conf"
     - "cinder-wsgi.conf.j2"
-  register: wsgi_cinder_api
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -93,16 +88,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/cinder.conf"
     mode: "0660"
   become: true
-  register: cinder_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ cinder_services }}"
   notify:
-    - Restart cinder-api container
-    - Restart cinder-scheduler container
-    - Restart cinder-volume container
-    - Restart cinder-backup container
+    - "Restart {{ item.key }} container"
 
 - name: Copying over existing policy file
   become: true
@@ -110,17 +101,13 @@
     src: "{{ cinder_policy_file_path }}"
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ cinder_policy_file }}"
     mode: "0660"
-  register: cinder_policy_overwriting
   when:
     - item.value.enabled | bool
     - cinder_policy_file is defined
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ cinder_services }}"
   notify:
-    - Restart cinder-api container
-    - Restart cinder-scheduler container
-    - Restart cinder-volume container
-    - Restart cinder-backup container
+    - "Restart {{ item.key }} container"
 
 - name: Copying over nfs_shares files for cinder_volume
   become: true
@@ -140,6 +127,8 @@
         - "{{ node_custom_config }}/cinder/{{ inventory_hostname }}/nfs_shares"
       skip: "{{ not enable_cinder_backend_nfs | bool and not enable_cinder_backend_hnas_nfs | bool }}"
   when: inventory_hostname in groups['cinder-volume']
+  notify:
+    - Restart cinder-volume container
 
 - name: Check cinder containers
   become: true
@@ -152,14 +141,10 @@
     dimensions: "{{ item.value.dimensions }}"
     privileged: "{{ item.value.privileged | default(False) }}"
     ipc_mode: "{{ item.value.ipc_mode | default('') }}"
-  register: check_cinder_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ cinder_services }}"
   notify:
-    - Restart cinder-api container
-    - Restart cinder-scheduler container
-    - Restart cinder-volume container
-    - Restart cinder-backup container
+    - "Restart {{ item.key }} container"
diff --git a/ansible/roles/cinder/tasks/external_ceph.yml b/ansible/roles/cinder/tasks/external_ceph.yml
index f60614974ee0aaeb5547e2a575e3b91067b11ed5..48663935ce3bc136e71d0cfd87c6fbb7651bf33c 100644
--- a/ansible/roles/cinder/tasks/external_ceph.yml
+++ b/ansible/roles/cinder/tasks/external_ceph.yml
@@ -11,7 +11,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/ceph.conf"
     mode: "0660"
   become: true
-  register: ceph_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
@@ -26,7 +25,6 @@
     dest: "{{ node_config_directory }}/cinder-volume/"
     mode: "0660"
   become: true
-  register: cinder_volume_ceph_keyring
   with_fileglob:
     - "{{ node_custom_config }}/cinder/cinder-volume/ceph.client*"
   when:
diff --git a/ansible/roles/cloudkitty/handlers/main.yml b/ansible/roles/cloudkitty/handlers/main.yml
index d8b76fe32e40d6e9c67a64ec24cc0a70bc7483f5..a49a0319eeafb81a1f3e3740d32e7729f6a364a5 100644
--- a/ansible/roles/cloudkitty/handlers/main.yml
+++ b/ansible/roles/cloudkitty/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "cloudkitty-api"
     service: "{{ cloudkitty_services[service_name] }}"
-    config_json: "{{ cloudkitty_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cloudkitty_conf: "{{ cloudkitty_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ cloudkitty_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cloudkitty_api_container: "{{ check_cloudkitty_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,22 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or cloudkitty_conf.changed | bool
-      or cloudkitty_conf_wsgi.changed | bool
-      or policy_overwriting.changed | bool
-      or cloudkitty_api_container.changed | bool
 
 - name: Restart cloudkitty-processor container
   vars:
     service_name: "cloudkitty-processor"
     service: "{{ cloudkitty_services[service_name] }}"
-    config_json: "{{ cloudkitty_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cloudkitty_conf: "{{ cloudkitty_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ cloudkitty_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cloudkitty_processor_container: "{{ check_cloudkitty_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -43,9 +28,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or cloudkitty_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or cloudkitty_processor_container.changed | bool
diff --git a/ansible/roles/cloudkitty/tasks/config.yml b/ansible/roles/cloudkitty/tasks/config.yml
index 7758f0635298ba61d16ea98bdd8bc742da2dc1e4..709b134426b1235d3113f0a7a0d7a5947dce6635 100644
--- a/ansible/roles/cloudkitty/tasks/config.yml
+++ b/ansible/roles/cloudkitty/tasks/config.yml
@@ -57,14 +57,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: cloudkitty_config_jsons
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ cloudkitty_services }}"
   notify:
-    - Restart cloudkitty-api container
-    - Restart cloudkitty-processor container
+    - Restart {{ item.key }} container
 
 - name: Copying over cloudkitty.conf
   vars:
@@ -79,14 +77,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/cloudkitty.conf"
     mode: "0660"
   become: true
-  register: cloudkitty_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ cloudkitty_services }}"
   notify:
-    - Restart cloudkitty-api container
-    - Restart cloudkitty-processor container
+    - Restart {{ item.key }} container
 
 - name: Copying over wsgi-cloudkitty.conf
   vars:
@@ -96,7 +92,6 @@
     dest: "{{ node_config_directory }}/cloudkitty-api/wsgi-cloudkitty.conf"
     mode: "0660"
   become: true
-  register: cloudkitty_conf_wsgi
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -109,15 +104,13 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ cloudkitty_policy_file }}"
     mode: "0660"
   become: true
-  register: cloudkitty_policy_overwriting
   when:
     - cloudkitty_policy_file is defined
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ cloudkitty_services }}"
   notify:
-    - Restart cloudkitty-api container
-    - Restart cloudkitty-processor container
+    - Restart {{ item.key }} container
 
 - name: Check cloudkitty containers
   become: true
@@ -128,12 +121,10 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_cloudkitty_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ cloudkitty_services }}"
   notify:
-    - Restart cloudkitty-api container
-    - Restart cloudkitty-processor container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/collectd/handlers/main.yml b/ansible/roles/collectd/handlers/main.yml
index 806482e4b5d5c2ab5fdeb0205222fecb36cb685a..b80f41c1bb9bc8a7af7db70c0c212b9aad69af28 100644
--- a/ansible/roles/collectd/handlers/main.yml
+++ b/ansible/roles/collectd/handlers/main.yml
@@ -3,8 +3,6 @@
   vars:
     service_name: "collectd"
     service: "{{ collectd_services[service_name] }}"
-    config_json: "{{ collectd_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    collectd_container: "{{ check_collectd_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -16,8 +14,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or collectd_conf.changed | bool
-      or collectd_container.changed | bool
diff --git a/ansible/roles/collectd/tasks/config.yml b/ansible/roles/collectd/tasks/config.yml
index 3577d535f3eb8c101e8651b29774274f84c01a1e..d15ab2eca3934cc1fb509aaf8c3c086383ad4768 100644
--- a/ansible/roles/collectd/tasks/config.yml
+++ b/ansible/roles/collectd/tasks/config.yml
@@ -31,7 +31,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: collectd_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -52,7 +51,6 @@
     - "{{ node_custom_config }}/collectd/collectd.conf"
     - "{{ node_custom_config }}/collectd.conf"
     - "collectd.conf.j2"
-  register: collectd_conf
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -69,7 +67,6 @@
     privileged: "{{ item.value.privileged | default(False) }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_collectd_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/common/handlers/main.yml b/ansible/roles/common/handlers/main.yml
index 8bf52676473b342c13898fcb5554f02177871ada..0cffc22713945f4f305a5393a6bc4c470a2c88a1 100644
--- a/ansible/roles/common/handlers/main.yml
+++ b/ansible/roles/common/handlers/main.yml
@@ -3,8 +3,6 @@
   vars:
     service_name: "fluentd"
     service: "{{ common_services[service_name] }}"
-    config_json: "{{ common_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    fluentd_container: "{{ check_common_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -16,25 +14,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - config_json.changed | bool
-      or fluentd_input.changed | bool
-      or fluentd_input_custom.changed | bool
-      or fluentd_output.changed | bool
-      or fluentd_output_custom.changed | bool
-      or fluentd_format.changed | bool
-      or fluentd_format_custom.changed | bool
-      or fluentd_filter.changed | bool
-      or fluentd_filter_custom.changed | bool
-      or fluentd_td_agent.changed | bool
-      or fluentd_container.changed | bool
 
 - name: Restart kolla-toolbox container
   vars:
     service_name: "kolla-toolbox"
     service: "{{ common_services[service_name] }}"
-    config_json: "{{ common_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    kolla_toolbox_container: "{{ check_common_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -47,9 +31,6 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - config_json.changed | bool
-      or kolla_toolbox_container.changed | bool
   notify:
     - Initializing toolbox container using normal user
 
@@ -62,8 +43,6 @@
   vars:
     service_name: "cron"
     service: "{{ common_services[service_name] }}"
-    config_json: "{{ common_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cron_container: "{{ check_common_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -75,7 +54,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - config_json.changed | bool
-      or cron_confs.changed | bool
-      or cron_container.changed | bool
diff --git a/ansible/roles/common/tasks/config.yml b/ansible/roles/common/tasks/config.yml
index a62da293288f1007c9b04613f942623035e9eac4..94f20689934fe10c7e57dbbb6ce2622fdfb3f050 100644
--- a/ansible/roles/common/tasks/config.yml
+++ b/ansible/roles/common/tasks/config.yml
@@ -32,7 +32,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: common_config_jsons
   when: item.value.enabled | bool
   with_dict: "{{ common_services }}"
   notify:
@@ -44,7 +43,6 @@
     dest: "{{ node_config_directory }}/fluentd/input/{{ item }}.conf"
     mode: "0660"
   become: true
-  register: fluentd_input
   when: enable_fluentd | bool
   with_items:
     - "00-global"
@@ -75,7 +73,6 @@
     src: "{{ item.path }}"
     dest: "{{ node_config_directory }}/fluentd/input/{{ item.path | basename }}"
     mode: "0660"
-  register: fluentd_input_custom
   when:
     - enable_fluentd | bool
   with_items: "{{ find_custom_fluentd_inputs.files }}"
@@ -94,7 +91,6 @@
     dest: "{{ node_config_directory }}/fluentd/output/{{ item.name }}.conf"
     mode: "0660"
   become: true
-  register: fluentd_output
   when:
     - enable_fluentd | bool
     - item.enabled | bool
@@ -140,7 +136,6 @@
     dest: "{{ node_config_directory }}/fluentd/output/{{ item.path | basename }}"
     mode: "0660"
   become: true
-  register: fluentd_output_custom
   when:
     - enable_fluentd | bool
   with_items: "{{ find_custom_fluentd_outputs.files }}"
@@ -153,7 +148,6 @@
     dest: "{{ node_config_directory }}/fluentd/format/{{ item }}.conf"
     mode: "0660"
   become: true
-  register: fluentd_format
   with_items:
     - "apache_access"
     - "wsgi_access"
@@ -176,7 +170,6 @@
     src: "{{ item.path }}"
     dest: "{{ node_config_directory }}/fluentd/format/{{ item.path | basename }}"
     mode: "0660"
-  register: fluentd_format_custom
   when:
     - enable_fluentd | bool
   with_items: "{{ find_custom_fluentd_format.files }}"
@@ -189,7 +182,6 @@
     dest: "{{ node_config_directory }}/fluentd/filter/{{ item.dest }}.conf"
     mode: "0660"
   become: true
-  register: fluentd_filter
   with_items:
     - src: 00-record_transformer
       dest: 00-record_transformer
@@ -214,7 +206,6 @@
     dest: "{{ node_config_directory }}/fluentd/filter/{{ item.path | basename }}"
     mode: "0660"
   become: true
-  register: fluentd_filter_custom
   with_items: "{{ find_custom_fluentd_filters.files }}"
   when: enable_fluentd | bool
   notify:
@@ -226,7 +217,6 @@
     dest: "{{ node_config_directory }}/{{ item }}/td-agent.conf"
     mode: "0660"
   become: true
-  register: fluentd_td_agent
   with_items:
     - "fluentd"
   when: enable_fluentd | bool
@@ -239,7 +229,6 @@
     dest: "{{ node_config_directory }}/cron/logrotate/{{ item.name }}.conf"
     mode: "0660"
   become: true
-  register: cron_confs
   when: item.enabled | bool
   with_items:
     - { name: "ansible", enabled: "yes" }
@@ -332,7 +321,6 @@
     dimensions: "{{ item.value.dimensions }}"
     privileged: "{{ item.value.privileged | default(False) }}"
     environment: "{{ item.value.environment }}"
-  register: check_common_containers
   when:
     - kolla_action != "config"
     - item.value.enabled | bool
diff --git a/ansible/roles/common/tasks/inspect.yml b/ansible/roles/common/tasks/inspect.yml
new file mode 100644
index 0000000000000000000000000000000000000000..e5ee6727e34c0013793e3024f2b51e69818f044f
--- /dev/null
+++ b/ansible/roles/common/tasks/inspect.yml
@@ -0,0 +1,6 @@
+---
+- name: Inspect common services
+  include_role:
+    name: inspect
+  vars:
+    inspect_services: "{{ common_services }}"
diff --git a/ansible/roles/congress/handlers/main.yml b/ansible/roles/congress/handlers/main.yml
index e71c2cc523b960e5628f7f029bfd34c13589a8d6..7295a953ac0c07c87f1a7c898df3ca99f8756ddd 100644
--- a/ansible/roles/congress/handlers/main.yml
+++ b/ansible/roles/congress/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "congress-api"
     service: "{{ congress_services[service_name] }}"
-    config_json: "{{ congress_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    congress_conf: "{{ congress_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ congress_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    congress_api_container: "{{ check_congress_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,21 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or congress_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or congress_api_container.changed | bool
 
 - name: Restart congress-policy-engine container
   vars:
     service_name: "congress-policy-engine"
     service: "{{ congress_services[service_name] }}"
-    config_json: "{{ congress_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    congress_conf: "{{ congress_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ congress_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    congress_policy_engin_container: "{{ check_congress_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -42,21 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or congress_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or congress_policy_engin_container.changed | bool
 
 - name: Restart congress-datasource container
   vars:
     service_name: "congress-datasource"
     service: "{{ congress_services[service_name] }}"
-    config_json: "{{ congress_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    congress_conf: "{{ congress_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ congress_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    congress_datasource_container: "{{ check_congress_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -67,9 +43,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or congress_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or congress_datasource_container.changed | bool
diff --git a/ansible/roles/congress/tasks/config.yml b/ansible/roles/congress/tasks/config.yml
index 120e15bb8f21dd49ca1db566326a340ea3150e30..269bcd25b1b519908c0768771e2aea7349656adb 100644
--- a/ansible/roles/congress/tasks/config.yml
+++ b/ansible/roles/congress/tasks/config.yml
@@ -35,7 +35,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: congress_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -56,7 +55,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/congress.conf"
     mode: "0660"
   become: true
-  register: congress_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -70,7 +68,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ congress_policy_file }}"
     mode: "0660"
   become: true
-  register: congress_policy_overwriting
   when:
     - congress_policy_file is defined
     - inventory_hostname in groups[item.value.group]
@@ -88,7 +85,6 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_congress_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/cyborg/handlers/main.yml b/ansible/roles/cyborg/handlers/main.yml
index 97dcbcdb4eabec227cb4c4deca5fe0a578069d1f..a888384be229d7d9183587434e98daebcc29ab17 100644
--- a/ansible/roles/cyborg/handlers/main.yml
+++ b/ansible/roles/cyborg/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "cyborg-api"
     service: "{{ cyborg_services[service_name] }}"
-    config_json: "{{ cyborg_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cyborg_conf: "{{ cyborg_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ cyborg_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cyborg_api_container: "{{ check_cyborg_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,21 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or cyborg_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or cyborg_api_container.changed | bool
 
 - name: Restart cyborg-conductor container
   vars:
     service_name: "cyborg-conductor"
     service: "{{ cyborg_services[service_name] }}"
-    config_json: "{{ cyborg_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cyborg_conf: "{{ cyborg_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ cyborg_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cyborg_conductor_container: "{{ check_cyborg_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -42,21 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or cyborg_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or cyborg_conductor_container.changed | bool
 
 - name: Restart cyborg-agent container
   vars:
     service_name: "cyborg-agent"
     service: "{{ cyborg_services[service_name] }}"
-    config_json: "{{ cyborg_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cyborg_conf: "{{ cyborg_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ cyborg_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    cyborg_agent_container: "{{ check_cyborg_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -67,9 +43,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or cyborg_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or cyborg_agent_container.changed | bool
diff --git a/ansible/roles/cyborg/tasks/config.yml b/ansible/roles/cyborg/tasks/config.yml
index 0c24e728104126790feb1b3349eae5c5500b9c25..b222b5ae3f99774e3b4bfa8f0ccc61dfe64972fe 100644
--- a/ansible/roles/cyborg/tasks/config.yml
+++ b/ansible/roles/cyborg/tasks/config.yml
@@ -35,16 +35,13 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ cyborg_policy_file }}"
     mode: "0660"
   become: true
-  register: cyborg_policy_overwriting
   when:
     - cyborg_policy_file is defined
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ cyborg_services }}"
   notify:
-    - Restart cyborg-api container
-    - Restart cyborg-agent container
-    - Restart cyborg-conductor container
+    - Restart {{ item.key }} container
 
 - name: Copying over config.json files for services
   template:
@@ -52,15 +49,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: cyborg_config_jsons
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ cyborg_services }}"
   notify:
-    - Restart cyborg-api container
-    - Restart cyborg-agent container
-    - Restart cyborg-conductor container
+    - Restart {{ item.key }} container
 
 - name: Copying over cyborg.conf
   vars:
@@ -75,15 +69,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/cyborg.conf"
     mode: "0660"
   become: true
-  register: cyborg_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ cyborg_services }}"
   notify:
-    - Restart cyborg-api container
-    - Restart cyborg-agent container
-    - Restart cyborg-conductor container
+    - Restart {{ item.key }} container
 
 - name: Checking whether cyborg-api-paste.ini file exists
   vars:
@@ -100,11 +91,11 @@
   template:
     src: "{{ node_custom_config }}/cyborg/cyborg-api-paste.ini"
     dest: "{{ node_config_directory }}/cyborg-api/api-paste.ini"
+    mode: "0660"
   when:
     - inventory_hostname in groups['cyborg-api']
     - service.enabled | bool
     - check_cyborg_api_paste_ini.stat.exists
-  register: cyborg_api_paste
   notify:
     - Restart cyborg-api container
 
@@ -117,13 +108,10 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_cyborg_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ cyborg_services }}"
   notify:
-    - Restart cyborg-api container
-    - Restart cyborg-agent container
-    - Restart cyborg-conductor container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/designate/handlers/main.yml b/ansible/roles/designate/handlers/main.yml
index 5f6207f96abbe70af1faeea017d5169c4cb664c0..1fa1740fecd247c602a929ebf766be48c5b434d6 100644
--- a/ansible/roles/designate/handlers/main.yml
+++ b/ansible/roles/designate/handlers/main.yml
@@ -3,8 +3,6 @@
   vars:
     service_name: "designate-backend-bind9"
     service: "{{ designate_services[service_name] }}"
-    config_json: "{{ designate_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    designate_backend_bind9_container: "{{ check_designate_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -15,22 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or designate_rndc_conf.changed | bool
-      or designate_rndc_key_file.changed | bool
-      or designate_named.changed | bool
-      or designate_backend_bind9_container.changed | bool
 
 - name: Restart designate-api container
   vars:
     service_name: "designate-api"
     service: "{{ designate_services[service_name] }}"
-    config_json: "{{ designate_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    designate_conf: "{{ designate_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ designate_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    designate_api_container: "{{ check_designate_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -41,21 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or designate_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or designate_api_container.changed | bool
 
 - name: Restart designate-central container
   vars:
     service_name: "designate-central"
     service: "{{ designate_services[service_name] }}"
-    config_json: "{{ designate_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    designate_conf: "{{ designate_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ designate_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    designate_central_container: "{{ check_designate_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -66,21 +43,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or designate_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or designate_central_container.changed | bool
 
 - name: Restart designate-producer container
   vars:
     service_name: "designate-producer"
     service: "{{ designate_services[service_name] }}"
-    config_json: "{{ designate_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    designate_conf: "{{ designate_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ designate_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    designate_producer_container: "{{ check_designate_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -91,21 +58,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or designate_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or designate_producer_container.changed | bool
 
 - name: Restart designate-mdns container
   vars:
     service_name: "designate-mdns"
     service: "{{ designate_services[service_name] }}"
-    config_json: "{{ designate_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    designate_conf: "{{ designate_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ designate_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    designate_mdns_container: "{{ check_designate_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -116,21 +73,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or designate_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or designate_mdns_container.changed | bool
 
 - name: Restart designate-worker container
   vars:
     service_name: "designate-worker"
     service: "{{ designate_services[service_name] }}"
-    config_json: "{{ designate_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    designate_conf: "{{ designate_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ designate_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    designate_worker_container: "{{ check_designate_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -141,24 +88,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or designate_conf.changed | bool
-      or designate_rndc_conf.changed | bool
-      or designate_rndc_key_file.changed | bool
-      or policy_overwriting.changed | bool
-      or designate_worker_container.changed | bool
-      or designate_pool.changed | bool
 
 - name: Restart designate-sink container
   vars:
     service_name: "designate-sink"
     service: "{{ designate_services[service_name] }}"
-    config_json: "{{ designate_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    designate_conf: "{{ designate_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ designate_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    designate_sink_container: "{{ check_designate_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -169,9 +103,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or designate_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or designate_sink_container.changed | bool
diff --git a/ansible/roles/designate/tasks/backend_external.yml b/ansible/roles/designate/tasks/backend_external.yml
index 888928633abdda452d25d424922bd74bd3e93e54..717fb5f52549cf53a6a7c5f4695b5d58f9a68687 100644
--- a/ansible/roles/designate/tasks/backend_external.yml
+++ b/ansible/roles/designate/tasks/backend_external.yml
@@ -4,7 +4,6 @@
     src: "{{ node_custom_config }}/designate/rndc.conf"
     dest: "{{ node_config_directory }}/{{ item.key }}/rndc.conf"
     mode: "0660"
-  register: designate_rndc_conf
   when:
     - designate_backend_external == 'bind9'
     - item.key in [ "designate-worker" ]
@@ -12,14 +11,13 @@
     - item.value.enabled | bool
   with_dict: "{{ designate_services }}"
   notify:
-    - Restart designate-worker container
+    - Restart {{ item.key }} container
 
 - name: Copying over rndc.key (designate_backend_external)
   template:
     src: "{{ node_custom_config }}/designate/rndc.key"
     dest: "{{ node_config_directory }}/{{ item.key }}/rndc.key"
     mode: "0660"
-  register: designate_rndc_key_file
   when:
     - designate_backend_external == 'bind9'
     - item.key in [ "designate-worker" ]
@@ -27,4 +25,4 @@
     - item.value.enabled | bool
   with_dict: "{{ designate_services }}"
   notify:
-    - Restart designate-worker container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/designate/tasks/config.yml b/ansible/roles/designate/tasks/config.yml
index 7cbf431dd09583683e085db99d6f4191e5420a19..cb1e3d4875553de36e5ec99a8a9fcab9b58520f2 100644
--- a/ansible/roles/designate/tasks/config.yml
+++ b/ansible/roles/designate/tasks/config.yml
@@ -35,19 +35,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: designate_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ designate_services }}"
   notify:
-    - Restart designate-api container
-    - Restart designate-central container
-    - Restart designate-producer container
-    - Restart designate-mdns container
-    - Restart designate-sink container
-    - Restart designate-backend-bind9 container
-    - Restart designate-worker container
+    - Restart {{ item.key }} container
 
 - name: Copying over designate.conf
   vars:
@@ -62,18 +55,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/designate.conf"
     mode: "0660"
   become: true
-  register: designate_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ designate_services }}"
   notify:
-    - Restart designate-api container
-    - Restart designate-central container
-    - Restart designate-producer container
-    - Restart designate-mdns container
-    - Restart designate-sink container
-    - Restart designate-worker container
+    - Restart {{ item.key }} container
 
 - name: Copying over pools.yaml
   vars:
@@ -83,7 +70,6 @@
     dest: "{{ node_config_directory }}/designate-worker/pools.yaml"
     mode: "0660"
   become: true
-  register: designate_pool
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -101,7 +87,6 @@
     dest: "{{ node_config_directory }}/designate-backend-bind9/named.conf"
     mode: "0660"
   become: true
-  register: designate_named
   when:
     - designate_backend == 'bind9'
     - inventory_hostname in groups[service.group]
@@ -120,7 +105,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/rndc.conf"
     mode: "0660"
   become: true
-  register: designate_rndc_conf
   when:
     - designate_backend == 'bind9' and designate_backend_external == 'no'
     - item.key in [ "designate-backend-bind9", "designate-worker" ]
@@ -128,8 +112,7 @@
     - item.value.enabled | bool
   with_dict: "{{ designate_services }}"
   notify:
-    - Restart designate-backend-bind9 container
-    - Restart designate-worker container
+    - Restart {{ item.key }} container
 
 - name: Copying over rndc.key
   template:
@@ -137,7 +120,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/rndc.key"
     mode: "0660"
   become: true
-  register: designate_rndc_key_file
   when:
     - designate_backend == 'bind9' and designate_backend_external == 'no'
     - item.key in [ "designate-backend-bind9", "designate-worker" ]
@@ -145,8 +127,7 @@
     - item.value.enabled | bool
   with_dict: "{{ designate_services }}"
   notify:
-    - Restart designate-backend-bind9 container
-    - Restart designate-worker container
+    - Restart {{ item.key }} container
 
 - include_tasks: backend_external.yml
   when: designate_backend_external == 'bind9'
@@ -157,19 +138,13 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ designate_policy_file }}"
     mode: "0660"
   become: true
-  register: designate_policy_overwriting
   when:
     - designate_policy_file is defined
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ designate_services }}"
   notify:
-    - Restart designate-api container
-    - Restart designate-central container
-    - Restart designate-producer container
-    - Restart designate-mdns container
-    - Restart designate-sink container
-    - Restart designate-worker container
+    - Restart {{ item.key }} container
 
 - name: Check designate containers
   become: true
@@ -180,17 +155,10 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_designate_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ designate_services }}"
   notify:
-    - Restart designate-api container
-    - Restart designate-central container
-    - Restart designate-producer container
-    - Restart designate-mdns container
-    - Restart designate-sink container
-    - Restart designate-backend-bind9 container
-    - Restart designate-worker container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/elasticsearch/handlers/main.yml b/ansible/roles/elasticsearch/handlers/main.yml
index 31b82c9087a69b873488ebc0e3fe6a35b8a357dd..790cfb7d9f7dbaaa0b830e726d95cdfe4356ad13 100644
--- a/ansible/roles/elasticsearch/handlers/main.yml
+++ b/ansible/roles/elasticsearch/handlers/main.yml
@@ -3,9 +3,6 @@
   vars:
     service_name: "elasticsearch"
     service: "{{ elasticsearch_services[service_name] }}"
-    config_json: "{{ elasticsearch_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    elasticsearch_conf: "{{ elasticsearch_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    elasticsearch_container: "{{ check_elasticsearch_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,8 +14,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or elasticsearch_conf.changed | bool
-      or elasticsearch_container.changed | bool
diff --git a/ansible/roles/elasticsearch/tasks/config.yml b/ansible/roles/elasticsearch/tasks/config.yml
index 1b450b0f59329b7e21ebee696bacc898b126dc5a..096c09d873860b6d4046f1f9a1691acf998c319b 100644
--- a/ansible/roles/elasticsearch/tasks/config.yml
+++ b/ansible/roles/elasticsearch/tasks/config.yml
@@ -27,13 +27,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: elasticsearch_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ elasticsearch_services }}"
   notify:
-    - Restart elasticsearch container
+    - Restart {{ item.key }} container
 
 - name: Copying over elasticsearch.yml
   template:
@@ -41,13 +40,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ item.key }}.yml"
     mode: "0660"
   become: true
-  register: elasticsearch_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ elasticsearch_services }}"
   notify:
-    - Restart elasticsearch container
+    - Restart {{ item.key }} container
 
 - name: Check elasticsearch containers
   become: true
@@ -59,11 +57,10 @@
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
     environment: "{{ item.value.environment }}"
-  register: check_elasticsearch_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ elasticsearch_services }}"
   notify:
-    - Restart elasticsearch container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/etcd/handlers/main.yml b/ansible/roles/etcd/handlers/main.yml
index c9fd38d132c4e4fc831582fc2c2bc6ca1605c7ec..dd5a3d1f9987f31d2f648224399fa0a228405186 100644
--- a/ansible/roles/etcd/handlers/main.yml
+++ b/ansible/roles/etcd/handlers/main.yml
@@ -3,8 +3,6 @@
   vars:
     service_name: "etcd"
     service: "{{ etcd_services[service_name] }}"
-    config_json: "{{ etcd_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    etcd_container: "{{ check_etcd_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -16,7 +14,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - inventory_hostname in groups[service.group]
-    - config_json.changed | bool
-      or etcd_container.changed | bool
diff --git a/ansible/roles/etcd/tasks/config.yml b/ansible/roles/etcd/tasks/config.yml
index dd827b2223c133428bb42e422859640d774e5da7..0d98fef79ce98749cd1568eee04a40717deb1fdb 100644
--- a/ansible/roles/etcd/tasks/config.yml
+++ b/ansible/roles/etcd/tasks/config.yml
@@ -18,13 +18,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: etcd_config_jsons
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ etcd_services }}"
   notify:
-    - Restart etcd container
+    - Restart {{ item.key }} container
 
 - name: Check etcd containers
   become: true
@@ -36,11 +35,10 @@
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
     environment: "{{ item.value.environment }}"
-  register: check_etcd_containers
   when:
     - kolla_action != "config"
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ etcd_services }}"
   notify:
-    - Restart etcd container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/freezer/handlers/main.yml b/ansible/roles/freezer/handlers/main.yml
index 3a5be2c0b01a549e8aaab50ea639384ecd4848ce..69074b318451b43999a8ab74b68ff77705ea9ece 100644
--- a/ansible/roles/freezer/handlers/main.yml
+++ b/ansible/roles/freezer/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "freezer-api"
     service: "{{ freezer_services[service_name] }}"
-    config_json: "{{ freezer_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    freezer_conf: "{{ freezer_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ freezer_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    freezer_api_container: "{{ check_freezer_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,22 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or wsgi_freezer_api.changed | bool
-      or freezer_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or freezer_api_container.changed | bool
 
 - name: Restart freezer-scheduler container
   vars:
     service_name: "freezer-scheduler"
     service: "{{ freezer_services[service_name] }}"
-    config_json: "{{ freezer_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    freezer_conf: "{{ freezer_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ freezer_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    freezer_scheduler_container: "{{ check_freezer_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -43,9 +28,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or freezer_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or freezer_scheduler_container.changed | bool
diff --git a/ansible/roles/freezer/tasks/config.yml b/ansible/roles/freezer/tasks/config.yml
index eb969317b137d0a1f9781b13788fdb6def4b9b15..cf85a2789a9e3989028f7f7a74a1a4c12b090dbc 100644
--- a/ansible/roles/freezer/tasks/config.yml
+++ b/ansible/roles/freezer/tasks/config.yml
@@ -35,7 +35,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: freezer_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -51,7 +50,6 @@
     dest: "{{ node_config_directory }}/freezer-api/wsgi-freezer-api.conf"
     mode: "0660"
   become: true
-  register: wsgi_freezer_api
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -71,7 +69,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/freezer.conf"
     mode: "0660"
   become: true
-  register: freezer_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -85,7 +82,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ freezer_policy_file }}"
     mode: "0660"
   become: true
-  register: freezer_policy_overwriting
   when:
     - freezer_policy_file is defined
     - inventory_hostname in groups[item.value.group]
@@ -103,7 +99,6 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes | reject('equalto', '') | list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_freezer_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/glance/handlers/main.yml b/ansible/roles/glance/handlers/main.yml
index 1c1770412172d217835b1743fbc5e41198c080aa..93218c02d3626a76e30d9a30fa279c9af6f265a4 100644
--- a/ansible/roles/glance/handlers/main.yml
+++ b/ansible/roles/glance/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "glance-api"
     service: "{{ glance_services[service_name] }}"
-    config_json: "{{ glance_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    glance_conf: "{{ glance_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ glance_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    glance_api_container: "{{ check_glance_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -18,13 +14,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in glance_api_hosts
-    - service.enabled | bool
-    - config_json.changed | bool
-      or glance_cache_conf.changed | bool
-      or glance_conf.changed | bool
-      or glance_swift_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or glance_api_container.changed | bool
-      or ( glance_upgrading is defined and glance_upgrading | bool )
-      or ( glance_api_ceph_files is defined and glance_api_ceph_files.changed | bool )
diff --git a/ansible/roles/glance/tasks/ceph.yml b/ansible/roles/glance/tasks/ceph.yml
index f8fd4979d7baaa3e43ec10f5cf9e684d0b8b5fc8..8acec68ea137f35ce2d133e2ac1efd881566888c 100644
--- a/ansible/roles/glance/tasks/ceph.yml
+++ b/ansible/roles/glance/tasks/ceph.yml
@@ -9,6 +9,8 @@
     mode: "0660"
   become: true
   when: inventory_hostname in groups['glance-api']
+  notify:
+    - Restart glance-api container
 
 - include_tasks: ../../ceph_pools.yml
   vars:
@@ -37,6 +39,8 @@
     mode: "0600"
   become: true
   when: inventory_hostname in groups['glance-api']
+  notify:
+    - Restart glance-api container
 
 - name: Ensuring config directory has correct owner and permission
   become: true
diff --git a/ansible/roles/glance/tasks/config.yml b/ansible/roles/glance/tasks/config.yml
index c8618676ec51e660d80d45816b24ba8e09f6576b..dd34fbadcad4d27bd1a4d961d1f3825189d3c726 100644
--- a/ansible/roles/glance/tasks/config.yml
+++ b/ansible/roles/glance/tasks/config.yml
@@ -45,13 +45,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: glance_config_jsons
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ glance_services }}"
   notify:
-    - Restart glance-api container
+    - Restart {{ item.key }} container
 
 - name: Copying over glance-*.conf
   vars:
@@ -66,13 +65,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ item.key }}.conf"
     mode: "0660"
   become: true
-  register: glance_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ glance_services }}"
   notify:
-    - Restart glance-api container
+    - Restart {{ item.key }} container
 
 - name: Copying over glance-cache.conf for glance_api
   vars:
@@ -86,7 +84,6 @@
     dest: "{{ node_config_directory }}/glance-api/glance-cache.conf"
     mode: "0660"
   become: true
-  register: glance_cache_conf
   when:
     - glance_api.enabled | bool
     - inventory_hostname in groups[glance_api.group]
@@ -106,7 +103,6 @@
     dest: "{{ node_config_directory }}/glance-api/glance-swift.conf"
     mode: "0660"
   become: true
-  register: glance_swift_conf
   when:
     - glance_api.enabled | bool
     - inventory_hostname in groups[glance_api.group]
@@ -120,14 +116,13 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ glance_policy_file }}"
     mode: "0660"
   become: true
-  register: glance_policy_overwriting
   when:
     - glance_policy_file is defined
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ glance_services }}"
   notify:
-    - Restart glance-api container
+    - Restart {{ item.key }} container
 
 - name: Check glance containers
   become: true
@@ -139,11 +134,10 @@
     environment: "{{ item.value.environment | default(omit) }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_glance_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ glance_services }}"
   notify:
-    - Restart glance-api container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/glance/tasks/external_ceph.yml b/ansible/roles/glance/tasks/external_ceph.yml
index 4bf6f8f87dd107c40b82e8c8fc960b7f3de9867e..33b20731b8691dbd3eaa220a149d38a4a97cdf21 100644
--- a/ansible/roles/glance/tasks/external_ceph.yml
+++ b/ansible/roles/glance/tasks/external_ceph.yml
@@ -5,7 +5,6 @@
     dest: "{{ node_config_directory }}/glance-api/"
     mode: "0660"
   become: true
-  register: glance_api_ceph_files
   when: inventory_hostname in groups['glance-api']
   with_fileglob:
     - "{{ node_custom_config }}/glance/ceph*"
diff --git a/ansible/roles/gnocchi/handlers/main.yml b/ansible/roles/gnocchi/handlers/main.yml
index bf90fc3a87a6868c44921754ecae4f1543dd8e3c..d7ca93a6609af19a29ef537a32c4913e2f4e20b6 100644
--- a/ansible/roles/gnocchi/handlers/main.yml
+++ b/ansible/roles/gnocchi/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "gnocchi-api"
     service: "{{ gnocchi_services[service_name] }}"
-    config_json: "{{ gnocchi_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    gnocchi_conf: "{{ gnocchi_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ gnocchi_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    gnocchi_api_container: "{{ check_gnocchi_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,22 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or gnocchi_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or gnocchi_wsgi_conf.changed | bool
-      or gnocchi_api_container.changed | bool
 
 - name: Restart gnocchi-metricd container
   vars:
     service_name: "gnocchi-metricd"
     service: "{{ gnocchi_services[service_name] }}"
-    config_json: "{{ gnocchi_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    gnocchi_conf: "{{ gnocchi_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ gnocchi_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    gnocchi_metricd_container: "{{ check_gnocchi_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -43,21 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or gnocchi_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or gnocchi_metricd_container.changed | bool
 
 - name: Restart gnocchi-statsd container
   vars:
     service_name: "gnocchi-statsd"
     service: "{{ gnocchi_services[service_name] }}"
-    config_json: "{{ gnocchi_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    gnocchi_conf: "{{ gnocchi_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ gnocchi_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    gnocchi_statsd_container: "{{ check_gnocchi_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -68,9 +43,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or gnocchi_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or gnocchi_statsd_container.changed | bool
diff --git a/ansible/roles/gnocchi/tasks/ceph.yml b/ansible/roles/gnocchi/tasks/ceph.yml
index 8a1665659910fa7d697d9bd7723e1987e949e090..e26d54b04174703196c81c2caa0e844f36370f97 100644
--- a/ansible/roles/gnocchi/tasks/ceph.yml
+++ b/ansible/roles/gnocchi/tasks/ceph.yml
@@ -13,6 +13,8 @@
     - "gnocchi-api"
     - "gnocchi-metricd"
     - "gnocchi-statsd"
+  notify:
+    - Restart {{ item }} container
 
 - include_tasks: ../../ceph_pools.yml
   vars:
@@ -45,3 +47,5 @@
     - "gnocchi-api"
     - "gnocchi-metricd"
     - "gnocchi-statsd"
+  notify:
+    - Restart {{ item }} container
diff --git a/ansible/roles/gnocchi/tasks/config.yml b/ansible/roles/gnocchi/tasks/config.yml
index 88fca1614bceabf6af69bafae84397e82c28839f..1468e77b687a850725a570423670895603295bdd 100644
--- a/ansible/roles/gnocchi/tasks/config.yml
+++ b/ansible/roles/gnocchi/tasks/config.yml
@@ -45,15 +45,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: gnocchi_config_jsons
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ gnocchi_services }}"
   notify:
-    - Restart gnocchi-api container
-    - Restart gnocchi-metricd container
-    - Restart gnocchi-statsd container
+    - Restart {{ item.key }} container
 
 - name: Copying over gnocchi.conf
   vars:
@@ -68,15 +65,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/gnocchi.conf"
     mode: "0660"
   become: true
-  register: gnocchi_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ gnocchi_services }}"
   notify:
-    - Restart gnocchi-api container
-    - Restart gnocchi-metricd container
-    - Restart gnocchi-statsd container
+    - Restart {{ item.key }} container
 
 - name: Copying over wsgi-gnocchi.conf
   vars:
@@ -86,7 +80,6 @@
     dest: "{{ node_config_directory }}/{{ item }}/wsgi-gnocchi.conf"
     mode: "0660"
   become: true
-  register: gnocchi_wsgi_conf
   when:
     - inventory_hostname in groups['gnocchi-api']
     - service.enabled | bool
@@ -101,16 +94,13 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ gnocchi_policy_file }}"
     mode: "0660"
   become: true
-  register: gnocchi_policy_overwriting
   when:
     - gnocchi_policy_file is defined
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ gnocchi_services }}"
   notify:
-    - Restart gnocchi-api container
-    - Restart gnocchi-metricd container
-    - Restart gnocchi-statsd container
+    - Restart {{ item.key }} container
 
 - name: Check gnocchi containers
   become: true
@@ -121,13 +111,10 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_gnocchi_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ gnocchi_services }}"
   notify:
-    - Restart gnocchi-api container
-    - Restart gnocchi-metricd container
-    - Restart gnocchi-statsd container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/gnocchi/tasks/external_ceph.yml b/ansible/roles/gnocchi/tasks/external_ceph.yml
index 48e2bb5290e49ff4bc7108f555a39c43efad9a4d..e75c1ac269d211bb0259915080c1364047204fea 100644
--- a/ansible/roles/gnocchi/tasks/external_ceph.yml
+++ b/ansible/roles/gnocchi/tasks/external_ceph.yml
@@ -11,9 +11,7 @@
     - "gnocchi-metricd"
     - "gnocchi-statsd"
   notify:
-    - Restart gnocchi-api container
-    - Restart gnocchi-metricd container
-    - Restart gnocchi-statsd container
+    - Restart {{ item }} container
 
 - name: Copy over ceph gnocchi keyring
   copy:
@@ -27,9 +25,7 @@
     - "gnocchi-metricd"
     - "gnocchi-statsd"
   notify:
-    - Restart gnocchi-api container
-    - Restart gnocchi-metricd container
-    - Restart gnocchi-statsd container
+    - Restart {{ item }} container
 
 - name: Ensuring config directory has correct owner and permission
   become: true
diff --git a/ansible/roles/grafana/handlers/main.yml b/ansible/roles/grafana/handlers/main.yml
index a8fb340e1c576a9c869da0c839fab9710dd09a25..871c9a8c039ee75fb591aa8f740d6d49240e32e2 100644
--- a/ansible/roles/grafana/handlers/main.yml
+++ b/ansible/roles/grafana/handlers/main.yml
@@ -3,9 +3,6 @@
   vars:
     service_name: "grafana"
     service: "{{ grafana_services[service_name] }}"
-    config_json: "{{ grafana_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    grafana_conf: "{{ grafana_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    grafana_container: "{{ check_grafana_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -16,10 +13,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or grafana_conf.changed | bool
-      or grafana_container.changed | bool
-      or grafana_home_dashboard.changed | bool
-      or grafana_prometheus_data_source.changed | bool
diff --git a/ansible/roles/grafana/tasks/config.yml b/ansible/roles/grafana/tasks/config.yml
index 6e90192029d7010c0abc1275eda7db8d926c9a20..d2a27751a42045b953db89212af3f9f338154556 100644
--- a/ansible/roles/grafana/tasks/config.yml
+++ b/ansible/roles/grafana/tasks/config.yml
@@ -24,13 +24,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: grafana_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ grafana_services }}"
   notify:
-    - Restart grafana container
+    - Restart {{ item.key }} container
 
 - name: Copying over grafana.ini
   vars:
@@ -43,13 +42,12 @@
     dest: "{{ node_config_directory }}/grafana/grafana.ini"
     mode: "0660"
   become: true
-  register: grafana_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ grafana_services }}"
   notify:
-    - Restart grafana container
+    - Restart {{ item.key }} container
 
 - name: Copying over extra configuration file
   become: true
@@ -62,7 +60,7 @@
   with_items:
     - "{{ check_extra_conf_grafana.files }}"
   notify:
-    - Restart grafana container
+    - Restart {{ item.key }} container
 
 - name: Check if custom grafana home dashboard exists
   local_action: "stat path={{ node_custom_config }}/grafana/grafana_home_dashboard.json"
@@ -74,10 +72,9 @@
     src: "{{ node_custom_config }}/grafana/grafana_home_dashboard.json"
     dest: "{{ node_config_directory }}/grafana/grafana_home_dashboard.json"
     mode: "0660"
-  register: grafana_home_dashboard
   when: grafana_custom_dashboard_file.stat.exists
   notify:
-    - Restart grafana container
+    - Restart {{ item.key }} container
 
 - name: Configuring Prometheus as data source for Grafana
   vars:
@@ -87,7 +84,6 @@
     dest: "{{ node_config_directory }}/grafana/prometheus.yaml"
     mode: "0660"
   become: true
-  register: grafana_prometheus_data_source
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -97,7 +93,7 @@
     - "{{ node_custom_config }}/grafana/prometheus.yaml"
     - "prometheus.yaml.j2"
   notify:
-    - Restart grafana container
+    - Restart {{ item.key }} container
 
 - name: Check grafana containers
   become: true
@@ -108,11 +104,10 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_grafana_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ grafana_services }}"
   notify:
-    - Restart grafana container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/heat/handlers/main.yml b/ansible/roles/heat/handlers/main.yml
index a28dd2744ef544d544d6fd566ae918d0eeafcb3a..f2a4a47ae6b8d614851fb22962c601a2359423ca 100644
--- a/ansible/roles/heat/handlers/main.yml
+++ b/ansible/roles/heat/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "heat-api"
     service: "{{ heat_services[service_name] }}"
-    config_json: "{{ heat_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    heat_conf: "{{ heat_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ heat_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    heat_api_container: "{{ check_heat_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,21 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or heat_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or heat_api_container.changed | bool
 
 - name: Restart heat-api-cfn container
   vars:
     service_name: "heat-api-cfn"
     service: "{{ heat_services[service_name] }}"
-    config_json: "{{ heat_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    heat_conf: "{{ heat_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ heat_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    heat_api_cfn_container: "{{ check_heat_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -42,21 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or heat_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or heat_api_cfn_container.changed | bool
 
 - name: Restart heat-engine container
   vars:
     service_name: "heat-engine"
     service: "{{ heat_services[service_name] }}"
-    config_json: "{{ heat_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    heat_conf: "{{ heat_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ heat_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    heat_engine_container: "{{ check_heat_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -67,9 +43,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or heat_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or heat_engine_container.changed | bool
diff --git a/ansible/roles/heat/tasks/config.yml b/ansible/roles/heat/tasks/config.yml
index 38063d33ddbbed200ea45a7d4fb7503587efbe3b..7195830bab1c9bcc6dd9da05f137fde0213edf80 100644
--- a/ansible/roles/heat/tasks/config.yml
+++ b/ansible/roles/heat/tasks/config.yml
@@ -35,15 +35,12 @@
     src: "{{ item.key }}.json.j2"
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
-  register: heat_config_jsons
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ heat_services }}"
   notify:
-    - Restart heat-api container
-    - Restart heat-api-cfn container
-    - Restart heat-engine container
+    - Restart {{ item.key }} container
 
 - name: Copying over the heat-engine environment file
   become: true
@@ -67,15 +64,12 @@
       - "{{ node_custom_config }}/heat/{{ inventory_hostname }}/heat.conf"
     dest: "{{ node_config_directory }}/{{ item.key }}/heat.conf"
     mode: "0660"
-  register: heat_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ heat_services }}"
   notify:
-    - Restart heat-api container
-    - Restart heat-api-cfn container
-    - Restart heat-engine container
+    - Restart {{ item.key }} container
 
 - name: Copying over existing policy file
   become: true
@@ -83,15 +77,13 @@
     src: "{{ heat_policy_file_path }}"
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ heat_policy_file }}"
     mode: "0660"
-  register: heat_policy_overwriting
   when:
     - heat_policy_file is defined
+    - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ heat_services }}"
   notify:
-    - Restart heat-api container
-    - Restart heat-api-cfn container
-    - Restart heat-engine container
+    - Restart {{ item.key }} container
 
 - name: Check heat containers
   become: true
@@ -102,13 +94,10 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_heat_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ heat_services }}"
   notify:
-    - Restart heat-api container
-    - Restart heat-api-cfn container
-    - Restart heat-engine container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/horizon/handlers/main.yml b/ansible/roles/horizon/handlers/main.yml
index bf15bee9f4e9f514a1d2582be984bac6a38988c1..c1f7110e5e26f6aefb532791e3ad02b055a58d5c 100644
--- a/ansible/roles/horizon/handlers/main.yml
+++ b/ansible/roles/horizon/handlers/main.yml
@@ -14,11 +14,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - horizon_config_json is changed
-      or horizon_conf is changed
-      or horizon_local_settings is changed
-      or horizon_custom_local_settings is changed
-      or policy_jsons is changed
-      or check_horizon_container is changed
diff --git a/ansible/roles/horizon/tasks/config.yml b/ansible/roles/horizon/tasks/config.yml
index 0ea4b3bfc0aa49b0dad618ab213dac13aa2084f5..59242ba04aa9f4b6bd655664d1e3a9a257d4c38d 100644
--- a/ansible/roles/horizon/tasks/config.yml
+++ b/ansible/roles/horizon/tasks/config.yml
@@ -54,7 +54,6 @@
     src: "horizon.json.j2"
     dest: "{{ node_config_directory }}/horizon/config.json"
     mode: "0660"
-  register: horizon_config_json
   when:
     - horizon.enabled | bool
     - inventory_hostname in groups[horizon.group]
@@ -69,7 +68,6 @@
     src: "{{ item }}"
     dest: "{{ node_config_directory }}/horizon/horizon.conf"
     mode: "0660"
-  register: horizon_conf
   with_first_found:
     - "{{ node_custom_config }}/horizon/{{ inventory_hostname }}/horizon.conf"
     - "{{ node_custom_config }}/horizon/horizon.conf"
@@ -92,7 +90,6 @@
     - "{{ node_custom_config }}/horizon/{{ inventory_hostname }}/local_settings"
     - "{{ node_custom_config }}/horizon/local_settings"
     - "local_settings.j2"
-  register: horizon_local_settings
   when:
     - horizon.enabled | bool
     - inventory_hostname in groups[horizon.group]
@@ -111,7 +108,6 @@
     - "{{ node_custom_config }}/horizon/{{ inventory_hostname }}/custom_local_settings"
     - "{{ node_custom_config }}/horizon/custom_local_settings"
     - "custom_local_settings.j2"
-  register: horizon_custom_local_settings
   when:
     - horizon.enabled | bool
     - inventory_hostname in groups[horizon.group]
@@ -126,7 +122,6 @@
     src: "{{ item }}"
     dest: "{{ node_config_directory }}/horizon/{{ item | basename }}"
     mode: "0660"
-  register: policy_jsons
   when:
     - horizon.enabled | bool
     - inventory_hostname in groups[horizon.group]
@@ -146,7 +141,6 @@
     environment: "{{ horizon.environment }}"
     volumes: "{{ horizon.volumes }}"
     dimensions: "{{ horizon.dimensions }}"
-  register: check_horizon_container
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[horizon.group]
diff --git a/ansible/roles/influxdb/handlers/main.yml b/ansible/roles/influxdb/handlers/main.yml
index 2e9bd3bc13a2fff7c997187654b833d97e5720ee..493df2075022f3c0f255d9b56e04f90ccbc974e1 100644
--- a/ansible/roles/influxdb/handlers/main.yml
+++ b/ansible/roles/influxdb/handlers/main.yml
@@ -3,8 +3,6 @@
   vars:
     service_name: "influxdb"
     service: "{{ influxdb_services[service_name] }}"
-    config_json: "{{ influxdb_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    influxdb_container: "{{ check_influxdb_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -15,8 +13,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or influxdb_confs.changed | bool
-      or influxdb_container.changed | bool
diff --git a/ansible/roles/influxdb/tasks/config.yml b/ansible/roles/influxdb/tasks/config.yml
index 91e4ace9333cd2cb8aa1c6c229fec111bbefc07d..16b3fc5efb6679b76ff8acab215ce542f9b62a76 100644
--- a/ansible/roles/influxdb/tasks/config.yml
+++ b/ansible/roles/influxdb/tasks/config.yml
@@ -18,7 +18,6 @@
     dest: "{{ node_config_directory }}/influxdb/config.json"
     mode: "0660"
   become: true
-  register: influxdb_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -34,7 +33,6 @@
     dest: "{{ node_config_directory }}/influxdb/influxdb.conf"
     mode: "0660"
   become: true
-  register: influxdb_confs
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -54,7 +52,6 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_influxdb_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/ironic/handlers/main.yml b/ansible/roles/ironic/handlers/main.yml
index 7fbbc317af26a459a964eb1e55533042b8cc09aa..35fa73d021edb076eeef4f2d8315935d2d96faec 100644
--- a/ansible/roles/ironic/handlers/main.yml
+++ b/ansible/roles/ironic/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "ironic-conductor"
     service: "{{ ironic_services[service_name] }}"
-    config_json: "{{ ironic_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ironic_conf: "{{ ironic_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_json: "{{ ironic_policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ironic_conductor_container: "{{ check_ironic_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -18,21 +14,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or ironic_conf.changed | bool
-      or policy_json.changed | bool
-      or ironic_conductor_container.changed | bool
 
 - name: Restart ironic-api container
   vars:
     service_name: "ironic-api"
     service: "{{ ironic_services[service_name] }}"
-    config_json: "{{ ironic_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ironic_conf: "{{ ironic_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_json: "{{ ironic_policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ironic_api_container: "{{ check_ironic_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -43,20 +29,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or ironic_conf.changed | bool
-      or policy_json.changed | bool
-      or ironic_api_container.changed | bool
 
 - name: Restart ironic-inspector container
   vars:
     service_name: "ironic-inspector"
     service: "{{ ironic_services[service_name] }}"
-    config_json: "{{ ironic_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_json: "{{ ironic_policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ironic_inspector_container: "{{ check_ironic_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -68,19 +45,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or ironic_inspector_confs.changed | bool
-      or policy_json.changed | bool
-      or ironic_inspector_container.changed | bool
 
 - name: Restart ironic-pxe container
   vars:
     service_name: "ironic-pxe"
     service: "{{ ironic_services[service_name] }}"
-    config_json: "{{ ironic_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ironic_pxe_container: "{{ check_ironic_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -91,20 +60,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or ironic_pxe_confs.changed | bool
-      or ironic_pxe_uefi_confs.changed | bool
-      or ironic_kernel.changed | bool
-      or ironic_pxe_container.changed | bool
 
 - name: Restart ironic-ipxe container
   vars:
     service_name: "ironic-ipxe"
     service: "{{ ironic_services[service_name] }}"
-    config_json: "{{ ironic_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ironic_ipxe_container: "{{ check_ironic_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -115,20 +75,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or ironic_ipxe_inspector_boot_script.changed | bool
-      or ironic_ipxe_apache_confs.changed | bool
-      or ironic_kernel_ipxe.changed | bool
-      or ironic_ipxe_container.changed | bool
 
 - name: Restart ironic-dnsmasq container
   vars:
     service_name: "ironic-dnsmasq"
     service: "{{ ironic_services[service_name] }}"
-    config_json: "{{ ironic_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ironic_dnsmasq_container: "{{ check_ironic_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -140,8 +91,3 @@
     cap_add: "{{ service.cap_add }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or ironic_dnsmasq_confs.changed | bool
-      or ironic_dnsmasq_container.changed | bool
diff --git a/ansible/roles/ironic/tasks/config.yml b/ansible/roles/ironic/tasks/config.yml
index 552f8adc9bd529f5e9f91e5588fe27b6174aa25e..fa270f62a7db10f4b48101e48da406578cf118b9 100644
--- a/ansible/roles/ironic/tasks/config.yml
+++ b/ansible/roles/ironic/tasks/config.yml
@@ -42,7 +42,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: ironic_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -63,7 +62,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/ironic.conf"
     mode: "0660"
   become: true
-  register: ironic_confs
   when:
     - item.key in [ "ironic-api", "ironic-conductor" ]
     - inventory_hostname in groups[item.value.group]
@@ -85,7 +83,6 @@
     dest: "{{ node_config_directory }}/ironic-inspector/inspector.conf"
     mode: "0660"
   become: true
-  register: ironic_inspector_confs
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -100,7 +97,6 @@
     dest: "{{ node_config_directory }}/ironic-dnsmasq/dnsmasq.conf"
     mode: "0660"
   become: true
-  register: ironic_dnsmasq_confs
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -119,7 +115,6 @@
     dest: "{{ node_config_directory }}/ironic-pxe/default"
     mode: "0660"
   become: true
-  register: ironic_pxe_confs
   with_first_found:
     - "{{ node_custom_config }}/ironic/pxelinux.default"
     - "{{ node_custom_config }}/ironic/{{ inventory_hostname }}/pxelinux.default"
@@ -142,7 +137,6 @@
     dest: "{{ node_config_directory }}/ironic-pxe/default"
     mode: "0660"
   become: true
-  register: ironic_pxe_uefi_confs
   with_first_found:
     - "{{ node_custom_config }}/ironic/ironic_pxe_uefi.default"
     - "{{ node_custom_config }}/ironic/{{ inventory_hostname }}/ironic_pxe_uefi.default"
@@ -162,14 +156,12 @@
     dest: "{{ node_config_directory }}/ironic-pxe/{{ item }}"
     mode: "0660"
   become: true
-  register: ironic_kernel
   with_items:
     - "ironic-agent.kernel"
     - "ironic-agent.initramfs"
   when:
     # Only required when Ironic inspector is in use.
     - groups['ironic-inspector'] | length > 0
-    - inventory_hostname in groups['ironic-pxe']
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
     - not enable_ironic_pxe_uefi | bool
@@ -185,7 +177,6 @@
     dest: "{{ node_config_directory }}/ironic-ipxe/{{ item }}"
     mode: "0660"
   become: true
-  register: ironic_kernel_ipxe
   with_items:
     - "ironic-agent.kernel"
     - "ironic-agent.initramfs"
@@ -205,7 +196,6 @@
     dest: "{{ node_config_directory }}/ironic-ipxe/inspector.ipxe"
     mode: "0660"
   become: true
-  register: ironic_ipxe_inspector_boot_script
   with_first_found:
     - "{{ node_custom_config }}/ironic/{{ inventory_hostname }}/inspector.ipxe"
     - "{{ node_custom_config }}/ironic/inspector.ipxe"
@@ -226,7 +216,6 @@
     dest: "{{ node_config_directory }}/ironic-ipxe/httpd.conf"
     mode: "0660"
   become: true
-  register: ironic_ipxe_apache_confs
   with_first_found:
     - "{{ node_custom_config }}/ironic/ironic-ipxe-httpd.conf"
     - "ironic-ipxe-httpd.conf.j2"
@@ -247,7 +236,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ ironic_policy_file }}"
     mode: "0660"
   become: true
-  register: ironic_policy_jsons
   when:
     - ironic_policy_file is defined
     - item.key in services_require_policy_json
@@ -268,7 +256,6 @@
     cap_add: "{{ item.value.cap_add|default([]) }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_ironic_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/kafka/handlers/main.yml b/ansible/roles/kafka/handlers/main.yml
index ba71ff36f2227a71a766aaef3fe8c24ec84f683d..28b45dc303a2a552e0877388950c077be257251d 100644
--- a/ansible/roles/kafka/handlers/main.yml
+++ b/ansible/roles/kafka/handlers/main.yml
@@ -3,9 +3,6 @@
   vars:
     service_name: "kafka"
     service: "{{ kafka_services[service_name] }}"
-    config_json: "{{ kafka_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    kafka_conf: "{{ kafka_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    kafka_container: "{{ check_kafka_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,8 +14,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or kafka_conf.changed | bool
-      or kafka_container.changed | bool
diff --git a/ansible/roles/kafka/tasks/config.yml b/ansible/roles/kafka/tasks/config.yml
index 05a926dcca90ec81af51e53cbe36a7ead48e2a28..83da40425ec195fe67fb9da02f4d56c39daf4de9 100644
--- a/ansible/roles/kafka/tasks/config.yml
+++ b/ansible/roles/kafka/tasks/config.yml
@@ -18,7 +18,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: kafka_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -35,7 +34,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/kafka.server.properties"
     mode: "0660"
   become: true
-  register: kafka_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -53,7 +51,6 @@
     volumes: "{{ item.value.volumes }}"
     environment: "{{ item.value.environment }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_kafka_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/karbor/handlers/main.yml b/ansible/roles/karbor/handlers/main.yml
index 9dcd077400e58867b06456acac3c7444a7b9343e..6865792ba05f8ec406584a72fc605d892d4c993e 100644
--- a/ansible/roles/karbor/handlers/main.yml
+++ b/ansible/roles/karbor/handlers/main.yml
@@ -3,9 +3,6 @@
   vars:
     service_name: "karbor-api"
     service: "{{ karbor_services[service_name] }}"
-    config_json: "{{ karbor_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    karbor_conf: "{{ karbor_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    karbor_api_container: "{{ check_karbor_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -16,19 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or karbor_conf.changed | bool
-      or karbor_api_container.changed | bool
 
 - name: Restart karbor-protection container
   vars:
     service_name: "karbor-protection"
     service: "{{ karbor_services[service_name] }}"
-    config_json: "{{ karbor_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    karbor_conf: "{{ karbor_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    karbor_protection_container: "{{ check_karbor_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -39,21 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or karbor_conf.changed | bool
-      or providers_conf.changed
-      or openstack_infra_conf.changed | bool
-      or karbor_protection_container.changed | bool
 
 - name: Restart karbor-operationengine container
   vars:
     service_name: "karbor-operationengine"
     service: "{{ karbor_services[service_name] }}"
-    config_json: "{{ karbor_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    karbor_conf: "{{ karbor_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    karbor_operationengine_container: "{{ check_karbor_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -64,8 +43,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or karbor_conf.changed | bool
-      or karbor_operationengine_container.changed | bool
diff --git a/ansible/roles/karbor/tasks/config.yml b/ansible/roles/karbor/tasks/config.yml
index be84f3c0dbbc5d342232d3aff89007159ad99f3f..953175bf29b6dc666457f3650364744dc6bd7e8d 100644
--- a/ansible/roles/karbor/tasks/config.yml
+++ b/ansible/roles/karbor/tasks/config.yml
@@ -18,15 +18,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: karbor_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ karbor_services }}"
   notify:
-    - Restart karbor-api container
-    - Restart karbor-protection container
-    - Restart karbor-operationengine container
+    - Restart {{ item.key }} container
 
 - name: Copying over karbor.conf
   vars:
@@ -41,15 +38,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/karbor.conf"
     mode: "0660"
   become: true
-  register: karbor_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ karbor_services }}"
   notify:
-    - Restart karbor-api container
-    - Restart karbor-protection container
-    - Restart karbor-operationengine container
+    - Restart {{ item.key }} container
 
 - name: Copying over provider configs
   vars:
@@ -62,7 +56,6 @@
   become: true
   with_fileglob:
     - "{{ node_custom_config }}/karbor/{{ service_name }}/providers.d/*"
-  register: providers_conf
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -80,7 +73,6 @@
     dest: "{{ node_config_directory }}/{{ service_name }}/providers.d/openstack-infra.conf"
     mode: "0660"
   become: true
-  register: openstack_infra_conf
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -96,13 +88,10 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_karbor_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ karbor_services }}"
   notify:
-    - Restart karbor-api container
-    - Restart karbor-protection container
-    - Restart karbor-operationengine container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/keystone/handlers/main.yml b/ansible/roles/keystone/handlers/main.yml
index 3173a86308fa88d62c17f1b110524f6525c7a602..fa6b30e0c1f4b943df3ae875239c69c7391af260 100644
--- a/ansible/roles/keystone/handlers/main.yml
+++ b/ansible/roles/keystone/handlers/main.yml
@@ -24,17 +24,12 @@
   run_once: True
   when:
     - kolla_action == "upgrade"
-    - service.enabled | bool
     - inventory_hostname == groups[service.group][0]
 
 - name: Restart keystone container
   vars:
     service_name: "keystone"
     service: "{{ keystone_services[service_name] }}"
-    config_json: "{{ keystone_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    keystone_conf: "{{ keystone_confs.results|selectattr('item.key', 'equalto', service_name)|first  }}"
-    policy_overwriting: "{{ keystone_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    keystone_container: "{{ check_keystone_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -45,22 +40,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or keystone_conf.changed | bool
-      or keystone_domains.changed | bool
-      or policy_overwriting.changed | bool
-      or keystone_wsgi.changed | bool
-      or keystone_paste_ini.changed | bool
-      or keystone_container.changed | bool
 
 - name: Restart keystone-ssh container
   vars:
     service_name: "keystone-ssh"
     service: "{{ keystone_services[service_name] }}"
-    config_json: "{{ keystone_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    keystone_ssh_container: "{{ check_keystone_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -71,20 +55,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or keystone_ssh_confs.changed | bool
-      or keystone_ssh_container.changed | bool
 
 - name: Restart keystone-fernet container
   vars:
     service_name: "keystone-fernet"
     service: "{{ keystone_services[service_name] }}"
-    config_json: "{{ keystone_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    keystone_conf: "{{ keystone_confs.results|selectattr('item.key', 'equalto', service_name)|first  }}"
-    policy_overwriting: "{{ keystone_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    keystone_fernet_container: "{{ check_keystone_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -95,13 +70,6 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or keystone_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or keystone_fernet_confs.changed | bool
-      or keystone_fernet_container.changed | bool
 
 - name: Finish keystone database upgrade
   vars:
@@ -125,5 +93,4 @@
   run_once: True
   when:
     - kolla_action == "upgrade"
-    - service.enabled | bool
     - inventory_hostname == groups[service.group][-1]
diff --git a/ansible/roles/keystone/tasks/config.yml b/ansible/roles/keystone/tasks/config.yml
index 395c97af3c97f8c2d43be6af21027210d9267d86..a36c06b5d04a6e8e6441fc7b8b2189a979248446 100644
--- a/ansible/roles/keystone/tasks/config.yml
+++ b/ansible/roles/keystone/tasks/config.yml
@@ -39,16 +39,13 @@
     src: "{{ item.key }}.json.j2"
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
-  register: keystone_config_jsons
   become: true
   with_dict: "{{ keystone_services }}"
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   notify:
-    - Restart keystone container
-    - Restart keystone-ssh container
-    - Restart keystone-fernet container
+    - Restart {{ item.key }} container
 
 - name: Copying over keystone.conf
   vars:
@@ -63,15 +60,13 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/keystone.conf"
     mode: "0660"
   become: true
-  register: keystone_confs
   with_dict: "{{ keystone_services }}"
   when:
     - inventory_hostname in groups[item.value.group]
     - item.key in [ "keystone", "keystone-fernet" ]
     - item.value.enabled | bool
   notify:
-    - Restart keystone container
-    - Restart keystone-fernet container
+    - Restart {{ item.key }} container
 
 - name: Create Keystone domain-specific config directory
   vars:
@@ -114,7 +109,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ keystone_policy_file }}"
     mode: "0660"
   become: true
-  register: keystone_policy_overwriting
   when:
     - inventory_hostname in groups[item.value.group]
     - item.key in [ "keystone", "keystone-fernet" ]
@@ -122,8 +116,7 @@
     - keystone_policy_file is defined
   with_dict: "{{ keystone_services }}"
   notify:
-    - Restart keystone container
-    - Restart keystone-fernet container
+    - Restart {{ item.key }} container
 
 - name: Copying over wsgi-keystone.conf
   vars:
@@ -133,7 +126,6 @@
     dest: "{{ node_config_directory }}/keystone/wsgi-keystone.conf"
     mode: "0660"
   become: true
-  register: keystone_wsgi
   when:
     - inventory_hostname in groups[keystone.group]
     - keystone.enabled | bool
@@ -161,7 +153,6 @@
     dest: "{{ node_config_directory }}/keystone/keystone-paste.ini"
     mode: "0660"
   become: true
-  register: keystone_paste_ini
   when:
     - inventory_hostname in groups[keystone.group]
     - keystone.enabled | bool
@@ -194,7 +185,6 @@
     dest: "{{ node_config_directory }}/keystone-fernet/{{ item.dest }}"
     mode: "0660"
   become: true
-  register: keystone_fernet_confs
   ignore_errors: "{{ ansible_check_mode }}"
   with_items:
     - { src: "crontab.j2", dest: "crontab" }
@@ -217,7 +207,6 @@
     dest: "{{ node_config_directory }}/keystone-ssh/{{ item.dest }}"
     mode: "0660"
   become: true
-  register: keystone_ssh_confs
   with_items:
     - { src: "sshd_config.j2", dest: "sshd_config" }
     - { src: "id_rsa.pub", dest: "id_rsa.pub" }
@@ -240,9 +229,6 @@
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
-  register: check_keystone_containers
   with_dict: "{{ keystone_services }}"
   notify:
-    - Restart keystone container
-    - Restart keystone-ssh container
-    - Restart keystone-fernet container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/kibana/handlers/main.yml b/ansible/roles/kibana/handlers/main.yml
index 97def7aab21170448d838090ef2bdf3435a9f824..5a2b7960ba22a3eff3a4b3d0ef4491b3d5705c2d 100644
--- a/ansible/roles/kibana/handlers/main.yml
+++ b/ansible/roles/kibana/handlers/main.yml
@@ -3,8 +3,6 @@
   vars:
     service_name: "kibana"
     service: "{{ kibana_services[service_name] }}"
-    config_json: "{{ kibana_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    kibana_container: "{{ check_kibana_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -15,8 +13,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or kibana_conf.changed | bool
-      or kibana_container.changed | bool
diff --git a/ansible/roles/kibana/tasks/config.yml b/ansible/roles/kibana/tasks/config.yml
index 11000f0af8aa0be5472c7fd1d513b3af4bfe385c..84bc175e436bfecf15ed3d94348f862aca2f09f7 100644
--- a/ansible/roles/kibana/tasks/config.yml
+++ b/ansible/roles/kibana/tasks/config.yml
@@ -18,7 +18,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: kibana_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -34,7 +33,6 @@
     dest: "{{ node_config_directory }}/kibana/kibana.yml"
     mode: "0660"
   become: true
-  register: kibana_conf
   with_first_found:
     - "{{ node_custom_config }}/kibana/{{ inventory_hostname }}/kibana.yml"
     - "{{ node_custom_config }}/kibana/kibana.yml"
@@ -54,7 +52,6 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_kibana_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/kuryr/handlers/main.yml b/ansible/roles/kuryr/handlers/main.yml
index f9dc1c8751042f87e0041a45942f84fafefd2db7..76d79ab28b6283379b0559f1c0854a6c2c2686a9 100644
--- a/ansible/roles/kuryr/handlers/main.yml
+++ b/ansible/roles/kuryr/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "kuryr"
     service: "{{ kuryr_services[service_name] }}"
-    config_json: "{{ kuryr_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    kuryr_conf: "{{ kuryr_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ kuryr_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    kuryr_container: "{{ check_kuryr_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -19,10 +15,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or kuryr_conf.changed | bool
-      or kuryr_spec.changed | bool
-      or policy_overwriting.changed | bool
-      or kuryr_container.changed | bool
diff --git a/ansible/roles/kuryr/tasks/config.yml b/ansible/roles/kuryr/tasks/config.yml
index adffced3015461abd776a3d45ee62aa3b4188b86..67ce6b74b6cfdf8908925af794e7285cfccd5ca1 100644
--- a/ansible/roles/kuryr/tasks/config.yml
+++ b/ansible/roles/kuryr/tasks/config.yml
@@ -35,7 +35,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: kuryr_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -56,7 +55,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/kuryr.conf"
     mode: "0660"
   become: true
-  register: kuryr_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -72,7 +70,6 @@
     dest: "{{ node_config_directory }}/{{ item }}/kuryr.spec"
     mode: "0660"
   become: true
-  register: kuryr_spec
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -87,7 +84,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ kuryr_policy_file }}"
     mode: "0660"
   become: true
-  register: kuryr_policy_overwriting
   when:
     - kuryr_policy_file is defined
     - inventory_hostname in groups[item.value.group]
@@ -107,7 +103,6 @@
     cap_add: "{{ item.value.cap_add }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_kuryr_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/magnum/handlers/main.yml b/ansible/roles/magnum/handlers/main.yml
index 82205c44a8a425ad9821aca9bd1d95923acc392a..1fd190f17df8815fcc7777ce83db61bc59b80216 100644
--- a/ansible/roles/magnum/handlers/main.yml
+++ b/ansible/roles/magnum/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "magnum-api"
     service: "{{ magnum_services[service_name] }}"
-    config_json: "{{ magnum_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    magnum_conf: "{{ magnum_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ magnum_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    magnum_api_container: "{{ check_magnum_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -18,21 +14,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or magnum_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or magnum_api_container.changed | bool
 
 - name: Restart magnum-conductor container
   vars:
     service_name: "magnum-conductor"
     service: "{{ magnum_services[service_name] }}"
-    config_json: "{{ magnum_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    magnum_conf: "{{ magnum_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ magnum_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    magnum_conductor_container: "{{ check_magnum_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -44,9 +30,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or magnum_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or magnum_conductor_container.changed | bool
diff --git a/ansible/roles/magnum/tasks/config.yml b/ansible/roles/magnum/tasks/config.yml
index a8d1aadec7f8019a59a7f7a58b56c28d1a0248f5..6deee911966290b32f97d398e8a16f277b917f79 100644
--- a/ansible/roles/magnum/tasks/config.yml
+++ b/ansible/roles/magnum/tasks/config.yml
@@ -35,14 +35,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: magnum_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ magnum_services }}"
   notify:
-    - Restart magnum-api container
-    - Restart magnum-conductor container
+    - Restart {{ item.key }} container
 
 - name: Copying over magnum.conf
   vars:
@@ -57,14 +55,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/magnum.conf"
     mode: "0660"
   become: true
-  register: magnum_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ magnum_services }}"
   notify:
-    - Restart magnum-api container
-    - Restart magnum-conductor container
+    - Restart {{ item.key }} container
 
 - name: Copying over existing policy file
   template:
@@ -72,15 +68,13 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ magnum_policy_file }}"
     mode: "0660"
   become: true
-  register: magnum_policy_overwriting
   when:
     - magnum_policy_file is defined
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ magnum_services }}"
   notify:
-    - Restart magnum-api container
-    - Restart magnum-conductor container
+    - Restart {{ item.key }} container
 
 - name: Check magnum containers
   become: true
@@ -92,12 +86,10 @@
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
     environment: "{{ item.value.environment }}"
-  register: check_magnum_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ magnum_services }}"
   notify:
-    - Restart magnum-api container
-    - Restart magnum-conductor container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/manila/handlers/main.yml b/ansible/roles/manila/handlers/main.yml
index 17f03b88e0bd0b5cab24bcb5acb04311a188d47a..da4ec8615f8638c9bae371d49548d8423ac7a134 100644
--- a/ansible/roles/manila/handlers/main.yml
+++ b/ansible/roles/manila/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "manila-api"
     service: "{{ manila_services[service_name] }}"
-    config_json: "{{ manila_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    manila_conf: "{{ manila_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ manila_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    manila_api_container: "{{ check_manila_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,21 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or manila_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or manila_api_container.changed | bool
 
 - name: Restart manila-data container
   vars:
     service_name: "manila-data"
     service: "{{ manila_services[service_name] }}"
-    config_json: "{{ manila_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    manila_conf: "{{ manila_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ manila_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    manila_data_container: "{{ check_manila_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -43,21 +29,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or manila_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or manila_data_container.changed | bool
 
 - name: Restart manila-scheduler container
   vars:
     service_name: "manila-scheduler"
     service: "{{ manila_services[service_name] }}"
-    config_json: "{{ manila_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    manila_conf: "{{ manila_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ manila_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    manila_scheduler_container: "{{ check_manila_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -68,20 +44,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or manila_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or manila_scheduler_container.changed | bool
 
 - name: Restart manila-share container
   vars:
     service_name: "manila-share"
     service: "{{ manila_services[service_name] }}"
-    config_json: "{{ manila_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ manila_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    manila_share_container: "{{ check_manila_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -94,9 +61,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or manila_conf_share.changed | bool
-      or policy_overwriting.changed | bool
-      or manila_share_container.changed | bool
diff --git a/ansible/roles/manila/tasks/ceph.yml b/ansible/roles/manila/tasks/ceph.yml
index 1deaf6b0c0997e752bbcbebf42c33cd3ef69ee26..dc02f7e589deed1f73fdbd32c69e5701f48dbd83 100644
--- a/ansible/roles/manila/tasks/ceph.yml
+++ b/ansible/roles/manila/tasks/ceph.yml
@@ -8,6 +8,8 @@
     dest: "{{ node_config_directory }}/manila-share/ceph.conf"
     mode: "0660"
   become: true
+  notify:
+    - Restart manila-share container
 
 - name: Pulling cephx keyring for manila
   become: true
@@ -26,3 +28,5 @@
     dest: "{{ node_config_directory }}/manila-share/ceph.client.manila.keyring"
     mode: "0600"
   become: true
+  notify:
+    - Restart manila-share container
diff --git a/ansible/roles/manila/tasks/config.yml b/ansible/roles/manila/tasks/config.yml
index dc22c9a8b4e827cea224b2efedbd545b2bb11166..127ee8281580d0da3c808073e8da1aecee612c64 100644
--- a/ansible/roles/manila/tasks/config.yml
+++ b/ansible/roles/manila/tasks/config.yml
@@ -49,7 +49,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: manila_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -70,16 +69,13 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/manila.conf"
     mode: "0660"
   become: true
-  register: manila_confs
   when:
     - item.key in [ "manila-api", "manila-data", "manila-scheduler" ]
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ manila_services }}"
   notify:
-    - Restart manila-api container
-    - Restart manila-data container
-    - Restart manila-scheduler container
+    - Restart {{ item.key }} container
 
 - name: Copying over manila-share.conf
   vars:
@@ -97,7 +93,6 @@
     dest: "{{ node_config_directory }}/{{ item }}/manila.conf"
     mode: "0660"
   become: true
-  register: manila_conf_share
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -111,7 +106,6 @@
     src: "{{ manila_policy_file_path }}"
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ manila_policy_file }}"
     mode: "0660"
-  register: manila_policy_overwriting
   when:
     - manila_policy_file is defined
     - inventory_hostname in groups[item.value.group]
@@ -130,7 +124,6 @@
     privileged: "{{ item.value.privileged|default(False) }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_manila_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/memcached/handlers/main.yml b/ansible/roles/memcached/handlers/main.yml
index f9c470e09289ea6f1e07e2b1704382723ce065be..b76466d62004645fc93293aeeaeebd12efae41be 100644
--- a/ansible/roles/memcached/handlers/main.yml
+++ b/ansible/roles/memcached/handlers/main.yml
@@ -12,7 +12,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - memcached_config_json.changed | bool
-      or check_memcached_container.changed | bool
diff --git a/ansible/roles/memcached/tasks/config.yml b/ansible/roles/memcached/tasks/config.yml
index 27e56118d2bbce7b0e87cc96d2d5ebfe2ad733b4..153d933b48185d0b7e4d8d0b25c6dab5fba52770 100644
--- a/ansible/roles/memcached/tasks/config.yml
+++ b/ansible/roles/memcached/tasks/config.yml
@@ -11,14 +11,18 @@
     - "memcached"
 
 - name: Copying over config.json files for services
+  vars:
+    service: "{{ memcached_services.memcached }}"
   template:
     src: "{{ item }}.json.j2"
     dest: "{{ node_config_directory }}/{{ item }}/config.json"
     mode: "0660"
-  register: memcached_config_json
   become: true
   with_items:
     - "memcached"
+  when:
+    - inventory_hostname in groups[service.group]
+    - service.enabled | bool
   notify: Restart memcached container
 
 - name: Check memcached container
@@ -32,9 +36,8 @@
     image: "{{ service.image }}"
     volumes: "{{ service.volumes }}"
     dimensions: "{{ service.dimensions }}"
-  register: check_memcached_container
   when:
+    - kolla_action != "config"
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
-    - kolla_action != "config"
   notify: Restart memcached container
diff --git a/ansible/roles/mistral/handlers/main.yml b/ansible/roles/mistral/handlers/main.yml
index a5ab566546ccf2f412631430e44ba5321863c95c..a9e0ce810a3cad243f3f2506e29daca7dcd352f7 100644
--- a/ansible/roles/mistral/handlers/main.yml
+++ b/ansible/roles/mistral/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "mistral-api"
     service: "{{ mistral_services[service_name] }}"
-    config_json: "{{ mistral_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    mistral_conf: "{{ mistral_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ mistral_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    mistral_api_container: "{{ check_mistral_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,21 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or mistral_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or mistral_api_container.changed | bool
 
 - name: Restart mistral-engine container
   vars:
     service_name: "mistral-engine"
     service: "{{ mistral_services[service_name] }}"
-    config_json: "{{ mistral_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    mistral_conf: "{{ mistral_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ mistral_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    mistral_engine_container: "{{ check_mistral_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -42,21 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or mistral_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or mistral_engine_container.changed | bool
 
 - name: Restart mistral-event-engine container
   vars:
     service_name: "mistral-event-engine"
     service: "{{ mistral_services[service_name] }}"
-    config_json: "{{ mistral_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    mistral_conf: "{{ mistral_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ mistral_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    mistral_event_engine_container: "{{ check_mistral_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -67,22 +43,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or mistral_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or mistral_event_definitions_confs.changed | bool
-      or mistral_event_engine_container.changed | bool
 
 - name: Restart mistral-executor container
   vars:
     service_name: "mistral-executor"
     service: "{{ mistral_services[service_name] }}"
-    config_json: "{{ mistral_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    mistral_conf: "{{ mistral_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ mistral_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    mistral_executor_container: "{{ check_mistral_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -93,9 +58,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or mistral_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or mistral_executor_container.changed | bool
diff --git a/ansible/roles/mistral/tasks/config.yml b/ansible/roles/mistral/tasks/config.yml
index 42dc00c41064281ed866e313c9ffd7186a0c5cd6..a8d0784eaebeca2c2e6bb02e366048f4a337efaa 100644
--- a/ansible/roles/mistral/tasks/config.yml
+++ b/ansible/roles/mistral/tasks/config.yml
@@ -35,7 +35,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: mistral_config_jsons
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
@@ -56,7 +55,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/mistral.conf"
     mode: "0660"
   become: true
-  register: mistral_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
@@ -70,7 +68,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ mistral_policy_file }}"
     mode: "0660"
   become: true
-  register: mistral_policy_overwriting
   when:
     - mistral_policy_file is defined
     - inventory_hostname in groups[item.value.group]
@@ -87,7 +84,6 @@
     src: "{{ item }}"
     dest: "{{ node_config_directory }}/mistral-event-engine/event_definitions.yaml"
     mode: "0660"
-  register: mistral_event_definitions_confs
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -107,7 +103,6 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_mistral_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/monasca/handlers/main.yml b/ansible/roles/monasca/handlers/main.yml
index 50c19637e89e0704d40d11ad7d147f44647fcd91..fa1e811d5b516a6911e55b66a313a1fa4cb17bcb 100644
--- a/ansible/roles/monasca/handlers/main.yml
+++ b/ansible/roles/monasca/handlers/main.yml
@@ -3,8 +3,6 @@
   vars:
     service_name: "monasca-api"
     service: "{{ monasca_services[service_name] }}"
-    config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    monasca_api_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -15,19 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or monasca_api_confs.changed | bool
-      or monasca_api_wsgi_confs.changed | bool
-      or monasca_api_container.changed | bool
 
 - name: Restart monasca-log-api container
   vars:
     service_name: "monasca-log-api"
     service: "{{ monasca_services[service_name] }}"
-    config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    monasca_log_api_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -38,19 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or monasca_log_api_confs.changed | bool
-      or monasca_log_api_wsgi_confs.changed | bool
-      or monasca_log_api_container.changed | bool
 
 - name: Restart monasca-log-transformer container
   vars:
     service_name: "monasca-log-transformer"
     service: "{{ monasca_services[service_name] }}"
-    config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    monasca_log_transformer_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -61,18 +43,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or monasca_log_transformer_confs.changed | bool
-      or monasca_log_transformer_container.changed | bool
 
 - name: Restart monasca-log-persister container
   vars:
     service_name: "monasca-log-persister"
     service: "{{ monasca_services[service_name] }}"
-    config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    monasca_log_persister_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -83,19 +58,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or monasca_log_persister_confs.changed | bool
-      or monasca_log_persister_elasticsearch_template.changed | bool
-      or monasca_log_persister_container.changed | bool
 
 - name: Restart monasca-log-metrics container
   vars:
     service_name: "monasca-log-metrics"
     service: "{{ monasca_services[service_name] }}"
-    config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    monasca_log_metrics_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -106,18 +73,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or monasca_log_metrics_confs.changed | bool
-      or monasca_log_metrics_container.changed | bool
 
 - name: Restart monasca-thresh container
   vars:
     service_name: "monasca-thresh"
     service: "{{ monasca_services[service_name] }}"
-    config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    monasca_thresh_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -128,19 +88,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or monasca_thresh_confs.changed | bool
-      or monasca_thresh_storm_conf.changed | bool
-      or monasca_thresh_container.changed | bool
 
 - name: Restart monasca-notification container
   vars:
     service_name: "monasca-notification"
     service: "{{ monasca_services[service_name] }}"
-    config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    monasca_notification_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -151,19 +103,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or monasca_notification_confs.changed | bool
-      or monasca_notification_plugin_templates.changed | bool
-      or monasca_notification_container.changed | bool
 
 - name: Restart monasca-persister container
   vars:
     service_name: "monasca-persister"
     service: "{{ monasca_services[service_name] }}"
-    config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    monasca_persister_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -174,18 +118,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or monasca_persister_confs.changed | bool
-      or monasca_persister_container.changed | bool
 
 - name: Restart monasca-agent-collector container
   vars:
     service_name: "monasca-agent-collector"
     service: "{{ monasca_services[service_name] }}"
-    config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    monasca_agent_collector_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -197,19 +134,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or monasca_agent_collector_confs.changed | bool
-      or monasca_agent_collector_plugin_confs.changed | bool
-      or monasca_agent_collector_container.changed | bool
 
 - name: Restart monasca-agent-forwarder container
   vars:
     service_name: "monasca-agent-forwarder"
     service: "{{ monasca_services[service_name] }}"
-    config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    monasca_agent_forwarder_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -220,18 +149,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or monasca_agent_forwarder_confs.changed | bool
-      or monasca_agent_forwarder_container.changed | bool
 
 - name: Restart monasca-agent-statsd container
   vars:
     service_name: "monasca-agent-statsd"
     service: "{{ monasca_services[service_name] }}"
-    config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    monasca_agent_statsd_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -242,18 +164,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or monasca_agent_statsd_confs.changed | bool
-      or monasca_agent_statsd_container.changed | bool
 
 - name: Restart monasca-grafana container
   vars:
     service_name: "monasca-grafana"
     service: "{{ monasca_services[service_name] }}"
-    config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    monasca_grafana_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -264,8 +179,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or monasca_grafana_confs.changed | bool
-      or monasca_grafana_container.changed | bool
diff --git a/ansible/roles/monasca/tasks/config.yml b/ansible/roles/monasca/tasks/config.yml
index 1bce0f5328e813e743983b1fe5d09d25d430f1ed..e047089060d21bf56fd50b4e9dccf0a273ecd4b0 100644
--- a/ansible/roles/monasca/tasks/config.yml
+++ b/ansible/roles/monasca/tasks/config.yml
@@ -18,7 +18,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: monasca_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -37,7 +36,6 @@
     dest: "{{ node_config_directory }}/monasca-agent-collector/{{ item }}"
     mode: "0660"
   become: true
-  register: monasca_agent_collector_confs
   with_items:
     - agent-collector.yml
   when:
@@ -78,7 +76,6 @@
     dest: "{{ node_config_directory }}/monasca-agent-collector/plugins/{{ item.path | basename }}"
     mode: "0660"
   become: true
-  register: monasca_agent_collector_plugin_confs
   with_items:
     "{{ agent_plugins.files }}"
   when:
@@ -98,7 +95,6 @@
     dest: "{{ node_config_directory }}/monasca-agent-forwarder/{{ item }}"
     mode: "0660"
   become: true
-  register: monasca_agent_forwarder_confs
   with_items:
     - agent-forwarder.yml
   when:
@@ -118,7 +114,6 @@
     dest: "{{ node_config_directory }}/monasca-agent-statsd/{{ item }}"
     mode: "0660"
   become: true
-  register: monasca_agent_statsd_confs
   with_items:
     - agent-statsd.yml
   when:
@@ -138,7 +133,6 @@
     dest: "{{ node_config_directory }}/monasca-api/{{ item }}"
     mode: "0660"
   become: true
-  register: monasca_api_confs
   with_items:
     - api.conf
     - api-config.ini
@@ -156,7 +150,6 @@
     dest: "{{ node_config_directory }}/monasca-api/wsgi-api.conf"
     mode: "0660"
   become: true
-  register: monasca_api_wsgi_confs
   when:
     - inventory_hostname in groups[service['group']]
     - service.enabled | bool
@@ -174,7 +167,6 @@
     dest: "{{ node_config_directory }}/monasca-log-api/{{ item }}"
     mode: "0660"
   become: true
-  register: monasca_log_api_confs
   with_items:
     - log-api.conf
     - log-api-paste.ini
@@ -192,7 +184,6 @@
     dest: "{{ node_config_directory }}/monasca-log-api/wsgi-log-api.conf"
     mode: "0660"
   become: true
-  register: monasca_log_api_wsgi_confs
   when:
     - inventory_hostname in groups[service['group']]
     - service.enabled | bool
@@ -207,7 +198,6 @@
     dest: "{{ node_config_directory }}/monasca-log-transformer/log-transformer.conf"
     mode: "0660"
   become: true
-  register: monasca_log_transformer_confs
   with_first_found:
     - "{{ node_custom_config }}/monasca/{{ inventory_hostname }}/log-transformer.conf"
     - "{{ node_custom_config }}/monasca/log-transformer.conf"
@@ -226,7 +216,6 @@
     dest: "{{ node_config_directory }}/monasca-log-persister/log-persister.conf"
     mode: "0660"
   become: true
-  register: monasca_log_persister_confs
   with_first_found:
     - "{{ node_custom_config }}/monasca/{{ inventory_hostname }}/log-persister.conf"
     - "{{ node_custom_config }}/monasca/log-persister.conf"
@@ -245,7 +234,6 @@
     dest: "{{ node_config_directory }}/monasca-log-persister/elasticsearch-template.json"
     mode: "0660"
   become: true
-  register: monasca_log_persister_elasticsearch_template
   with_first_found:
     - "{{ node_custom_config }}/monasca/{{ inventory_hostname }}/elasticsearch-template.json"
     - "{{ node_custom_config }}/monasca/elasticsearch-template.json"
@@ -264,7 +252,6 @@
     dest: "{{ node_config_directory }}/monasca-log-metrics/log-metrics.conf"
     mode: "0660"
   become: true
-  register: monasca_log_metrics_confs
   with_first_found:
     - "{{ node_custom_config }}/monasca/{{ inventory_hostname }}/log-metrics.conf"
     - "{{ node_custom_config }}/monasca/log-metrics.conf"
@@ -286,7 +273,6 @@
     dest: "{{ node_config_directory }}/monasca-thresh/thresh-config.yml"
     mode: "0660"
   become: true
-  register: monasca_thresh_confs
   with_first_found:
     - "{{ node_custom_config }}/monasca/{{ inventory_hostname }}/thresh-config.yml"
     - "{{ node_custom_config }}/monasca/thresh-config.yml"
@@ -305,7 +291,6 @@
     dest: "{{ node_config_directory }}/monasca-thresh/storm.yml"
     mode: "0660"
   become: true
-  register: monasca_thresh_storm_conf
   with_first_found:
     - "{{ node_custom_config }}/monasca/{{ inventory_hostname }}/storm.yml"
     - "{{ node_custom_config }}/monasca/storm.yml"
@@ -327,7 +312,6 @@
     dest: "{{ node_config_directory }}/monasca-notification/{{ item }}"
     mode: "0660"
   become: true
-  register: monasca_notification_confs
   with_items:
     - notification.conf
   when:
@@ -349,7 +333,6 @@
     dest: "{{ node_config_directory }}/monasca-notification/"
     mode: "0660"
   become: true
-  register: monasca_notification_plugin_templates
   when:
     - notification_templates.stat.exists and notification_templates.stat.isdir
     - inventory_hostname in groups[service['group']]
@@ -368,7 +351,6 @@
     dest: "{{ node_config_directory }}/monasca-persister/{{ item }}"
     mode: "0660"
   become: true
-  register: monasca_persister_confs
   with_items:
     - persister.conf
   when:
@@ -388,7 +370,6 @@
     dest: "{{ node_config_directory }}/monasca-grafana/{{ item }}"
     mode: "0660"
   become: true
-  register: monasca_grafana_confs
   with_items:
     - grafana.ini
   when:
@@ -407,7 +388,6 @@
     pid_mode: "{{ item.value.pid_mode|default('') }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_monasca_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/mongodb/handlers/main.yml b/ansible/roles/mongodb/handlers/main.yml
index ee5f442231000b12f3dd720345276066d0a1de53..66fbd481871b2d0c043b3c0fd6a8883f7e5ce300 100644
--- a/ansible/roles/mongodb/handlers/main.yml
+++ b/ansible/roles/mongodb/handlers/main.yml
@@ -3,9 +3,6 @@
   vars:
     service_name: "mongodb"
     service: "{{ mongodb_services[service_name] }}"
-    config_json: "{{ mongodb_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    mongodb_conf: "{{ mongodb_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    mongodb_container: "{{ check_mongodb_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,11 +14,6 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or mongodb_conf.changed | bool
-      or mongodb_container.changed | bool
   notify:
     - Waiting for the mongodb startup
     - Checking current replication status
diff --git a/ansible/roles/mongodb/tasks/config.yml b/ansible/roles/mongodb/tasks/config.yml
index 2c9b1d82f4fd664796f6641e0971d6080c1d02f6..6506d954de3779583b7d9482896bf7d99fb99b50 100644
--- a/ansible/roles/mongodb/tasks/config.yml
+++ b/ansible/roles/mongodb/tasks/config.yml
@@ -18,7 +18,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: mongodb_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -36,7 +35,6 @@
     dest: "{{ node_config_directory }}/mongodb/{{ item.key }}.conf"
     mode: "0660"
   become: true
-  register: mongodb_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -54,7 +52,6 @@
     privileged: "{{ item.value.privileged|default(False) }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_mongodb_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/multipathd/handlers/main.yml b/ansible/roles/multipathd/handlers/main.yml
index 2f71142d549f20ca51b77c3d42eb48800e2450a8..b3304fe843e7fa3af7c901979ddce7f4418a8be0 100644
--- a/ansible/roles/multipathd/handlers/main.yml
+++ b/ansible/roles/multipathd/handlers/main.yml
@@ -3,9 +3,6 @@
   vars:
     service_name: "multipathd"
     service: "{{ multipathd_services[service_name] }}"
-    config_json: "{{ multipathd_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    multipathd_conf: "{{ multipathd_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    multipathd_container: "{{ check_multipathd_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,8 +14,3 @@
     volumes: "{{ service.volumes|reject('equalto', '')|list }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or multipathd_conf.changed | bool
-      or multipathd_container.changed | bool
diff --git a/ansible/roles/multipathd/tasks/config.yml b/ansible/roles/multipathd/tasks/config.yml
index 3e43c0514eca0e094f7a3d4fbc84787ee1855e93..79aca0856e7ec941b9b5cbd6441a6e97c1d7e0c8 100644
--- a/ansible/roles/multipathd/tasks/config.yml
+++ b/ansible/roles/multipathd/tasks/config.yml
@@ -25,7 +25,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: multipathd_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -39,7 +38,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/multipath.conf"
     mode: "0660"
   become: true
-  register: multipathd_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -57,7 +55,6 @@
     ipc_mode: "{{ item.value.ipc_mode }}"
     privileged: "{{ item.value.privileged | default(False) }}"
     volumes: "{{ item.value.volumes }}"
-  register: check_multipathd_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/murano/handlers/main.yml b/ansible/roles/murano/handlers/main.yml
index 3520ce6bba012088d73dece922e3fb9b8a1af4aa..c9eb955f4537ce24c38373b38ac785fe9126cedb 100644
--- a/ansible/roles/murano/handlers/main.yml
+++ b/ansible/roles/murano/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "murano-api"
     service: "{{ murano_services[service_name] }}"
-    config_json: "{{ murano_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    murano_conf: "{{ murano_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ murano_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    murano_api_container: "{{ check_murano_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,21 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or murano_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or murano_api_container.changed | bool
 
 - name: Restart murano-engine container
   vars:
     service_name: "murano-engine"
     service: "{{ murano_services[service_name] }}"
-    config_json: "{{ murano_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    murano_conf: "{{ murano_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ murano_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    murano_conductor_container: "{{ check_murano_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -43,9 +29,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or murano_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or murano_conductor_container.changed | bool
diff --git a/ansible/roles/murano/tasks/config.yml b/ansible/roles/murano/tasks/config.yml
index ad6bf262318f3e790d98e5bfb98bd53e2c0a5479..5f940992798da44d360637f57128272534926d22 100644
--- a/ansible/roles/murano/tasks/config.yml
+++ b/ansible/roles/murano/tasks/config.yml
@@ -35,7 +35,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: murano_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -56,7 +55,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/murano.conf"
     mode: "0660"
   become: true
-  register: murano_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -69,7 +67,6 @@
     src: "{{ murano_policy_file_path }}"
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ murano_policy_file }}"
     mode: "0660"
-  register: murano_policy_overwriting
   when:
     - murano_policy_file is defined
     - inventory_hostname in groups[item.value.group]
@@ -87,7 +84,6 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_murano_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/neutron/handlers/main.yml b/ansible/roles/neutron/handlers/main.yml
index f46a24e08bc8535a4acc07a306b0550777a85421..b3748279f3244a8986fc63f0d9d4acb0406e0c92 100644
--- a/ansible/roles/neutron/handlers/main.yml
+++ b/ansible/roles/neutron/handlers/main.yml
@@ -3,12 +3,6 @@
   vars:
     service_name: "neutron-server"
     service: "{{ neutron_services[service_name] }}"
-    config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_vpnaas_conf: "{{ neutron_vpnaas_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_server_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -20,25 +14,11 @@
     privileged: "{{ service.privileged | default(False) }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - config_json is changed
-      or neutron_conf is changed
-      or neutron_vpnaas_conf is changed
-      or neutron_ml2_conf is changed
-      or nsx_ini is changed
-      or policy_json is changed
-      or neutron_server_container is changed
 
 - name: Restart neutron-openvswitch-agent container
   vars:
     service_name: "neutron-openvswitch-agent"
     service: "{{ neutron_services[service_name] }}"
-    config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_openvswitch_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -50,23 +30,11 @@
     privileged: "{{ service.privileged | default(False) }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - config_json is changed
-      or neutron_conf is changed
-      or neutron_ml2_conf is changed
-      or policy_json is changed
-      or neutron_openvswitch_agent_container is changed
 
 - name: Restart neutron-openvswitch-agent-xenapi container
   vars:
     service_name: "neutron-openvswitch-agent-xenapi"
     service: "{{ neutron_services[service_name] }}"
-    config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_ml2_xenapi_conf: "{{ neutron_ml2_xenapi_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_openvswitch_agent_xenapi_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -78,23 +46,11 @@
     privileged: "{{ service.privileged | default(False) }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - config_json is changed
-      or neutron_conf is changed
-      or neutron_ml2_xenapi_conf is changed
-      or policy_json is changed
-      or neutron_openvswitch_agent_xenapi_container is changed
 
 - name: Restart fake neutron-openvswitch-agent container
   vars:
     service_name: "neutron-openvswitch-agent"
     service: "{{ neutron_services[service_name] }}"
-    config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_openvswitch_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -107,23 +63,11 @@
   with_sequence: "start=1 end={{ num_nova_fake_per_node }}"
   when:
     - kolla_action != "config"
-    - enable_nova_fake | bool
-    - neutron_plugin_agent == "openvswitch"
-    - inventory_hostname in groups["compute"]
-    - fake_config_json is changed
-      or fake_neutron_conf is changed
-      or fake_neutron_ml2_conf_ini is changed
-      or check_fake_neutron_openvswitch_agent is changed
 
 - name: Restart neutron-linuxbridge-agent container
   vars:
     service_name: "neutron-linuxbridge-agent"
     service: "{{ neutron_services[service_name] }}"
-    config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_linuxbridge_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -136,22 +80,11 @@
     privileged: "{{ service.privileged | default(False) }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - config_json is changed
-      or neutron_conf is changed
-      or neutron_ml2_conf is changed
-      or policy_json is changed
-      or neutron_linuxbridge_agent_container is changed
 
 - name: Restart neutron-dhcp-agent container
   vars:
     service_name: "neutron-dhcp-agent"
     service: "{{ neutron_services[service_name] }}"
-    config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_dhcp_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -163,27 +96,11 @@
     privileged: "{{ service.privileged | default(False) }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - config_json is changed
-      or neutron_conf is changed
-      or dhcp_agent_ini is changed
-      or dnsmasq_conf is changed
-      or policy_json is changed
-      or neutron_dhcp_agent_container is changed
 
 - name: Restart neutron-l3-agent container
   vars:
     service_name: "neutron-l3-agent"
     service: "{{ neutron_services[service_name] }}"
-    config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_l3_agent_ini: "{{ neutron_l3_agent_inis.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_fwaas_driver_ini: "{{ neutron_fwaas_driver_inis.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_vpnaas_conf: "{{ neutron_vpnaas_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-
-    policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_l3_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -195,25 +112,11 @@
     privileged: "{{ service.privileged | default(False) }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - config_json is changed
-      or neutron_conf is changed
-      or neutron_l3_agent_ini is changed
-      or neutron_fwaas_driver_ini is changed
-      or neutron_vpnaas_conf is changed
-      or policy_json is changed
-      or neutron_l3_agent_wrapper is changed
-      or neutron_l3_agent_container is changed
 
 - name: Restart neutron-sriov-agent container
   vars:
     service_name: "neutron-sriov-agent"
     service: "{{ neutron_services[service_name] }}"
-    config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_sriov_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -225,22 +128,11 @@
     privileged: "{{ service.privileged | default(False) }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - config_json is changed
-      or neutron_conf is changed
-      or neutron_sriov_agent_ini is changed
-      or policy_json is changed
-      or neutron_sriov_agent_container is changed
 
 - name: Restart neutron-metadata-agent container
   vars:
     service_name: "neutron-metadata-agent"
     service: "{{ neutron_services[service_name] }}"
-    config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_metadata_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -252,22 +144,11 @@
     privileged: "{{ service.privileged | default(False) }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - config_json is changed
-      or neutron_conf is changed
-      or neutron_metadata_agent_ini is changed
-      or policy_json is changed
-      or neutron_metadata_agent_container is changed
 
 - name: Restart neutron-bgp-dragent container
   vars:
     service_name: "neutron-bgp-dragent"
     service: "{{ neutron_services[service_name] }}"
-    config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_json: "{{ policy_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_bgp_dragent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -279,22 +160,11 @@
     privileged: "{{ service.privileged | default(False) }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - config_json is changed
-      or neutron_conf is changed
-      or neutron_bgp_dragent_ini is changed
-      or policy_json is changed
-      or neutron_bgp_dragent_container is changed
 
 - name: Restart neutron-infoblox-ipam-agent container
   vars:
     service_name: "neutron-infoblox-ipam-agent"
     service: "{{ neutron_services[service_name] }}"
-    config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_infoblox_ipam_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -306,20 +176,11 @@
     privileged: "{{ service.privileged | default(False) }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - config_json is changed
-      or neutron_conf is changed
-      or neutron_ml2_conf is changed
-      or neutron_infoblox_ipam_agent_container is changed
 
 - name: Restart neutron-metering-agent container
   vars:
     service_name: "neutron-metering-agent"
     service: "{{ neutron_services[service_name] }}"
-    config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_metering_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -331,21 +192,11 @@
     privileged: "{{ service.privileged | default(False) }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - config_json is changed
-      or neutron_conf is changed
-      or neutron_metering_agent_ini is changed
-      or neutron_metering_agent_container is changed
 
 - name: Restart ironic-neutron-agent container
   vars:
     service_name: "ironic-neutron-agent"
     service: "{{ neutron_services[service_name] }}"
-    config_json: "{{ neutron_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_conf: "{{ neutron_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    neutron_ml2_conf: "{{ neutron_ml2_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ironic_neutron_agent_container: "{{ check_neutron_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -357,9 +208,3 @@
     privileged: "{{ service.privileged | default(False) }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - config_json is changed
-      or neutron_conf is changed
-      or ironic_neutron_agent_ini is changed
-      or ironic_neutron_agent_container is changed
diff --git a/ansible/roles/neutron/tasks/config-neutron-fake.yml b/ansible/roles/neutron/tasks/config-neutron-fake.yml
index 322d6d13b46164f1a610ccf677d7b835347be8cf..08f82c705b28c90cc2b99f49d30b0dfa3d7dc18b 100644
--- a/ansible/roles/neutron/tasks/config-neutron-fake.yml
+++ b/ansible/roles/neutron/tasks/config-neutron-fake.yml
@@ -15,11 +15,12 @@
     src: "neutron-openvswitch-agent.json.j2"
     dest: "{{ node_config_directory }}/neutron-openvswitch-agent-fake-{{ item }}/config.json"
     mode: "0660"
-  register: fake_config_json
   with_sequence: start=1 end={{ num_nova_fake_per_node }}
   when:
     - inventory_hostname in groups['compute']
     - neutron_plugin_agent == "openvswitch"
+  notify:
+    - Restart fake neutron-openvswitch-agent container
 
 - name: Copying over neutron.conf
   become: true
@@ -34,11 +35,12 @@
       - "{{ node_custom_config }}/neutron/{{ inventory_hostname }}/neutron.conf"
     dest: "{{ node_config_directory }}/neutron-openvswitch-agent-fake-{{ item }}/neutron.conf"
     mode: "0660"
-  register: fake_neutron_conf
   with_sequence: start=1 end={{ num_nova_fake_per_node }}
   when:
     - inventory_hostname in groups['compute']
     - neutron_plugin_agent == "openvswitch"
+  notify:
+    - Restart fake neutron-openvswitch-agent container
 
 - name: Copying over ml2_conf.ini
   become: true
@@ -51,11 +53,12 @@
       - "{{ node_custom_config }}/neutron/{{ inventory_hostname }}/neutron.conf"
     dest: "{{ node_config_directory }}/neutron-openvswitch-agent-fake-{{ item }}/ml2_conf.ini"
     mode: "0660"
-  register: fake_neutron_ml2_conf_ini
   with_sequence: start=1 end={{ num_nova_fake_per_node }}
   when:
     - inventory_hostname in groups['compute']
     - neutron_plugin_agent == "openvswitch"
+  notify:
+    - Restart fake neutron-openvswitch-agent container
 
 - name: Checking neutron-openvswitch-agent container for nova fake node
   vars:
@@ -68,7 +71,6 @@
     image: "{{ neutron_openvswitch_agent.image }}"
     privileged: "{{ neutron_openvswitch_agent.privileged | default(False) }}"
     volumes: "{{ neutron_openvswitch_agent.volumes }}"
-  register: check_fake_neutron_openvswitch_agent
   when:
     - kolla_action != "config"
     - enable_nova_fake | bool
diff --git a/ansible/roles/neutron/tasks/config.yml b/ansible/roles/neutron/tasks/config.yml
index 93469f968e6b5a7a2218848311ff079f9314d302..c001e3806c8c571bfcfe4261d0bd3be47b1229ee 100644
--- a/ansible/roles/neutron/tasks/config.yml
+++ b/ansible/roles/neutron/tasks/config.yml
@@ -37,7 +37,6 @@
     src: "{{ item.key }}.json.j2"
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
-  register: neutron_config_jsons
   when:
     - item.value.enabled | bool
     - item.value.host_in_groups | bool
@@ -71,7 +70,6 @@
       - "{{ node_custom_config }}/neutron/{{ inventory_hostname }}/neutron.conf"
     dest: "{{ node_config_directory }}/{{ item.key }}/neutron.conf"
     mode: "0660"
-  register: neutron_confs
   when:
     - item.value.enabled | bool
     - item.value.host_in_groups | bool
@@ -94,7 +92,6 @@
       - "{{ node_custom_config }}/neutron/{{ inventory_hostname }}/neutron_vpnaas.conf"
     dest: "{{ node_config_directory }}/{{ item.key }}/neutron_vpnaas.conf"
     mode: "0660"
-  register: neutron_vpnaas_confs
   when:
     - item.value.enabled | bool
     - item.value.host_in_groups | bool
@@ -119,7 +116,6 @@
       - "{{ node_custom_config }}/neutron/{{ inventory_hostname }}/ml2_conf.ini"
     dest: "{{ node_config_directory }}/{{ service_name }}/ml2_conf.ini"
     mode: "0660"
-  register: neutron_ml2_confs
   when:
     - item.key in services_need_ml2_conf_ini
     - item.value.enabled | bool
@@ -144,7 +140,6 @@
       - "{{ node_custom_config }}/neutron/{{ service_name }}/ml2_conf.ini"
     dest: "{{ node_config_directory }}/{{ service_name }}/ml2_conf.ini"
     mode: "0660"
-  register: neutron_ml2_xenapi_confs
   when:
     - item.key in services_need_ml2_conf_ini
     - item.value.enabled | bool
@@ -164,7 +159,6 @@
       - "{{ node_custom_config }}/neutron/{{ inventory_hostname }}/sriov_agent.ini"
     dest: "{{ node_config_directory }}/{{ service_name }}/sriov_agent.ini"
     mode: "0660"
-  register: neutron_sriov_agent_ini
   when:
     - neutron_sriov_agent.enabled | bool
     - neutron_sriov_agent.host_in_groups | bool
@@ -183,7 +177,6 @@
       - "{{ node_custom_config }}/neutron/{{ inventory_hostname }}/dhcp_agent.ini"
     dest: "{{ node_config_directory }}/{{ service_name }}/dhcp_agent.ini"
     mode: "0660"
-  register: dhcp_agent_ini
   when:
     - neutron_dhcp_agent.enabled | bool
     - neutron_dhcp_agent.host_in_groups | bool
@@ -199,7 +192,6 @@
     src: "{{ item }}"
     dest: "{{ node_config_directory }}/{{ service_name }}/dnsmasq.conf"
     mode: "0660"
-  register: dnsmasq_conf
   with_first_found:
     - "{{ node_custom_config }}/neutron/{{ inventory_hostname }}/dnsmasq.conf"
     - "{{ node_custom_config }}/neutron/dnsmasq.conf"
@@ -223,7 +215,6 @@
       - "{{ node_custom_config }}/neutron/{{ inventory_hostname }}/l3_agent.ini"
     dest: "{{ node_config_directory }}/{{ service_name }}/l3_agent.ini"
     mode: "0660"
-  register: neutron_l3_agent_inis
   when:
     - item.key in services_need_l3_agent_ini
     - item.value.enabled | bool
@@ -245,7 +236,6 @@
       - "{{ node_custom_config }}/neutron/fwaas_driver.ini"
     dest: "{{ node_config_directory }}/{{ service_name }}/fwaas_driver.ini"
     mode: "0660"
-  register: neutron_fwaas_driver_inis
   when:
     - item.key in services_need_fwaas_driver_ini
     - item.value.enabled | bool
@@ -265,7 +255,6 @@
       - "{{ node_custom_config }}/neutron/metadata_agent.ini"
     dest: "{{ node_config_directory }}/{{ service_name }}/metadata_agent.ini"
     mode: "0660"
-  register: neutron_metadata_agent_ini
   when:
     - neutron_metadata_agent.enabled | bool
     - neutron_metadata_agent.host_in_groups | bool
@@ -283,7 +272,6 @@
       - "{{ node_custom_config }}/neutron/metering_agent.ini"
     dest: "{{ node_config_directory }}/{{ service_name }}/metering_agent.ini"
     mode: "0660"
-  register: neutron_metering_agent_ini
   when:
     - neutron_metering_agent.enabled | bool
     - neutron_metering_agent.host_in_groups | bool
@@ -301,7 +289,6 @@
       - "{{ node_custom_config }}/neutron/ironic_neutron_agent.ini"
     dest: "{{ node_config_directory }}/{{ service_name }}/ironic_neutron_agent.ini"
     mode: "0660"
-  register: ironic_neutron_agent_ini
   when:
     - ironic_neutron_agent.enabled | bool
     - ironic_neutron_agent.host_in_groups | bool
@@ -319,7 +306,6 @@
       - "{{ node_custom_config }}/neutron/bgp_dragent.ini"
     dest: "{{ node_config_directory }}/{{ service_name }}/bgp_dragent.ini"
     mode: "0660"
-  register: neutron_bgp_dragent_ini
   when:
     - neutron_bgp_dragent.enabled | bool
     - neutron_bgp_dragent.host_in_groups | bool
@@ -342,7 +328,6 @@
       - "{{ node_custom_config }}/neutron/{{ inventory_hostname }}/nsx.ini"
     dest: "{{ node_config_directory }}/{{ service_name }}/nsx.ini"
     mode: "0660"
-  register: nsx_ini
   when:
     - neutron_server.enabled | bool
     - neutron_server.host_in_groups | bool
@@ -369,7 +354,6 @@
     src: "{{ node_custom_config }}/neutron/policy.json"
     dest: "{{ node_config_directory }}/{{ service_name }}/policy.json"
     mode: "0660"
-  register: policy_jsons
   when:
     - neutron_policy.stat.exists
     - item.value.enabled | bool
@@ -387,7 +371,6 @@
     src: neutron-l3-agent-wrapper.sh.j2
     dest: "{{ node_config_directory }}/{{ service_name }}/neutron-l3-agent-wrapper.sh"
     mode: "0770"
-  register: neutron_l3_agent_wrapper
   when:
     - service.enabled | bool
     - service.host_in_groups | bool
@@ -406,7 +389,6 @@
     src: "{{ item.2.path }}"
     dest: "{{ node_config_directory }}/{{ service_name }}/{{ item.2.path | basename }}"
     mode: "0660"
-  register: extra_ml2_plugins
   when:
     - item.2 is defined
     - item.1.enabled | bool
@@ -429,7 +411,6 @@
     privileged: "{{ item.value.privileged | default(False) }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_neutron_containers
   when:
     - kolla_action != "config"
     - item.value.enabled | bool
diff --git a/ansible/roles/nova/handlers/main.yml b/ansible/roles/nova/handlers/main.yml
index 93ad91a15cedb5c9e4e74e1c3ca106da2c30048f..6715d4812dd85bd52f66a02c60cbbffc00b5c2d1 100644
--- a/ansible/roles/nova/handlers/main.yml
+++ b/ansible/roles/nova/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "nova-conductor"
     service: "{{ nova_services[service_name] }}"
-    config_json: "{{ config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_conf: "{{ nova_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ nova_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_conductor_container: "{{ check_nova_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -18,19 +14,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or nova_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or nova_conductor_container.changed | bool
 
 - name: Restart nova-ssh container
   vars:
     service_name: "nova-ssh"
     service: "{{ nova_services[service_name] }}"
-    config_json: "{{ config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_ssh_container: "{{ check_nova_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -43,19 +31,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or nova_ssh_confs.changed | bool
-      or nova_ssh_container.changed | bool
 
 - name: Restart nova-libvirt container
   vars:
     service_name: "nova-libvirt"
     service: "{{ nova_services[service_name] }}"
-    config_json: "{{ config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ceph_conf: "{{ ceph_confs.results|selectattr('item', 'equalto', service_name)|first if ceph_confs is defined else none }}"
-    nova_libvirt_container: "{{ check_nova_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -73,24 +53,11 @@
   until: restart_nova_libvirt is success
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or nova_libvirt_confs.changed | bool
-      or nova_libvirt_container.changed | bool
-      or ( ceph_conf is not none and ceph_conf.changed | bool )
-      or ( nova_ceph_keyring is defined and nova_ceph_keyring.changed | bool )
-      or ( libvirt_secrets_xml is defined and libvirt_secrets_xml.changed | bool )
-      or ( libvirt_secrets_key is defined and libvirt_secrets_key.changed | bool )
 
 - name: Restart nova-scheduler container
   vars:
     service_name: "nova-scheduler"
     service: "{{ nova_services[service_name] }}"
-    config_json: "{{ config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_conf: "{{ nova_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ nova_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_scheduler_container: "{{ check_nova_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -102,21 +69,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or nova_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or nova_scheduler_container.changed | bool
 
 - name: Restart nova-novncproxy container
   vars:
     service_name: "nova-novncproxy"
     service: "{{ nova_services[service_name] }}"
-    config_json: "{{ config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_conf: "{{ nova_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ nova_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_novncproxy_container: "{{ check_nova_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -128,21 +85,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or nova_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or nova_novncproxy_container.changed | bool
 
 - name: Restart nova-spicehtml5proxy container
   vars:
     service_name: "nova-spicehtml5proxy"
     service: "{{ nova_services[service_name] }}"
-    config_json: "{{ config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_conf: "{{ nova_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ nova_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_spicehtml5proxy_container: "{{ check_nova_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -154,21 +101,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or nova_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or nova_spicehtml5proxy_container.changed | bool
 
 - name: Restart nova-serialproxy container
   vars:
     service_name: "nova-serialproxy"
     service: "{{ nova_services[service_name] }}"
-    config_json: "{{ config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_conf: "{{ nova_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ nova_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_serialproxy_container: "{{ check_nova_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -180,21 +117,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or nova_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or nova_serialproxy_container.changed | bool
 
 - name: Restart nova-api container
   vars:
     service_name: "nova-api"
     service: "{{ nova_services[service_name] }}"
-    config_json: "{{ config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_conf: "{{ nova_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ nova_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_api_container: "{{ check_nova_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -206,22 +133,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or nova_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or nova_api_container.changed | bool
 
 - name: Restart nova-compute container
   vars:
     service_name: "nova-compute"
     service: "{{ nova_services[service_name] }}"
-    config_json: "{{ config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_conf: "{{ nova_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ceph_conf: "{{ ceph_confs.results|selectattr('item', 'equalto', service_name)|first if ceph_confs is defined else none }}"
-    policy_overwriting: "{{ nova_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_compute_container: "{{ check_nova_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -235,25 +151,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or nova_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or vcenter_ca_file | bool
-      or nova_compute_release_file | bool
-      or nova_compute_container.changed | bool
-      or ( ceph_conf is not none and ceph_conf.changed | bool )
-      or ( nova_ceph_keyring is defined and nova_ceph_keyring.changed | bool )
 
 - name: Restart nova-compute-ironic container
   vars:
     service_name: "nova-compute-ironic"
     service: "{{ nova_services[service_name] }}"
-    config_json: "{{ config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_conf: "{{ nova_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ nova_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nova_compute_ironic_container: "{{ check_nova_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -265,12 +167,6 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or nova_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or nova_compute_ironic_container.changed | bool
 
 # nova-compute-fake is special. It will start multi numbers of container
 # so put all variables here rather than defaults/main.yml file
@@ -291,8 +187,6 @@
   with_sequence: start=1 end={{ num_nova_fake_per_node }}
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups['compute']
-    - enable_nova_fake | bool
 
 # NOTE(mgoddard): After upgrading nova-compute, services will have an RPC
 # version cap in place.  We need to restart all services that communicate with
diff --git a/ansible/roles/nova/tasks/ceph.yml b/ansible/roles/nova/tasks/ceph.yml
index e4ee7418406886919a64511e4c81a91b1cf7b1b0..322a85b27d393081d2134d18829875b1ff7f794d 100644
--- a/ansible/roles/nova/tasks/ceph.yml
+++ b/ansible/roles/nova/tasks/ceph.yml
@@ -20,7 +20,6 @@
     dest: "{{ node_config_directory }}/{{ item }}/ceph.conf"
     mode: "0660"
   become: true
-  register: ceph_confs
   with_items:
     - "nova-compute"
     - "nova-libvirt"
@@ -66,6 +65,8 @@
     mode: "0600"
   become: true
   when: inventory_hostname in groups['compute']
+  notify:
+    - Restart nova-compute container
 
 - name: Pushing secrets xml for libvirt
   template:
@@ -83,6 +84,8 @@
     - uuid: "{{ cinder_rbd_secret_uuid }}"
       name: client.cinder secret
       enabled: "{{ enable_cinder | bool and cinder_backend_ceph | bool}}"
+  notify:
+    - Restart nova-libvirt container
 
 - name: Pushing secrets key for libvirt
   copy:
@@ -100,6 +103,8 @@
     - uuid: "{{ cinder_rbd_secret_uuid }}"
       content: "{{ cinder_cephx_raw_key.stdout|default('') }}"
       enabled: "{{ enable_cinder | bool and cinder_backend_ceph | bool}}"
+  notify:
+    - Restart nova-libvirt container
 
 - name: Ensuring config directory has correct owner and permission
   become: true
diff --git a/ansible/roles/nova/tasks/config.yml b/ansible/roles/nova/tasks/config.yml
index a6af574928ad39aba3f00735a28f6365ef0072a6..043bf4bc77fb36b98913a0bab54a01f911789209 100644
--- a/ansible/roles/nova/tasks/config.yml
+++ b/ansible/roles/nova/tasks/config.yml
@@ -62,7 +62,6 @@
     src: "{{ item.key }}.json.j2"
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
-  register: config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -90,7 +89,6 @@
       - "{{ node_custom_config }}/nova/{{ inventory_hostname }}/nova.conf"
     dest: "{{ node_config_directory }}/{{ item.key }}/nova.conf"
     mode: "0660"
-  register: nova_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -107,7 +105,6 @@
     src: "{{ item.src }}"
     dest: "{{ node_config_directory }}/nova-libvirt/{{ item.dest }}"
     mode: "0660"
-  register: nova_libvirt_confs
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -125,7 +122,6 @@
     src: "{{ item.src }}"
     dest: "{{ node_config_directory }}/nova-ssh/{{ item.dest }}"
     mode: "0660"
-  register: nova_ssh_confs
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -144,7 +140,6 @@
     src: "{{ node_custom_config }}/vmware_ca"
     dest: "{{ node_config_directory }}/nova-compute/vmware_ca"
     mode: "0660"
-  register: vcenter_ca_file
   when:
     - nova_compute_virt_type == "vmware"
     - not vmware_vcenter_insecure | bool
@@ -166,7 +161,6 @@
         - "{{ node_custom_config }}/nova_compute/release"
         - "{{ node_custom_config }}/nova/release"
       skip: true
-  register: nova_compute_release_file
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -189,7 +183,6 @@
     src: "{{ nova_policy_file_path }}"
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ nova_policy_file }}"
     mode: "0660"
-  register: nova_policy_overwriting
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -213,7 +206,6 @@
     privileged: "{{ item.value.privileged|default(False) }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_nova_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/nova/tasks/external_ceph.yml b/ansible/roles/nova/tasks/external_ceph.yml
index a5e5eb3af6945e1f714fab2980e6967fe06980b9..fa1e80600cc09a050122ee0e89beb86e5204f24f 100644
--- a/ansible/roles/nova/tasks/external_ceph.yml
+++ b/ansible/roles/nova/tasks/external_ceph.yml
@@ -34,7 +34,6 @@
     dest: "{{ node_config_directory }}/{{ item }}/"
     mode: "0660"
   become: true
-  register: nova_ceph_keyring
   with_items:
     - nova-compute
     - nova-libvirt
@@ -43,8 +42,7 @@
     - nova_backend == "rbd"
     - external_ceph_cephx_enabled | bool
   notify:
-    - Restart nova-compute container
-    - Restart nova-libvirt container
+    - Restart {{ item }} container
 
 - name: Copy over ceph.conf
   template:
@@ -52,7 +50,6 @@
     dest: "{{ node_config_directory }}/{{ item }}/"
     mode: "0660"
   become: true
-  register: ceph_confs
   with_items:
     - nova-compute
     - nova-libvirt
@@ -68,7 +65,6 @@
     dest: "{{ node_config_directory }}/nova-libvirt/secrets/{{ item.uuid }}.xml"
     mode: "0600"
   become: true
-  register: libvirt_secrets_xml
   when:
     - inventory_hostname in groups['compute']
     - item.enabled | bool
@@ -106,7 +102,6 @@
     dest: "{{ node_config_directory }}/nova-libvirt/secrets/{{ item.uuid }}.base64"
     mode: "0600"
   become: true
-  register: libvirt_secrets_key
   when:
     - inventory_hostname in groups['compute']
     - item.enabled | bool
diff --git a/ansible/roles/octavia/handlers/main.yml b/ansible/roles/octavia/handlers/main.yml
index 44372f35061690b8a90de7b5a462972b0e2548ae..4cec448f74631576bcf4bfaf3da74ff2bdc581ac 100644
--- a/ansible/roles/octavia/handlers/main.yml
+++ b/ansible/roles/octavia/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "octavia-api"
     service: "{{ octavia_services[service_name] }}"
-    config_json: "{{ octavia_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    octavia_conf: "{{ octavia_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ octavia_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    octavia_api_container: "{{ check_octavia_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,21 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or octavia_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or octavia_api_container.changed | bool
 
 - name: Restart octavia-health-manager container
   vars:
     service_name: "octavia-health-manager"
     service: "{{ octavia_services[service_name] }}"
-    config_json: "{{ octavia_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    octavia_conf: "{{ octavia_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ octavia_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    octavia_health_manager_container: "{{ check_octavia_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -42,22 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or octavia_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or octavia_health_manager_certificate.changed | bool
-      or octavia_health_manager_container.changed | bool
 
 - name: Restart octavia-housekeeping container
   vars:
     service_name: "octavia-housekeeping"
     service: "{{ octavia_services[service_name] }}"
-    config_json: "{{ octavia_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    octavia_conf: "{{ octavia_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ octavia_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    octavia_housekeeping_container: "{{ check_octavia_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -68,22 +43,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or octavia_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or octavia_housekeeping_certificate.changed | bool
-      or octavia_housekeeping_container.changed | bool
 
 - name: Restart octavia-worker container
   vars:
     service_name: "octavia-worker"
     service: "{{ octavia_services[service_name] }}"
-    config_json: "{{ octavia_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    octavia_conf: "{{ octavia_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ octavia_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    octavia_worker_container: "{{ check_octavia_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -94,10 +58,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or octavia_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or octavia_worker_certificate.changed | bool
-      or octavia_worker_container.changed | bool
diff --git a/ansible/roles/octavia/tasks/config.yml b/ansible/roles/octavia/tasks/config.yml
index b2b42a26fc1679fafe3d022331a597865dfecfb7..d0feb29f013c1fd1409b4f9d6f1cc80e0602b96f 100644
--- a/ansible/roles/octavia/tasks/config.yml
+++ b/ansible/roles/octavia/tasks/config.yml
@@ -35,7 +35,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ octavia_policy_file }}"
     mode: "0660"
   become: true
-  register: octavia_policy_overwriting
   when:
     - octavia_policy_file is defined
     - inventory_hostname in groups[item.value.group]
@@ -50,7 +49,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: octavia_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -71,7 +69,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/octavia.conf"
     mode: "0660"
   become: true
-  register: octavia_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -87,7 +84,6 @@
     dest: "{{ node_config_directory }}/octavia-worker/{{ item }}"
     mode: "0660"
   become: true
-  register: octavia_worker_certificate
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -106,7 +102,6 @@
     dest: "{{ node_config_directory }}/octavia-housekeeping/{{ item }}"
     mode: "0660"
   become: true
-  register: octavia_housekeeping_certificate
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -125,7 +120,6 @@
     dest: "{{ node_config_directory }}/octavia-health-manager/{{ item }}"
     mode: "0660"
   become: true
-  register: octavia_health_manager_certificate
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -145,7 +139,6 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_octavia_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/opendaylight/handlers/main.yml b/ansible/roles/opendaylight/handlers/main.yml
index 9163d51b63536c67498c6bdd46bd0e5f195bcaa2..0f3afd253c3b0777f453245dbb42017ccc605ee6 100644
--- a/ansible/roles/opendaylight/handlers/main.yml
+++ b/ansible/roles/opendaylight/handlers/main.yml
@@ -15,21 +15,3 @@
     tty: "{{ service.tty }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - opendaylight_config_json is changed
-      or opendaylight_config_start_odl is changed
-      or opendaylight_config_custom_props is changed
-      or opendaylight_config_jetty is changed
-      or opendaylight_config_features is changed
-      or opendaylight_config_ovsdb is changed
-      or opendaylight_config_tomcat is changed
-      or opendaylight_config_logging is changed
-      or opendaylight_config_netvirt is changed
-      or opendaylight_config_netvirt_acl is changed
-      or opendaylight_config_env is changed
-      or opendaylight_config_akka is changed
-      or opendaylight_config_modules is changed
-      or opendaylight_config_module_shards is changed
-      or opendaylight_config_10_rest_connector is changed
-      or check_opendaylight_containers is changed
diff --git a/ansible/roles/opendaylight/tasks/config.yml b/ansible/roles/opendaylight/tasks/config.yml
index a5147c1e71ca333d79b7c9509c09ff5c28f974e4..02c5dc2f59f50db7be6d8830eff86d8137cfcd65 100644
--- a/ansible/roles/opendaylight/tasks/config.yml
+++ b/ansible/roles/opendaylight/tasks/config.yml
@@ -23,7 +23,6 @@
     - "opendaylight"
 
 - name: Copying over config.json files for services
-  register: opendaylight_config_json
   template:
     src: "{{ item }}.json.j2"
     dest: "{{ node_config_directory }}/{{ item }}/config.json"
@@ -35,7 +34,6 @@
     - Restart opendaylight container
 
 - name: Copying over custom.properties
-  register: opendaylight_config_custom_props
   template:
     src: "{{ role_path }}/templates/custom.properties.j2"
     dest: "{{ node_config_directory }}/opendaylight/custom.properties"
@@ -45,7 +43,6 @@
     - Restart opendaylight container
 
 - name: Copying over start-odl
-  register: opendaylight_config_start_odl
   template:
     src: "{{ role_path }}/templates/start-odl.j2"
     dest: "{{ node_config_directory }}/opendaylight/start-odl"
@@ -55,7 +52,6 @@
     - Restart opendaylight container
 
 - name: Copying over jetty.xml
-  register: opendaylight_config_jetty
   template:
     src: "{{ role_path }}/templates/jetty.xml.j2"
     dest: "{{ node_config_directory }}/{{ item }}/jetty.xml"
@@ -67,7 +63,6 @@
     - Restart opendaylight container
 
 - name: Copying over org.apache.karaf.features.cfg
-  register: opendaylight_config_features
   template:
     src: "{{ role_path }}/templates/org.apache.karaf.features.cfg.j2"
     dest: "{{ node_config_directory }}/{{ item }}/org.apache.karaf.features.cfg"
@@ -79,7 +74,6 @@
     - Restart opendaylight container
 
 - name: Copying over org.opendaylight.ovsdb.library.cfg
-  register: opendaylight_config_ovsdb
   template:
     src: "{{ role_path }}/templates/org.opendaylight.ovsdb.library.cfg.j2"
     dest: "{{ node_config_directory }}/{{ item }}/org.opendaylight.ovsdb.library.cfg"
@@ -96,7 +90,6 @@
     dest: "{{ node_config_directory }}/{{ item }}/tomcat-server.xml"
     mode: "0660"
   become: true
-  register: opendaylight_config_tomcat
   with_items:
     - "opendaylight"
   notify:
@@ -108,7 +101,6 @@
     dest: "{{ node_config_directory }}/{{ item }}/org.ops4j.pax.logging.cfg"
     mode: "0660"
   become: true
-  register: opendaylight_config_logging
   with_items:
     - "opendaylight"
   notify:
@@ -120,7 +112,6 @@
     dest: "{{ node_config_directory }}/{{ item }}/netvirt-impl-config_netvirt-impl-config.xml"
     mode: "0660"
   become: true
-  register: opendaylight_config_netvirt
   with_items:
     - "opendaylight"
   notify:
@@ -132,7 +123,6 @@
     dest: "{{ node_config_directory }}/{{ item }}/netvirt-aclservice-config.xml"
     mode: "0660"
   become: true
-  register: opendaylight_config_netvirt_acl
   with_items:
     - "opendaylight"
   notify:
@@ -144,7 +134,6 @@
     dest: "{{ node_config_directory }}/opendaylight/setenv"
     mode: "0660"
   become: true
-  register: opendaylight_config_env
   with_first_found:
     - "{{ node_custom_config }}/opendaylight/{{ inventory_hostname }}/setenv"
     - "{{ node_custom_config }}/opendaylight/setenv"
@@ -162,7 +151,6 @@
     - "{{ node_custom_config }}/opendaylight/{{ inventory_hostname }}/akka.conf"
     - "{{ node_custom_config }}/opendaylight/akka.conf"
     - "akka.conf.j2"
-  register: opendaylight_config_akka
   notify:
     - Restart opendaylight container
 
@@ -176,7 +164,6 @@
     - "{{ node_custom_config }}/opendaylight/{{ inventory_hostname }}/modules.conf"
     - "{{ node_custom_config }}/opendaylight/modules.conf"
     - "modules.conf.j2"
-  register: opendaylight_config_modules
   notify:
     - Restart opendaylight container
 
@@ -190,7 +177,6 @@
     - "{{ node_custom_config }}/opendaylight/{{ inventory_hostname }}/module-shards.conf"
     - "{{ node_custom_config }}/opendaylight/module-shards.conf"
     - "module-shards.conf.j2"
-  register: opendaylight_config_module_shards
   notify:
     - Restart opendaylight container
 
@@ -204,7 +190,6 @@
     - "{{ node_custom_config }}/opendaylight/{{ inventory_hostname }}/10-rest-connector.xml"
     - "{{ node_custom_config }}/opendaylight/10-rest-connector.xml"
     - "10-rest-connector.xml.j2"
-  register: opendaylight_config_10_rest_connector
   notify:
     - Restart opendaylight container
 
@@ -219,7 +204,6 @@
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
     tty: "{{ item.value.tty }}"
-  register: check_opendaylight_containers
   when:
     - kolla_action != "config"
     - item.value.enabled | bool
diff --git a/ansible/roles/openvswitch/handlers/main.yml b/ansible/roles/openvswitch/handlers/main.yml
index 7349a567f5494b2b2adc62335626a1fb0d42369f..11d4b5e19912cf68c72596dfd45c41aeab121807 100644
--- a/ansible/roles/openvswitch/handlers/main.yml
+++ b/ansible/roles/openvswitch/handlers/main.yml
@@ -3,8 +3,6 @@
   vars:
     service_name: "openvswitch-db-server"
     service: "{{ openvswitch_services[service_name] }}"
-    config_json: "{{ openvswitch_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    openvswitch_db_container: "{{ check_openvswitch_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -15,11 +13,6 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - config_json is changed
-      or openvswitch_db_container is changed
-      or openvswitch_start_ovsdb_server is changed
   notify:
     - Waiting for openvswitch_db service to be ready
 
@@ -36,8 +29,6 @@
   vars:
     service_name: "openvswitch-vswitchd"
     service: "{{ openvswitch_services[service_name] }}"
-    config_json: "{{ openvswitch_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    openvswitch_vswitchd_container: "{{ check_openvswitch_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -49,8 +40,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - config_json is changed
-      or openvswitch_vswitchd_container is changed
-      or openvswitch_start_ovs is changed
diff --git a/ansible/roles/openvswitch/tasks/config.yml b/ansible/roles/openvswitch/tasks/config.yml
index b1c9b705da77571055b4c11dd29e2a6a6861aacb..038e8300272ba0dfac2d6d0825f457d7ebf34d95 100644
--- a/ansible/roles/openvswitch/tasks/config.yml
+++ b/ansible/roles/openvswitch/tasks/config.yml
@@ -25,7 +25,6 @@
     src: "{{ item.key }}.json.j2"
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
-  register: openvswitch_config_jsons
   when:
     - item.value.enabled | bool
     - item.value.host_in_groups | bool
@@ -41,7 +40,6 @@
     src: "{{ role_path }}/templates/start-ovs.j2"
     dest: "{{ node_config_directory }}/openvswitch-vswitchd/start-ovs"
     mode: "0770"
-  register: openvswitch_start_ovs
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -56,7 +54,6 @@
     src: "{{ role_path }}/templates/start-ovsdb-server.j2"
     dest: "{{ node_config_directory }}/openvswitch-db-server/start-ovsdb-server"
     mode: "0770"
-  register: openvswitch_start_ovsdb_server
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -73,7 +70,6 @@
     privileged: "{{ item.value.privileged | default(False) }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_openvswitch_containers
   when:
     - kolla_action != "config"
     - item.value.enabled | bool
diff --git a/ansible/roles/ovs-dpdk/handlers/main.yml b/ansible/roles/ovs-dpdk/handlers/main.yml
index 2fe79959d373ef41869bafa73a752ef0551aeab7..fb78a0dccc265c3438d0a62a0b46a2e8a5b4df9f 100644
--- a/ansible/roles/ovs-dpdk/handlers/main.yml
+++ b/ansible/roles/ovs-dpdk/handlers/main.yml
@@ -3,8 +3,6 @@
   vars:
     service_name: "ovsdpdk-db"
     service: "{{ ovsdpdk_services[service_name] }}"
-    config_json: "{{ ovsdpdk_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ovsdpdk_db_container: "{{ check_ovsdpdk_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -15,10 +13,6 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - config_json is changed
-      or ovsdpdk_db_container is changed
   notify:
     - Waiting the ovs db service to be ready
     - Ensuring ovsdpdk bridges are properly setup indexed
@@ -59,8 +53,6 @@
   vars:
     service_name: "ovsdpdk-vswitchd"
     service: "{{ ovsdpdk_services[service_name] }}"
-    config_json: "{{ ovsdpdk_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    ovsdpdk_vswitchd_container: "{{ check_ovsdpdk_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -72,10 +64,6 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - service.enabled | bool
-    - service.host_in_groups | bool
-    - config_json is changed
-      or ovsdpdk_vswitchd_container is changed
 
 - name: Ensuring ovsdpdk bridges are properly setup named
   vars:
diff --git a/ansible/roles/ovs-dpdk/tasks/config.yml b/ansible/roles/ovs-dpdk/tasks/config.yml
index d113f0ee06db30b5982133522bf1393fef27d539..9519fe554b8a770b83efd3d35e7d021daf14f70e 100644
--- a/ansible/roles/ovs-dpdk/tasks/config.yml
+++ b/ansible/roles/ovs-dpdk/tasks/config.yml
@@ -16,7 +16,6 @@
     src: "{{ item.key }}.json.j2"
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
-  register: ovsdpdk_config_jsons
   when:
     - item.value.enabled | bool
     - item.value.host_in_groups | bool
@@ -67,7 +66,6 @@
     privileged: "{{ item.value.privileged | default(False) }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_ovsdpdk_containers
   when:
     - kolla_action != "config"
     - item.value.enabled | bool
diff --git a/ansible/roles/panko/handlers/main.yml b/ansible/roles/panko/handlers/main.yml
index fb473036e628a78cdcf9eff6999cad551bf9caf0..f40f3e92f3c5133e6b6e77454822fdf8bd4f3f34 100644
--- a/ansible/roles/panko/handlers/main.yml
+++ b/ansible/roles/panko/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "panko-api"
     service: "{{ panko_services[service_name] }}"
-    config_json: "{{ panko_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    panko_conf: "{{ panko_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ panko_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    panko_api_container: "{{ check_panko_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,10 +13,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or panko_conf.changed | bool
-      or panko_wsgi.changed | bool
-      or policy_overwriting.changed | bool
-      or panko_api_container.changed | bool
diff --git a/ansible/roles/panko/tasks/config.yml b/ansible/roles/panko/tasks/config.yml
index bbaf7c95316fcfd629848a70fef88422a2b5797d..cd92d7531018d6ec7ee5ac5248a8aa2014a87ff5 100644
--- a/ansible/roles/panko/tasks/config.yml
+++ b/ansible/roles/panko/tasks/config.yml
@@ -35,7 +35,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: panko_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -54,7 +53,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/panko.conf"
     mode: "0660"
   become: true
-  register: panko_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -70,7 +68,6 @@
     dest: "{{ node_config_directory }}/{{ item }}/wsgi-panko.conf"
     mode: "0660"
   become: true
-  register: panko_wsgi
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -85,7 +82,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ panko_policy_file }}"
     mode: "0660"
   become: true
-  register: panko_policy_overwriting
   when:
     - panko_policy_file is defined
     - inventory_hostname in groups[item.value.group]
@@ -103,7 +99,6 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_panko_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/prometheus/handlers/main.yml b/ansible/roles/prometheus/handlers/main.yml
index 0ae42f1b9d0db9777a2a8666f9663cd987b8b568..db155b4bb2f0c4fe73305e96a218ffe7ca4b3353 100644
--- a/ansible/roles/prometheus/handlers/main.yml
+++ b/ansible/roles/prometheus/handlers/main.yml
@@ -3,8 +3,6 @@
   vars:
     service_name: "prometheus-server"
     service: "{{ prometheus_services[service_name] }}"
-    config_json: "{{ prometheus_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    prometheus_container: "{{ check_prometheus_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -15,18 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or prometheus_confs.changed | bool
-      or prometheus_container.changed | bool
 
 - name: Restart prometheus-node-exporter container
   vars:
     service_name: "prometheus-node-exporter"
     service: "{{ prometheus_services[service_name] }}"
-    config_json: "{{ prometheus_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    prometheus_container: "{{ check_prometheus_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -38,17 +29,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or prometheus_container.changed | bool
 
 - name: Restart prometheus-mysqld-exporter container
   vars:
     service_name: "prometheus-mysqld-exporter"
     service: "{{ prometheus_services[service_name] }}"
-    config_json: "{{ prometheus_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    prometheus_container: "{{ check_prometheus_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -59,18 +44,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or prometheus_conf_mycnf.changed | bool
-      or prometheus_container.changed | bool
 
 - name: Restart prometheus-haproxy-exporter container
   vars:
     service_name: "prometheus-haproxy-exporter"
     service: "{{ prometheus_services[service_name] }}"
-    config_json: "{{ prometheus_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    prometheus_container: "{{ check_prometheus_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -81,17 +59,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or prometheus_container.changed | bool
 
 - name: Restart prometheus-memcached-exporter container
   vars:
     service_name: "prometheus-memcached-exporter"
     service: "{{ prometheus_services[service_name] }}"
-    config_json: "{{ prometheus_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    prometheus_container: "{{ check_prometheus_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -102,17 +74,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or prometheus_container.changed | bool
 
 - name: Restart prometheus-cadvisor container
   vars:
     service_name: "prometheus-cadvisor"
     service: "{{ prometheus_services[service_name] }}"
-    config_json: "{{ prometheus_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    prometheus_container: "{{ check_prometheus_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -123,17 +89,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or prometheus_container.changed | bool
 
 - name: Restart prometheus-alertmanager container
   vars:
     service_name: "prometheus-alertmanager"
     service: "{{ prometheus_services[service_name] }}"
-    config_json: "{{ prometheus_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    prometheus_container: "{{ check_prometheus_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -144,18 +104,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or prometheus_alertmanager_confs.changed | bool
-      or prometheus_container.changed | bool
 
 - name: Restart prometheus-openstack-exporter container
   vars:
     service_name: "prometheus-openstack-exporter"
     service: "{{ prometheus_services[service_name] }}"
-    config_json: "{{ prometheus_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    prometheus_container: "{{ check_prometheus_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -166,18 +119,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or prometheus_openstack_exporter_confs.changed | bool
-      or prometheus_container.changed | bool
 
 - name: Restart prometheus-elasticsearch-exporter container
   vars:
     service_name: "prometheus-elasticsearch-exporter"
     service: "{{ prometheus_services[service_name] }}"
-    config_json: "{{ prometheus_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    prometheus_container: "{{ check_prometheus_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -188,7 +134,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or prometheus_container.changed | bool
diff --git a/ansible/roles/prometheus/tasks/config.yml b/ansible/roles/prometheus/tasks/config.yml
index 2c4741b16dcd93e211da77cffbbf8159a9467d81..3e297418a16babcc09901245b865071cb9b9c7b0 100644
--- a/ansible/roles/prometheus/tasks/config.yml
+++ b/ansible/roles/prometheus/tasks/config.yml
@@ -18,7 +18,6 @@
     src: "{{ item.key }}.json.j2"
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
-  register: prometheus_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -45,7 +44,6 @@
     src: "{{ item.path }}"
     dest: "{{ node_config_directory }}/prometheus-server/{{ item.path | basename }}"
     mode: "0660"
-  register: prometheus_confs
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool and enable_prometheus_alertmanager | bool
@@ -62,7 +60,6 @@
     src: "{{ item }}"
     dest: "{{ node_config_directory }}/prometheus-server/prometheus.yml"
     mode: "0660"
-  register: prometheus_confs
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -81,7 +78,6 @@
     src: "{{ item }}"
     dest: "{{ node_config_directory }}/prometheus-alertmanager/prometheus-alertmanager.yml"
     mode: "0660"
-  register: prometheus_alertmanager_confs
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -103,7 +99,6 @@
       - "{{ role_path }}/templates/my.cnf.j2"
     dest: "{{ node_config_directory }}/prometheus-mysqld-exporter/my.cnf"
     mode: "0660"
-  register: prometheus_conf_mycnf
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -118,7 +113,6 @@
     src: "{{ item }}"
     dest: "{{ node_config_directory }}/prometheus-openstack-exporter/clouds.yml"
     mode: "0660"
-  register: prometheus_openstack_exporter_confs
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -139,7 +133,6 @@
     pid_mode: "{{ item.value.pid_mode|default('') }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_prometheus_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/qdrouterd/handlers/main.yml b/ansible/roles/qdrouterd/handlers/main.yml
index 7dd59039e3fb7f38dc559fad18f6154d6018effd..17c6b84e47c120cc62fa209fc4f89b9be6729030 100644
--- a/ansible/roles/qdrouterd/handlers/main.yml
+++ b/ansible/roles/qdrouterd/handlers/main.yml
@@ -3,8 +3,6 @@
   vars:
     service_name: "qdrouterd"
     service: "{{ qdrouterd_services[service_name] }}"
-    config_json: "{{ qdrouterd_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    qdrouterd_container: "{{ check_qdrouterd_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -15,9 +13,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or qdrouterd_confs.changed | bool
-      or qdrouterd_sasl_confs.changed | bool
-      or qdrouterd_container.changed | bool
diff --git a/ansible/roles/qdrouterd/tasks/config.yml b/ansible/roles/qdrouterd/tasks/config.yml
index 82f46f336f7d8f1f1b2185a0655c417d9843f7a4..f18ff9f7cf785b15aabe2170f88e0981d83796d8 100644
--- a/ansible/roles/qdrouterd/tasks/config.yml
+++ b/ansible/roles/qdrouterd/tasks/config.yml
@@ -18,7 +18,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: qdrouterd_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -34,7 +33,6 @@
     dest: "{{ node_config_directory }}/qdrouterd/qdrouterd.conf"
     mode: "0660"
   become: true
-  register: qdrouterd_confs
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -53,7 +51,6 @@
     dest: "{{ node_config_directory }}/qdrouterd/qdrouterd-sasl.conf"
     mode: "0660"
   become: true
-  register: qdrouterd_sasl_confs
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -73,7 +70,6 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_qdrouterd_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/qinling/handlers/main.yml b/ansible/roles/qinling/handlers/main.yml
index 01620ead60d3b18a88af037321f6e71819ad028b..9b5e5263dd419e3af36462f0222325d72e0fd7c6 100644
--- a/ansible/roles/qinling/handlers/main.yml
+++ b/ansible/roles/qinling/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "qinling-api"
     service: "{{ qinling_services[service_name] }}"
-    config_json: "{{ qinling_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    qinling_conf: "{{ qinling_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ qinling_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    qinling_api_container: "{{ check_qinling_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,22 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or qinling_conf.changed | bool
-      or qinling_conf_wsgi.changed | bool
-      or policy_overwriting.changed | bool
-      or qinling_api_container.changed | bool
 
 - name: Restart qinling-engine container
   vars:
     service_name: "qinling-engine"
     service: "{{ qinling_services[service_name] }}"
-    config_json: "{{ qinling_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    qinling_conf: "{{ qinling_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ qinling_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    qinling_engine_container: "{{ check_qinling_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -43,9 +28,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or qinling_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or qinling_engine_container.changed | bool
diff --git a/ansible/roles/qinling/tasks/config.yml b/ansible/roles/qinling/tasks/config.yml
index 0207ad03691845466213368dc437177ce64c9f08..e892fc024f6192926807af81ada0d49ec1dbb317 100644
--- a/ansible/roles/qinling/tasks/config.yml
+++ b/ansible/roles/qinling/tasks/config.yml
@@ -40,7 +40,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: qinling_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -61,7 +60,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/qinling.conf"
     mode: "0660"
   become: true
-  register: qinling_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -77,7 +75,6 @@
     dest: "{{ node_config_directory }}/qinling-api/wsgi-qinling.conf"
     mode: "0660"
   become: true
-  register: qinling_conf_wsgi
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -90,7 +87,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ qinling_policy_file }}"
     mode: "0660"
   become: true
-  register: qinling_policy_overwriting
   when:
     - qinling_policy_file is defined
     - inventory_hostname in groups[item.value.group]
@@ -108,7 +104,6 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_qinling_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/rally/handlers/main.yml b/ansible/roles/rally/handlers/main.yml
index 29c20f725f61a7cf99c6361b33dffb466f095159..fa7bd4438e154424fdd13817db6e768773ef568d 100644
--- a/ansible/roles/rally/handlers/main.yml
+++ b/ansible/roles/rally/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "rally"
     service: "{{ rally_services[service_name] }}"
-    config_json: "{{ rally_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    rally_conf: "{{ rally_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ rally_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    rally_container: "{{ check_rally_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,9 +13,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or rally_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or rally_container.changed | bool
diff --git a/ansible/roles/rally/tasks/config.yml b/ansible/roles/rally/tasks/config.yml
index 7309818ec56b561cc2304747a6f4308e2e7c00c2..1d6e8dbf5e7aedc500d7228fb5e61168651ef594 100644
--- a/ansible/roles/rally/tasks/config.yml
+++ b/ansible/roles/rally/tasks/config.yml
@@ -35,7 +35,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: rally_config_jsons
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
@@ -53,7 +52,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ item.key }}.conf"
     mode: "0660"
   become: true
-  register: rally_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
@@ -67,7 +65,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ rally_policy_file }}"
     mode: "0660"
   become: true
-  register: rally_policy_overwriting
   when:
     - rally_policy_file is defined
     - inventory_hostname in groups[item.value.group]
@@ -85,7 +82,6 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_rally_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/redis/handlers/main.yml b/ansible/roles/redis/handlers/main.yml
index 2822d510bf969a6b8802c013e40e4cc14e1c2135..2b900c37db46b813f4978fe8347b1617436d6c6b 100644
--- a/ansible/roles/redis/handlers/main.yml
+++ b/ansible/roles/redis/handlers/main.yml
@@ -3,9 +3,6 @@
   vars:
     service_name: "redis"
     service: "{{ redis_services[service_name] }}"
-    config_json: "{{ redis_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    redis_conf: "{{ redis_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    redis_container: "{{ check_redis_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -16,19 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or redis_confs.changed |bool
-      or redis_container.changed | bool
 
 - name: Restart redis-sentinel container
   vars:
     service_name: "redis-sentinel"
     service: "{{ redis_services[service_name] }}"
-    config_json: "{{ redis_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    redis_conf: "{{ redis_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    redis_container: "{{ check_redis_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -39,8 +28,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or redis_confs.changed |bool
-      or redis_container.changed | bool
diff --git a/ansible/roles/redis/tasks/config.yml b/ansible/roles/redis/tasks/config.yml
index 89eb645dd98fe4e7391692f08cf226ad1ceed309..a0ba500788a7c5d6cdb674b740efc2e5fa519c0d 100644
--- a/ansible/roles/redis/tasks/config.yml
+++ b/ansible/roles/redis/tasks/config.yml
@@ -18,7 +18,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: redis_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -32,7 +31,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/redis.conf"
     mode: "0660"
   become: true
-  register: redis_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -49,7 +47,6 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_redis_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/sahara/handlers/main.yml b/ansible/roles/sahara/handlers/main.yml
index e47045caeca5f713cad83c5a5d2ea57ce1d34e38..c13304e7eec8a45f24ff5a2d3bd5e061cfb33c48 100644
--- a/ansible/roles/sahara/handlers/main.yml
+++ b/ansible/roles/sahara/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "sahara-api"
     service: "{{ sahara_services[service_name] }}"
-    config_json: "{{ sahara_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    sahara_conf: "{{ sahara_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ sahara_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    sahara_api_container: "{{ check_sahara_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,21 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or sahara_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or sahara_api_container.changed | bool
 
 - name: Restart sahara-engine container
   vars:
     service_name: "sahara-engine"
     service: "{{ sahara_services[service_name] }}"
-    config_json: "{{ sahara_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    sahara_conf: "{{ sahara_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ sahara_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    sahara_engine_container: "{{ check_sahara_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -43,9 +29,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or sahara_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or sahara_engine_container.changed | bool
diff --git a/ansible/roles/sahara/tasks/config.yml b/ansible/roles/sahara/tasks/config.yml
index 43c771ecff6c61c8a1895a136ae5d19250078cf6..445e5ad769b8ba35b6e88bdc0c13e0401048927b 100644
--- a/ansible/roles/sahara/tasks/config.yml
+++ b/ansible/roles/sahara/tasks/config.yml
@@ -35,14 +35,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: sahara_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ sahara_services }}"
   notify:
-    - Restart sahara-api container
-    - Restart sahara-engine container
+    - Restart {{ item.key }} container
 
 - name: Copying over sahara.conf
   vars:
@@ -57,14 +55,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/sahara.conf"
     mode: "0660"
   become: true
-  register: sahara_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ sahara_services }}"
   notify:
-    - Restart sahara-api container
-    - Restart sahara-engine container
+    - Restart {{ item.key }} container
 
 - name: Copying over existing policy file
   template:
@@ -72,15 +68,13 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ sahara_policy_file }}"
     mode: "0660"
   become: true
-  register: sahara_policy_overwriting
   when:
     - sahara_policy_file is defined
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ sahara_services }}"
   notify:
-    - Restart sahara-api container
-    - Restart sahara-engine container
+    - Restart {{ item.key }} container
 
 - name: Check sahara containers
   become: true
@@ -92,12 +86,10 @@
     privileged: "{{ item.value.privileged | default(False) }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_sahara_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ sahara_services }}"
   notify:
-    - Restart sahara-api container
-    - Restart sahara-engine container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/searchlight/handlers/main.yml b/ansible/roles/searchlight/handlers/main.yml
index 984f2725c2126e018495ada985653b5a6f594db5..dc94797b6787be1cb3a4a2b6725bd6512aa4cf06 100644
--- a/ansible/roles/searchlight/handlers/main.yml
+++ b/ansible/roles/searchlight/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "searchlight-api"
     service: "{{ searchlight_services[service_name] }}"
-    config_json: "{{ searchlight_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    searchlight_conf: "{{ searchlight_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ searchlight_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    searchlight_api_container: "{{ check_searchlight_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,21 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or searchlight_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or searchlight_api_container.changed | bool
 
 - name: Restart searchlight-listener container
   vars:
     service_name: "searchlight-listener"
     service: "{{ searchlight_services[service_name] }}"
-    config_json: "{{ searchlight_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    searchlight_conf: "{{ searchlight_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ searchlight_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    searchlight_listener_container: "{{ check_searchlight_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -42,9 +28,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or searchlight_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or searchlight_listener_container.changed | bool
diff --git a/ansible/roles/searchlight/tasks/config.yml b/ansible/roles/searchlight/tasks/config.yml
index 19269fbad78b7b682a778d6b64a079545bf0d9fe..8db1b915cc9092569a7cf8a6a3640fa797e22eef 100644
--- a/ansible/roles/searchlight/tasks/config.yml
+++ b/ansible/roles/searchlight/tasks/config.yml
@@ -35,11 +35,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: searchlight_config_jsons
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ searchlight_services }}"
+  notify:
+    - Restart {{ item.key }} container
 
 - name: Copying over searchlight.conf
   vars:
@@ -53,14 +54,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/searchlight.conf"
     mode: "0660"
   become: true
-  register: searchlight_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ searchlight_services }}"
   notify:
-    - Restart searchlight-api container
-    - Restart searchlight-listener container
+    - Restart {{ item.key }} container
 
 - name: Copying over existing policy file
   template:
@@ -68,15 +67,13 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ searchlight_policy_file }}"
     mode: "0660"
   become: true
-  register: searchlight_policy_overwriting
   when:
     - searchlight_policy_file is defined
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ searchlight_services }}"
   notify:
-    - Restart searchlight-api container
-    - Restart searchlight-listener container
+    - Restart {{ item.key }} container
 
 - name: Check searchlight containers
   become: true
@@ -87,12 +84,10 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_searchlight_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ searchlight_services }}"
   notify:
-    - Restart searchlight-api container
-    - Restart searchlight-listener container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/senlin/handlers/main.yml b/ansible/roles/senlin/handlers/main.yml
index b2f7846f6365cc1da10f18e5c2ec829a7f5c6aa1..d792e47ddc98efa476a61646bfc19f2211ae04c0 100644
--- a/ansible/roles/senlin/handlers/main.yml
+++ b/ansible/roles/senlin/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "senlin-api"
     service: "{{ senlin_services[service_name] }}"
-    config_json: "{{ senlin_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    senlin_conf: "{{ senlin_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ senlin_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    senlin_api_container: "{{ check_senlin_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,21 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or senlin_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or senlin_api_container.changed | bool
 
 - name: Restart senlin-engine container
   vars:
     service_name: "senlin-engine"
     service: "{{ senlin_services[service_name] }}"
-    config_json: "{{ senlin_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    senlin_conf: "{{ senlin_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ senlin_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    senlin_engine_container: "{{ check_senlin_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -42,9 +28,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or senlin_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or senlin_engine_container.changed | bool
diff --git a/ansible/roles/senlin/tasks/config.yml b/ansible/roles/senlin/tasks/config.yml
index dd688f95f84bd46ec06cce8a80840850547b5262..3330205a973773a45eedc17cdb78d8f1c4efdc00 100644
--- a/ansible/roles/senlin/tasks/config.yml
+++ b/ansible/roles/senlin/tasks/config.yml
@@ -35,14 +35,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: senlin_config_jsons
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ senlin_services }}"
   notify:
-    - Restart senlin-api container
-    - Restart senlin-engine container
+    - Restart {{ item.key }} container
 
 - name: Copying over senlin.conf
   vars:
@@ -57,14 +55,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/senlin.conf"
     mode: "0660"
   become: true
-  register: senlin_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ senlin_services }}"
   notify:
-    - Restart senlin-api container
-    - Restart senlin-engine container
+    - Restart {{ item.key }} container
 
 - name: Copying over existing policy file
   template:
@@ -72,15 +68,13 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ senlin_policy_file }}"
     mode: "0660"
   become: true
-  register: senlin_policy_overwriting
   when:
     - senlin_policy_file is defined
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ senlin_services }}"
   notify:
-    - Restart senlin-api container
-    - Restart senlin-engine container
+    - Restart {{ item.key }} container
 
 - name: Check senlin containers
   become: true
@@ -91,12 +85,10 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_senlin_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ senlin_services }}"
   notify:
-    - Restart senlin-api container
-    - Restart senlin-engine container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/skydive/handlers/main.yml b/ansible/roles/skydive/handlers/main.yml
index 7700e96ecd361c2e5e329869bdf9e62d25310e00..1568590e23ead285391dad9fd6c779028b267c06 100644
--- a/ansible/roles/skydive/handlers/main.yml
+++ b/ansible/roles/skydive/handlers/main.yml
@@ -3,9 +3,6 @@
   vars:
     service_name: "skydive-analyzer"
     service: "{{ skydive_services[service_name] }}"
-    config_json: "{{ skydive_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    skydive_conf: "{{ skydive_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    skydive_analyzer_container: "{{ check_skydive_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -16,19 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or skydive_conf.changed |bool
-      or skydive_analyzer_container.changed | bool
 
 - name: Restart skydive-agent container
   vars:
     service_name: "skydive-agent"
     service: "{{ skydive_services[service_name] }}"
-    config_json: "{{ skydive_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    skydive_conf: "{{ skydive_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    skydive_agent_container: "{{ check_skydive_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -40,8 +29,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or skydive_conf.changed |bool
-      or skydive_agent_container.changed | bool
diff --git a/ansible/roles/skydive/tasks/config.yml b/ansible/roles/skydive/tasks/config.yml
index aa83bbb3fe0023d0b927714ade741c3138b0c2d8..638c8c237991a0321623eafc0c12f2cc7a2be878 100644
--- a/ansible/roles/skydive/tasks/config.yml
+++ b/ansible/roles/skydive/tasks/config.yml
@@ -18,14 +18,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: skydive_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ skydive_services }}"
   notify:
-    - Restart skydive-analyzer container
-    - Restart skydive-agent container
+    - Restart {{ item.key }} container
 
 - name: Copying over skydive config file
   template:
@@ -33,14 +31,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/skydive.conf"
     mode: "0660"
   become: true
-  register: skydive_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ skydive_services }}"
   notify:
-    - Restart skydive-analyzer container
-    - Restart skydive-agent container
+    - Restart {{ item.key }} container
 
 - name: Check skydive containers
   become: true
@@ -52,12 +48,10 @@
     privileged: "{{ item.value.privileged | default(False) }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_skydive_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ skydive_services }}"
   notify:
-    - Restart skydive-analyzer container
-    - Restart skydive-agent container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/solum/handlers/main.yml b/ansible/roles/solum/handlers/main.yml
index 34c564e0b9c05c8ae859b0499a7da4654e726ae9..13b01b8f905b35b7728b6f531a9b38482c9c4bbd 100644
--- a/ansible/roles/solum/handlers/main.yml
+++ b/ansible/roles/solum/handlers/main.yml
@@ -3,9 +3,6 @@
   vars:
     service_name: "solum-api"
     service: "{{ solum_services[service_name] }}"
-    config_json: "{{ solum_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    solum_conf: "{{ solum_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    solum_api_container: "{{ check_solum_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -16,19 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or solum_conf.changed | bool
-      or solum_api_container.changed | bool
 
 - name: Restart solum-worker container
   vars:
     service_name: "solum-worker"
     service: "{{ solum_services[service_name] }}"
-    config_json: "{{ solum_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    solum_conf: "{{ solum_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    solum_worker_container: "{{ check_solum_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -39,19 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or solum_conf.changed | bool
-      or solum_worker_container.changed | bool
 
 - name: Restart solum-deployer container
   vars:
     service_name: "solum-deployer"
     service: "{{ solum_services[service_name] }}"
-    config_json: "{{ solum_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    solum_conf: "{{ solum_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    solum_deployer_container: "{{ check_solum_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -62,19 +43,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or solum_conf.changed | bool
-      or solum_deployer_container.changed | bool
 
 - name: Restart solum-conductor container
   vars:
     service_name: "solum-conductor"
     service: "{{ solum_services[service_name] }}"
-    config_json: "{{ solum_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    solum_conf: "{{ solum_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    solum_conductor_container: "{{ check_solum_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -85,8 +58,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or solum_conf.changed | bool
-      or solum_conductor_container.changed | bool
diff --git a/ansible/roles/solum/tasks/config.yml b/ansible/roles/solum/tasks/config.yml
index f2b8b6f8aa3e5fbf4031e6d02e3d9ecf4c24ee16..fc4db8379725f569294aedfa1c22f333a8f42148 100644
--- a/ansible/roles/solum/tasks/config.yml
+++ b/ansible/roles/solum/tasks/config.yml
@@ -18,16 +18,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: solum_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ solum_services }}"
   notify:
-    - Restart solum-api container
-    - Restart solum-conductor container
-    - Restart solum-deployer container
-    - Restart solum-worker container
+    - Restart {{ item.key }} container
 
 - name: Copying over solum.conf
   vars:
@@ -42,16 +38,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/solum.conf"
     mode: "0660"
   become: true
-  register: solum_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ solum_services }}"
   notify:
-    - Restart solum-api container
-    - Restart solum-conductor container
-    - Restart solum-deployer container
-    - Restart solum-worker container
+    - Restart {{ item.key }} container
 
 - name: Check solum containers
   become: true
@@ -62,14 +54,10 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_solum_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ solum_services }}"
   notify:
-    - Restart solum-api container
-    - Restart solum-conductor container
-    - Restart solum-deployer container
-    - Restart solum-worker container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/storm/handlers/main.yml b/ansible/roles/storm/handlers/main.yml
index 6fe4e0c5ebde0b98772443e3c536ae86294a12e4..3818b5c993a87938464058872adb17b39b8db6b1 100644
--- a/ansible/roles/storm/handlers/main.yml
+++ b/ansible/roles/storm/handlers/main.yml
@@ -3,8 +3,6 @@
   vars:
     service_name: "storm-worker"
     service: "{{ storm_services[service_name] }}"
-    config_json: "{{ storm_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    worker_container: "{{ check_storm_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -16,18 +14,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or storm_worker_conf.changed | bool
-      or worker_container.changed | bool
 
 - name: Restart storm-nimbus container
   vars:
     service_name: "storm-nimbus"
     service: "{{ storm_services[service_name] }}"
-    config_json: "{{ storm_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    nimbus_container: "{{ check_storm_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -39,8 +30,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or storm_nimbus_conf.changed | bool
-      or nimbus_container.changed | bool
diff --git a/ansible/roles/storm/tasks/config.yml b/ansible/roles/storm/tasks/config.yml
index d6c3b7a123c85ea084a7fe449feaaa08d6e3bb8a..03c86142358ac8daf33ee988ebfd4a3b3a69c496 100644
--- a/ansible/roles/storm/tasks/config.yml
+++ b/ansible/roles/storm/tasks/config.yml
@@ -18,7 +18,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: storm_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -34,7 +33,6 @@
     dest: "{{ node_config_directory }}/storm-worker/storm.yml"
     mode: "0660"
   become: true
-  register: storm_worker_conf
   with_first_found:
     - "{{ node_custom_config }}/storm/{{ inventory_hostname }}/storm.yml"
     - "{{ node_custom_config }}/storm.yml"
@@ -53,7 +51,6 @@
     dest: "{{ node_config_directory }}/storm-nimbus/storm.yml"
     mode: "0660"
   become: true
-  register: storm_nimbus_conf
   with_first_found:
     - "{{ node_custom_config }}/storm/{{ inventory_hostname }}/storm.yml"
     - "{{ node_custom_config }}/storm.yml"
@@ -74,7 +71,6 @@
     volumes: "{{ item.value.volumes }}"
     environment: "{{ item.value.environment }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_storm_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/tacker/handlers/main.yml b/ansible/roles/tacker/handlers/main.yml
index 9905c486f26e921b471ee85522d4b0fb26d1e3c2..9808902c846e61cc0ce383cf3a4ca142caecc0d8 100644
--- a/ansible/roles/tacker/handlers/main.yml
+++ b/ansible/roles/tacker/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "tacker-conductor"
     service: "{{ tacker_services[service_name] }}"
-    config_json: "{{ tacker_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    tacker_conf: "{{ tacker_confs.results|selectattr('item.key', 'equalto', service_name)|first  }}"
-    policy_overwriting: "{{ tacker_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    tacker_conductor_container: "{{ check_tacker_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,21 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or tacker_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or tacker_conductor_container.changed | bool
 
 - name: Restart tacker-server container
   vars:
     service_name: "tacker-server"
     service: "{{ tacker_services[service_name] }}"
-    config_json: "{{ tacker_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    tacker_conf: "{{ tacker_confs.results|selectattr('item.key', 'equalto', service_name)|first  }}"
-    policy_overwriting: "{{ tacker_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    tacker_server_container: "{{ check_tacker_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -42,9 +28,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or tacker_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or tacker_server_container.changed | bool
diff --git a/ansible/roles/tacker/tasks/config.yml b/ansible/roles/tacker/tasks/config.yml
index e50bb44dae6e42c2783d02d333b26149a4682221..723f3de587a6bf5bc34e4117c10a8187232a62d2 100644
--- a/ansible/roles/tacker/tasks/config.yml
+++ b/ansible/roles/tacker/tasks/config.yml
@@ -35,14 +35,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: tacker_config_jsons
   with_dict: "{{ tacker_services }}"
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled
   notify:
-    - Restart tacker-server container
-    - Restart tacker-conductor container
+    - Restart {{ item.key }} container
 
 - name: Copying over tacker.conf
   vars:
@@ -57,14 +55,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/tacker.conf"
     mode: "0660"
   become: true
-  register: tacker_confs
   with_dict: "{{ tacker_services }}"
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   notify:
-    - Restart tacker-server container
-    - Restart tacker-conductor container
+    - Restart {{ item.key }} container
 
 - name: Copying over existing policy file
   template:
@@ -72,15 +68,13 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ tacker_policy_file }}"
     mode: "0660"
   become: true
-  register: tacker_policy_overwriting
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
     - tacker_policy_file is defined
   with_dict: "{{ tacker_services }}"
   notify:
-    - Restart tacker-server containers
-    - Restart tacker-conductor container
+    - Restart {{ item.key }} container
 
 - name: Check tacker container
   become: true
@@ -94,8 +88,6 @@
     - kolla_action != 'config'
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
-  register: check_tacker_containers
   with_dict: "{{ tacker_services }}"
   notify:
-    - Restart tacker-server container
-    - Restart tacker-conductor container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/telegraf/handlers/main.yml b/ansible/roles/telegraf/handlers/main.yml
index dbfd7098da01a99706e63be9663b0ef2bada6a45..c80d011d33cbfb83d5a498d03f98d2318f6e330c 100644
--- a/ansible/roles/telegraf/handlers/main.yml
+++ b/ansible/roles/telegraf/handlers/main.yml
@@ -3,8 +3,6 @@
   vars:
     service_name: "telegraf"
     service: "{{ telegraf_services[service_name] }}"
-    config_json: "{{ telegraf_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    telegraf_container: "{{ check_telegraf_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -19,9 +17,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or telegraf_confs.changed | bool
-      or telegraf_plugin.changed | bool
-      or telegraf_container.changed | bool
diff --git a/ansible/roles/telegraf/tasks/config.yml b/ansible/roles/telegraf/tasks/config.yml
index 5c1ca1e78af8435bde40b9a31827c42e14602f51..2d2cbe811de22b6f7d715266677bc2a30d038672 100644
--- a/ansible/roles/telegraf/tasks/config.yml
+++ b/ansible/roles/telegraf/tasks/config.yml
@@ -18,7 +18,6 @@
     dest: "{{ node_config_directory }}/telegraf/config.json"
     mode: "0660"
   become: true
-  register: telegraf_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -34,7 +33,6 @@
     dest: "{{ node_config_directory }}/telegraf/telegraf.conf"
     mode: "0660"
   become: true
-  register: telegraf_confs
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -53,7 +51,6 @@
     dest: "{{ node_config_directory }}/telegraf/config"
     mode: "0660"
   become: true
-  register: telegraf_plugin
   when:
     - inventory_hostname in groups[service.group]
     - item.value.enabled | bool
@@ -72,7 +69,6 @@
     volumes: "{{ item.value.volumes }}"
     pid_mode: "{{ item.value.pid_mode }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_telegraf_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/tempest/handlers/main.yml b/ansible/roles/tempest/handlers/main.yml
index 2ee88c0de0e958eb1fc3cf0c7634b675cafda66f..4078b42dfb842652951272ffb94df7c05256a368 100644
--- a/ansible/roles/tempest/handlers/main.yml
+++ b/ansible/roles/tempest/handlers/main.yml
@@ -3,9 +3,6 @@
   vars:
     service_name: "tempest"
     service: "{{ tempest_services[service_name] }}"
-    config_json: "{{ tempest_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    tempest_conf: "{{ tempest_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    tempest_container: "{{ check_tempest_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -16,8 +13,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or tempest_conf.changed | bool
-      or tempest_container.changed | bool
diff --git a/ansible/roles/tempest/tasks/config.yml b/ansible/roles/tempest/tasks/config.yml
index ee7a68db63ffd298d7178721a005e8d8e31c8d65..cf608db04686e1f97929a19851cc475365f1e952 100644
--- a/ansible/roles/tempest/tasks/config.yml
+++ b/ansible/roles/tempest/tasks/config.yml
@@ -18,7 +18,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: tempest_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -36,7 +35,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/tempest.conf"
     mode: "0660"
   become: true
-  register: tempest_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -53,7 +51,6 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_tempest_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/trove/handlers/main.yml b/ansible/roles/trove/handlers/main.yml
index b7d927e12e3192c3ff3a9822c8c644d27a0c4dab..865ab5bf32010ffe2b1645f1880ec6561e4a7367 100644
--- a/ansible/roles/trove/handlers/main.yml
+++ b/ansible/roles/trove/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "trove-api"
     service: "{{ trove_services[service_name] }}"
-    config_json: "{{ trove_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    trove_conf: "{{ trove_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ trove_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    trove_api_container: "{{ check_trove_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,21 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or trove_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or trove_api_container.changed | bool
 
 - name: Restart trove-conductor container
   vars:
     service_name: "trove-conductor"
     service: "{{ trove_services[service_name] }}"
-    config_json: "{{ trove_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    trove_conf: "{{ trove_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ trove_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    trove_conductor_container: "{{ check_trove_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -42,21 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or trove_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or trove_conductor_container.changed | bool
 
 - name: Restart trove-taskmanager container
   vars:
     service_name: "trove-taskmanager"
     service: "{{ trove_services[service_name] }}"
-    config_json: "{{ trove_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    trove_conf: "{{ trove_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ trove_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    trove_taskmanager_container: "{{ check_trove_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -67,9 +43,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or trove_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or trove_taskmanager_container.changed | bool
diff --git a/ansible/roles/trove/tasks/config.yml b/ansible/roles/trove/tasks/config.yml
index 34f494480766ebd00e77ad78b0a01eef7ee204cd..bd9167ff515c4a05d37ed1b4555aab5fb77e7c8e 100644
--- a/ansible/roles/trove/tasks/config.yml
+++ b/ansible/roles/trove/tasks/config.yml
@@ -35,7 +35,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: trove_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -58,7 +57,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ item.key }}.conf"
     mode: "0660"
   become: true
-  register: trove_confs
   when:
     - item.key in services_need_confs
     - inventory_hostname in groups[item.value.group]
@@ -80,7 +78,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/trove.conf"
     mode: "0660"
   become: true
-  register: trove_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -93,15 +90,12 @@
     src: "{{ trove_policy_file_path }}"
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ trove_policy_file }}"
     mode: "0660"
-  register: trove_policy_overwriting
   when:
     - trove_policy_file is defined
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ trove_services }}"
   notify:
-    - Restart trove-api container
-    - Restart trove-conductor container
-    - Restart trove-taskmanager container
+    - Restart {{ item.key }} container
 
 - name: Check trove containers
   become: true
@@ -112,7 +106,6 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_trove_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/vitrage/handlers/main.yml b/ansible/roles/vitrage/handlers/main.yml
index 5cbb6d056277f56447c2627bf10697b8cb1e3610..212872a836cf83e8b87c3a1ccf5bad7b9db76a86 100644
--- a/ansible/roles/vitrage/handlers/main.yml
+++ b/ansible/roles/vitrage/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "vitrage-api"
     service: "{{ vitrage_services[service_name] }}"
-    config_json: "{{ vitrage_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    vitrage_conf: "{{ vitrage_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ vitrage_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    vitrage_api_container: "{{ check_vitrage_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,21 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or vitrage_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or vitrage_api_container.changed | bool
 
 - name: Restart vitrage-notifier container
   vars:
     service_name: "vitrage-notifier"
     service: "{{ vitrage_services[service_name] }}"
-    config_json: "{{ vitrage_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    vitrage_conf: "{{ vitrage_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ vitrage_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    vitrage_notifier_container: "{{ check_vitrage_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -42,22 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or vitrage_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or vitrage_notifier_container.changed | bool
 
 - name: Restart vitrage-graph container
   vars:
     service_name: "vitrage-graph"
     service: "{{ vitrage_services[service_name] }}"
-    config_json: "{{ vitrage_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    vitrage_conf: "{{ vitrage_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ vitrage_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    vitrage_graph_container: "{{ check_vitrage_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    vitrage_prometheus_conf: "{{ vitrage_prometheus_conf.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -68,22 +43,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or vitrage_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or vitrage_graph_container.changed | bool
-      or vitrage_prometheus_conf.changed | bool
 
 - name: Restart vitrage-ml container
   vars:
     service_name: "vitrage-ml"
     service: "{{ vitrage_services[service_name] }}"
-    config_json: "{{ vitrage_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    vitrage_conf: "{{ vitrage_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ vitrage_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    vitrage_ml_container: "{{ check_vitrage_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -94,9 +58,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or vitrage_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or vitrage_ml_container.changed | bool
diff --git a/ansible/roles/vitrage/tasks/config.yml b/ansible/roles/vitrage/tasks/config.yml
index 07ff0de082e689f9664f94cc55197b88d518b3ed..3ab50eafcf7e97c987d53ee7b3ed41a217f5c77c 100644
--- a/ansible/roles/vitrage/tasks/config.yml
+++ b/ansible/roles/vitrage/tasks/config.yml
@@ -35,16 +35,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: vitrage_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ vitrage_services }}"
   notify:
-    - Restart vitrage-api container
-    - Restart vitrage-notifier container
-    - Restart vitrage-graph container
-    - Restart vitrage-ml container
+    - Restart {{ item.key }} container
 
 - name: Copying over vitrage.conf
   vars:
@@ -60,16 +56,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/vitrage.conf"
     mode: "0660"
   become: true
-  register: vitrage_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ vitrage_services }}"
   notify:
-    - Restart vitrage-api container
-    - Restart vitrage-notifier container
-    - Restart vitrage-graph container
-    - Restart vitrage-ml container
+    - Restart {{ item.key }} container
 
 - name: Copying over wsgi-vitrage files for services
   template:
@@ -90,7 +82,6 @@
     dest: "{{ node_config_directory }}/vitrage-graph/prometheus_conf.yaml"
     mode: "0660"
   become: true
-  register: vitrage_prometheus_conf
   when:
     - enable_vitrage_prometheus_datasource | bool
     - inventory_hostname in groups[service.group]
@@ -104,17 +95,13 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ vitrage_policy_file }}"
     mode: "0660"
   become: true
-  register: vitrage_policy_overwriting
   when:
     - vitrage_policy_file is defined
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ vitrage_services }}"
   notify:
-    - Restart vitrage-api container
-    - Restart vitrage-graph container
-    - Restart vitrage-notifier container
-    - Restart vitrage-ml container
+    - Restart {{ item.key }} container
 
 - name: Check vitrage containers
   become: true
@@ -125,14 +112,10 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes | reject('equalto', '') | list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_vitrage_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ vitrage_services }}"
   notify:
-    - Restart vitrage-api container
-    - Restart vitrage-graph container
-    - Restart vitrage-notifier container
-    - Restart vitrage-ml container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/vmtp/handlers/main.yml b/ansible/roles/vmtp/handlers/main.yml
index 3e74f948e735a6b36ffe102d9621b09c87b4de51..e0e3f4f2dba54befc0b55ed54e598ab48fe88b4b 100644
--- a/ansible/roles/vmtp/handlers/main.yml
+++ b/ansible/roles/vmtp/handlers/main.yml
@@ -3,7 +3,6 @@
   vars:
     service_name: "vmtp"
     service: "{{ vmtp_services[service_name] }}"
-    vmtp_container: "{{ check_vmtp_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -14,7 +13,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - vmtp_confs.changed | bool
-      or vmtp_container.changed | bool
diff --git a/ansible/roles/vmtp/tasks/config.yml b/ansible/roles/vmtp/tasks/config.yml
index b72fb2a78ef4f16375c6d09d75d3d6d6d4c85b7c..69326092f81ad9f319160db06965c9adb587e5e7 100644
--- a/ansible/roles/vmtp/tasks/config.yml
+++ b/ansible/roles/vmtp/tasks/config.yml
@@ -33,7 +33,6 @@
     dest: "{{ node_config_directory }}/vmtp/{{ item }}"
     mode: "0660"
   become: true
-  register: vmtp_confs
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -51,7 +50,6 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_vmtp_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/watcher/handlers/main.yml b/ansible/roles/watcher/handlers/main.yml
index 7bf116dbf7e9828c9a723d76daaa83310d1b6634..2ab6ca6662f657bc8c7acf2cb4d3a32fb7e6558e 100644
--- a/ansible/roles/watcher/handlers/main.yml
+++ b/ansible/roles/watcher/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "watcher-applier"
     service: "{{ watcher_services[service_name] }}"
-    config_json: "{{ watcher_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    watcher_conf: "{{ watcher_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ watcher_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    watcher_applier_container: "{{ check_watcher_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,21 +13,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or watcher_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or watcher_applier_container.changed | bool
 
 - name: Restart watcher-engine container
   vars:
     service_name: "watcher-engine"
     service: "{{ watcher_services[service_name] }}"
-    config_json: "{{ watcher_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    watcher_conf: "{{ watcher_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ watcher_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    watcher_engine_container: "{{ check_watcher_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -42,21 +28,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or watcher_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or watcher_engine_container.changed | bool
 
 - name: Restart watcher-api container
   vars:
     service_name: "watcher-api"
     service: "{{ watcher_services[service_name] }}"
-    config_json: "{{ watcher_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    watcher_conf: "{{ watcher_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ watcher_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    watcher_api_container: "{{ check_watcher_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -67,9 +43,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or watcher_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or watcher_api_container.changed | bool
diff --git a/ansible/roles/watcher/tasks/config.yml b/ansible/roles/watcher/tasks/config.yml
index 41bfd7169d74645510aa8ddb5e2994fb980b28c1..b9ca1d5e54000fd26571eae17a4098f690620471 100644
--- a/ansible/roles/watcher/tasks/config.yml
+++ b/ansible/roles/watcher/tasks/config.yml
@@ -34,15 +34,12 @@
     src: "{{ item.key }}.json.j2"
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
-  register: watcher_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ watcher_services }}"
   notify:
-    - Restart watcher-api container
-    - Restart watcher-engine container
-    - Restart watcher-applier container
+    - Restart {{ item.key }} container
 
 - name: Copying over watcher.conf
   vars:
@@ -56,31 +53,25 @@
       - "{{ node_custom_config }}/watcher/{{ inventory_hostname }}/watcher.conf"
     dest: "{{ node_config_directory }}/{{ item.key }}/watcher.conf"
     mode: "0660"
-  register: watcher_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ watcher_services }}"
   notify:
-    - Restart watcher-api container
-    - Restart watcher-engine container
-    - Restart watcher-applier container
+    - Restart {{ item.key }} container
 
 - name: Copying over existing policy file
   template:
     src: "{{ watcher_policy_file_path }}"
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ watcher_policy_file }}"
     mode: "0660"
-  register: watcher_policy_overwriting
   when:
     - watcher_policy_file is defined
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ watcher_services }}"
   notify:
-    - Restart watcher-api container
-    - Restart watcher-applier container
-    - Restart watcher-engine container
+    - Restart {{ item.key }} container
 
 - name: Check watcher containers
   become: true
@@ -91,13 +82,10 @@
     image: "{{ item.value.image }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_watcher_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ watcher_services }}"
   notify:
-    - Restart watcher-api container
-    - Restart watcher-applier container
-    - Restart watcher-engine container
+    - Restart {{ item.key }} container
diff --git a/ansible/roles/zookeeper/handlers/main.yml b/ansible/roles/zookeeper/handlers/main.yml
index 583fbaa99a7d49cc921d3e3d94a46d67982f1611..75e0ec3244e92674f1b1c21bd3756c3a9af96ee8 100644
--- a/ansible/roles/zookeeper/handlers/main.yml
+++ b/ansible/roles/zookeeper/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "zookeeper"
     service: "{{ zookeeper_services[service_name] }}"
-    config_json: "{{ zookeeper_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    zookeeper_conf: "{{ zookeeper_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    zookeeper_instance_id: "{{ zookeeper_instance_id.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    zookeeper_container: "{{ check_zookeeper_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -18,9 +14,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or zookeeper_conf.changed | bool
-      or zookeeper_instance_id.changed | bool
-      or zookeeper_container.changed | bool
diff --git a/ansible/roles/zookeeper/tasks/config.yml b/ansible/roles/zookeeper/tasks/config.yml
index 41ca32ac2d4e68a2e6050af447c1ca0d9a488696..b5a085d7fbf75a4fc2bed00751fbea08092d99a7 100644
--- a/ansible/roles/zookeeper/tasks/config.yml
+++ b/ansible/roles/zookeeper/tasks/config.yml
@@ -18,7 +18,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: zookeeper_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -35,7 +34,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ item.key }}.cfg"
     mode: "0660"
   become: true
-  register: zookeeper_confs
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -49,7 +47,6 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/myid"
     mode: "0660"
   become: true
-  register: zookeeper_instance_id
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -67,7 +64,6 @@
     volumes: "{{ item.value.volumes }}"
     environment: "{{ item.value.environment }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_zookeeper_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
diff --git a/ansible/roles/zun/handlers/main.yml b/ansible/roles/zun/handlers/main.yml
index 7cf52d5b229c04ee7e670d32a385836f9b648f03..cbf03b5cfcd205442398328496e9723a61101e45 100644
--- a/ansible/roles/zun/handlers/main.yml
+++ b/ansible/roles/zun/handlers/main.yml
@@ -3,10 +3,6 @@
   vars:
     service_name: "zun-api"
     service: "{{ zun_services[service_name] }}"
-    config_json: "{{ zun_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    zun_conf: "{{ zun_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ zun_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    zun_api_container: "{{ check_zun_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -18,22 +14,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or zun_conf.changed | bool
-      or zun_conf_wsgi.changed | bool
-      or policy_overwriting.changed | bool
-      or zun_api_container.changed | bool
 
 - name: Restart zun-wsproxy container
   vars:
     service_name: "zun-wsproxy"
     service: "{{ zun_services[service_name] }}"
-    config_json: "{{ zun_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    zun_conf: "{{ zun_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ zun_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    zun_wsproxy_container: "{{ check_zun_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -45,21 +30,11 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or zun_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or zun_wsproxy_container.changed | bool
 
 - name: Restart zun-compute container
   vars:
     service_name: "zun-compute"
     service: "{{ zun_services[service_name] }}"
-    config_json: "{{ zun_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    zun_conf: "{{ zun_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    policy_overwriting: "{{ zun_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    zun_compute_container: "{{ check_zun_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -71,9 +46,3 @@
     dimensions: "{{ service.dimensions }}"
   when:
     - kolla_action != "config"
-    - inventory_hostname in groups[service.group]
-    - service.enabled | bool
-    - config_json.changed | bool
-      or zun_conf.changed | bool
-      or policy_overwriting.changed | bool
-      or zun_compute_container.changed | bool
diff --git a/ansible/roles/zun/tasks/config.yml b/ansible/roles/zun/tasks/config.yml
index d451c05df3108c1802e843bb4981fd0704dffc36..83130e196a2c78799041aa3f56bf31e9133eef6d 100644
--- a/ansible/roles/zun/tasks/config.yml
+++ b/ansible/roles/zun/tasks/config.yml
@@ -35,15 +35,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/config.json"
     mode: "0660"
   become: true
-  register: zun_config_jsons
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ zun_services }}"
   notify:
-    - Restart zun-api container
-    - Restart zun-compute container
-    - Restart zun-wsproxy container
+    - Restart {{ item.key }} container
 
 - name: Copying over zun.conf
   vars:
@@ -58,15 +55,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/zun.conf"
     mode: "0660"
   become: true
-  register: zun_confs
   when:
     - item.value.enabled | bool
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ zun_services }}"
   notify:
-    - Restart zun-api container
-    - Restart zun-compute container
-    - Restart zun-wsproxy container
+    - Restart {{ item.key }} container
 
 - name: Copying over wsgi-zun files for services
   vars:
@@ -76,7 +70,6 @@
     dest: "{{ node_config_directory }}/zun-api/wsgi-zun.conf"
     mode: "0660"
   become: true
-  register: zun_conf_wsgi
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -89,15 +82,12 @@
     dest: "{{ node_config_directory }}/{{ item.key }}/{{ zun_policy_file }}"
     mode: "0660"
   become: true
-  register: zun_policy_overwriting
   when:
     - zun_policy_file is defined
     - inventory_hostname in groups[item.value.group]
   with_dict: "{{ zun_services }}"
   notify:
-    - Restart zun-api container
-    - Restart zun-compute container
-    - Restart zun-wsproxy container
+    - Restart {{ item.key }} container
 
 - name: Check zun containers
   become: true
@@ -109,13 +99,10 @@
     privileged: "{{ item.value.privileged | default(False) }}"
     volumes: "{{ item.value.volumes|reject('equalto', '')|list }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_zun_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
   with_dict: "{{ zun_services }}"
   notify:
-    - Restart zun-api container
-    - Restart zun-compute container
-    - Restart zun-wsproxy container
+    - Restart {{ item.key }} container