Browse Source

Remove nodes

Drain node except daemonsets resource
Use reset cluser for delete deploy data
Then delete node
pull/2416/head
rong.zhang 7 years ago
committed by riverzhang
parent
commit
12c78e622b
4 changed files with 55 additions and 0 deletions
  1. 29
      remove-node.yml
  2. 8
      roles/remove-node/post-remove/tasks/main.yml
  3. 3
      roles/remove-node/pre-remove/defaults/main.yml
  4. 15
      roles/remove-node/pre-remove/tasks/main.yml

29
remove-node.yml

@ -0,0 +1,29 @@
---
- hosts: all
gather_facts: true
- hosts: etcd:k8s-cluster:vault:calico-rr
vars_prompt:
name: "delete_nodes_confirmation"
prompt: "Are you sure you want to delete nodes state? Type 'yes' to delete nodes."
default: "no"
private: no
pre_tasks:
- name: check confirmation
fail:
msg: "Delete nodes confirmation failed"
when: delete_nodes_confirmation != "yes"
- hosts: kube-master
roles:
- { role: remove-node/pre-remove, tags: pre-remove }
- hosts: kube-node
roles:
- { role: reset, tags: reset }
- hosts: kube-master
roles:
- { role: remove-node/post-remove, tags: post-remove }

8
roles/remove-node/post-remove/tasks/main.yml

@ -0,0 +1,8 @@
---
- name: Delete node
command: kubectl delete node {{ item }}
with_items:
- "{{ groups['kube-node'] }}"
delegate_to: "{{ groups['kube-master'][0] }}"
ignore_errors: yes

3
roles/remove-node/pre-remove/defaults/main.yml

@ -0,0 +1,3 @@
---
drain_grace_period: 300
drain_timeout: 360s

15
roles/remove-node/pre-remove/tasks/main.yml

@ -0,0 +1,15 @@
---
- name: remove-node | Drain node except daemonsets resource
command: >-
{{ bin_dir }}/kubectl drain
--force
--ignore-daemonsets
--grace-period {{ drain_grace_period }}
--timeout {{ drain_timeout }}
--delete-local-data {{ item }}
with_items:
- "{{ groups['kube-node'] }}"
failed_when: false
delegate_to: "{{ groups['kube-master'][0] }}"
ignore_errors: yes
Loading…
Cancel
Save