diff --git a/roles/remove-node/pre-remove/tasks/main.yml b/roles/remove-node/pre-remove/tasks/main.yml
index 8a39ba120473b50c91e37b8b39a7268fbad299fc..26cf42003f0a77bbb866230b7a36d1453eb65d3c 100644
--- a/roles/remove-node/pre-remove/tasks/main.yml
+++ b/roles/remove-node/pre-remove/tasks/main.yml
@@ -1,4 +1,13 @@
 ---
+- name: cordon-node | Mark all nodes as unschedulable before drain
+  command: >-
+    {{ bin_dir }}/kubectl cordon {{ item }}
+  with_items:
+    - "{{ node.split(',') | default(groups['kube-node']) }}"
+  failed_when: false
+  delegate_to: "{{ groups['kube-master']|first }}"
+  run_once: true
+  ignore_errors: yes
 
 - name: remove-node | Drain node except daemonsets resource
   command: >-