From 393eaa17c0d22c8f5e979bf3d04fe94d1b4e8980 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Fri, 19 Aug 2022 20:11:31 +0200 Subject: kubernetes/kubeadm: properly wait for new nodes to join the cluster --- roles/kubernetes/kubeadm/control-plane/tasks/secondary.yml | 13 ++++++++----- roles/kubernetes/kubeadm/worker/tasks/main.yml | 9 +++++++++ 2 files changed, 17 insertions(+), 5 deletions(-) (limited to 'roles/kubernetes') diff --git a/roles/kubernetes/kubeadm/control-plane/tasks/secondary.yml b/roles/kubernetes/kubeadm/control-plane/tasks/secondary.yml index 7c2f490f..aaa4d94e 100644 --- a/roles/kubernetes/kubeadm/control-plane/tasks/secondary.yml +++ b/roles/kubernetes/kubeadm/control-plane/tasks/secondary.yml @@ -55,8 +55,11 @@ content: "{{ kubeadm_join.stderr }}\n" dest: /etc/kubernetes/kubeadm-join.errors - # TODO: acutally check if node has registered -- name: give the new control-plane node(s) a moment to register - when: kubeadm_join is changed - pause: # noqa 503 - seconds: 5 +- name: wait for new control-plane node to register + delegate_to: "{{ groups['_kubernetes_primary_controlplane_node_'] | first }}" + command: "kubectl --kubeconfig /etc/kubernetes/admin.conf get nodes -o name {{ kubernetes_node_name }}" + changed_when: False + register: kubectl_node_get + until: kubectl_node_get.rc == 0 + retries: 30 + dely: 2 diff --git a/roles/kubernetes/kubeadm/worker/tasks/main.yml b/roles/kubernetes/kubeadm/worker/tasks/main.yml index b6694ede..422f27c7 100644 --- a/roles/kubernetes/kubeadm/worker/tasks/main.yml +++ b/roles/kubernetes/kubeadm/worker/tasks/main.yml @@ -27,3 +27,12 @@ copy: content: "{{ kubeadm_join.stderr }}\n" dest: /etc/kubernetes/kubeadm-join.errors + +- name: wait for new worker node to register + delegate_to: "{{ groups['_kubernetes_primary_controlplane_node_'] | first }}" + command: "kubectl --kubeconfig /etc/kubernetes/admin.conf get nodes -o name {{ kubernetes_node_name }}" + changed_when: False + register: kubectl_node_get + until: kubectl_node_get.rc == 0 + retries: 30 + delay: 2 -- cgit v1.2.3