summaryrefslogtreecommitdiff
path: root/roles/kubernetes/kubeadm/prune/tasks
diff options
context:
space:
mode:
Diffstat (limited to 'roles/kubernetes/kubeadm/prune/tasks')
-rw-r--r--roles/kubernetes/kubeadm/prune/tasks/main.yml12
1 files changed, 9 insertions, 3 deletions
diff --git a/roles/kubernetes/kubeadm/prune/tasks/main.yml b/roles/kubernetes/kubeadm/prune/tasks/main.yml
index 1c746294..88ab7ecd 100644
--- a/roles/kubernetes/kubeadm/prune/tasks/main.yml
+++ b/roles/kubernetes/kubeadm/prune/tasks/main.yml
@@ -1,9 +1,15 @@
---
-- name: remove nodes from api server
+- name: drain and remove superflous nodes
run_once: true
delegate_to: "{{ groups['_kubernetes_primary_controlplane_node_'] | first }}"
- loop: "{{ groups['_kubernetes_nodes_prune_'] | default([]) }}"
- command: "kubectl delete node {{ hostvars[item].kubernetes_node_name }}"
+ block:
+ - name: drain superflous nodes
+ loop: "{{ groups['_kubernetes_nodes_prune_'] | default([]) }}"
+ command: "kubectl --kubeconfig /etc/kubernetes/admin.conf drain {{ hostvars[item].kubernetes_node_name }} --delete-local-data --force --ignore-daemonsets"
+
+ - name: remove nodes from api server
+ loop: "{{ groups['_kubernetes_nodes_prune_'] | default([]) }}"
+ command: "kubectl --kubeconfig /etc/kubernetes/admin.conf delete node {{ hostvars[item].kubernetes_node_name }}"
- name: prune network plugin
include_tasks: "net_{{ kubernetes_network_plugin }}.yml"