diff options
Diffstat (limited to 'roles/kubernetes/node/tasks')
-rw-r--r-- | roles/kubernetes/node/tasks/add.yml | 18 | ||||
-rw-r--r-- | roles/kubernetes/node/tasks/main.yml | 8 | ||||
-rw-r--r-- | roles/kubernetes/node/tasks/remove.yml | 3 |
3 files changed, 29 insertions, 0 deletions
diff --git a/roles/kubernetes/node/tasks/add.yml b/roles/kubernetes/node/tasks/add.yml new file mode 100644 index 00000000..dd784b35 --- /dev/null +++ b/roles/kubernetes/node/tasks/add.yml @@ -0,0 +1,18 @@ +--- +- name: get master vars + set_fact: + kube_bootstrap_token: "{{ hostvars[kubernetes_nodes_master].kube_bootstrap_token }}" + kube_bootstrap_ca_cert_hash: "{{ hostvars[kubernetes_nodes_master].kube_bootstrap_ca_cert_hash }}" + kube_master_addr: "{{ kubernetes.api_advertise_ip | default(hostvars[kubernetes_nodes_master].ansible_default_ipv4.address) }}" + +- name: join kubernetes node + command: "kubeadm join --token {{ kube_bootstrap_token }} {{ kube_master_addr }}:6443 --discovery-token-ca-cert-hash {{ kube_bootstrap_ca_cert_hash }}" + args: + creates: /etc/kubernetes/kubelet.conf + register: kubeadm_join + +- name: dump output of kubeadm join to log file + when: kubeadm_join.changed + copy: + content: "{{ kubeadm_join.stdout }}\n" + dest: /etc/kubernetes/kubeadm-join.log diff --git a/roles/kubernetes/node/tasks/main.yml b/roles/kubernetes/node/tasks/main.yml new file mode 100644 index 00000000..d078d2fb --- /dev/null +++ b/roles/kubernetes/node/tasks/main.yml @@ -0,0 +1,8 @@ +--- +- name: add node cluster + include_tasks: add.yml + when: k8s_remove_node is not defined + +- name: remove node from cluster + include_tasks: remove.yml + when: k8s_remove_node is defined diff --git a/roles/kubernetes/node/tasks/remove.yml b/roles/kubernetes/node/tasks/remove.yml new file mode 100644 index 00000000..95787629 --- /dev/null +++ b/roles/kubernetes/node/tasks/remove.yml @@ -0,0 +1,3 @@ +--- +- name: clean up settings and files created by kubeadm + command: kubeadm reset |