diff --git a/ansible/roles/keystone/tasks/check.yml b/ansible/roles/keystone/tasks/check.yml
index 56d000aebc60df18df5d276d63327d51bfe241cf..4a49db8186c2714f3491a8e0e45834eb21726ff6 100644
--- a/ansible/roles/keystone/tasks/check.yml
+++ b/ansible/roles/keystone/tasks/check.yml
@@ -1,19 +1,9 @@
 ---
 - name: Keystone sanity checks
-  command: docker exec -t kolla_toolbox /usr/bin/ansible localhost
-    -m kolla_sanity
-    -a "service=keystone
-        project=service
-        user=admin
-        password={{ keystone_admin_password }}
-        role=admin
-        region_name={{ openstack_region_name }}
-        auth={{ '{{ openstack_keystone_auth }}' }}"
-    -e "{'openstack_keystone_auth':{{ openstack_keystone_auth }}}"
-  register: keystone_sanity
-  changed_when: "{{ keystone_sanity.stdout.find('localhost | SUCCESS => ') != -1 and (keystone_sanity.stdout.split('localhost | SUCCESS => ')[1]|from_json).changed }}"
-  until: keystone_sanity.stdout.split()[2] == 'SUCCESS'
-  retries: 10
-  delay: 5
+  kolla_toolbox:
+    module_name: os_auth
+    module_args:
+      auth: "{{ openstack_keystone_auth }}"
   run_once: True
+  delegate_to: "{{ groups['keystone'][0] }}"
   when: kolla_enable_sanity_keystone | bool