diff --git a/roles/kubernetes/preinstall/tasks/0050-create_directories.yml b/roles/kubernetes/preinstall/tasks/0050-create_directories.yml
index 1e28d178553fc2fb86b559651e7af2406b70abf8..2e2c461848039a7249d060c8dad64d41f6c7b205 100644
--- a/roles/kubernetes/preinstall/tasks/0050-create_directories.yml
+++ b/roles/kubernetes/preinstall/tasks/0050-create_directories.yml
@@ -23,6 +23,14 @@
     - "{{ kube_manifest_dir }}"
     - "{{ kube_script_dir }}"
 
+- name: Check if kubernetes kubeadm compat cert dir exists
+  stat:
+    path: "{{ kube_cert_compat_dir }}"
+  register: kube_cert_compat_dir_check
+  when:
+    - inventory_hostname in groups['k8s-cluster']
+    - kube_cert_dir != kube_cert_compat_dir
+
 - name: Create kubernetes kubeadm compat cert dir (kubernetes/kubeadm issue 1498)
   file:
     src: "{{ kube_cert_dir }}"
@@ -31,6 +39,7 @@
   when:
     - inventory_hostname in groups['k8s-cluster']
     - kube_cert_dir != kube_cert_compat_dir
+    - not kube_cert_compat_dir_check.stat.exists
 
 - name: Create cni directories
   file: