From 6c1ab2498153ebf70b5ddc5dd4e28d11631359e5 Mon Sep 17 00:00:00 2001 From: Max Gautier Date: Mon, 8 Nov 2021 11:22:58 +0100 Subject: [PATCH] Limit kubectl delete node to k8s nodes (#8101) * Limit kubectl delete node to k8s nodes This avoids the use of `kubectl delete node` when removing etcd nodes which are not part of the cluser (separate etcd) * Take errors into account when deleting node There should not be error now that we're limiting the deletion to nodes actually in the cluster * Retrying on error --- roles/remove-node/post-remove/tasks/main.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/roles/remove-node/post-remove/tasks/main.yml b/roles/remove-node/post-remove/tasks/main.yml index 3205c008f..6ca8c2a68 100644 --- a/roles/remove-node/post-remove/tasks/main.yml +++ b/roles/remove-node/post-remove/tasks/main.yml @@ -1,5 +1,10 @@ --- -- name: Delete node # noqa 301 ignore-errors +- name: Delete node command: "{{ bin_dir }}/kubectl delete node {{ kube_override_hostname|default(inventory_hostname) }}" delegate_to: "{{ groups['kube_control_plane']|first }}" - ignore_errors: true + when: inventory_hostname in groups['k8s_cluster'] + retries: 10 + # Sometimes the api-server can have a short window of indisponibility when we delete a master node + delay: 3 + register: result + until: result is not failed