From ddc399605a84d07b94abc1d2bc83f0117f13e76a Mon Sep 17 00:00:00 2001 From: Alexander Block Date: Wed, 7 Dec 2016 17:36:24 +0100 Subject: [PATCH] Add playbook and role to reset the cluster This deletes everything related to the cluster and allows to start from scratch. --- reset.yml | 5 +++++ roles/reset/tasks/main.yml | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 reset.yml create mode 100644 roles/reset/tasks/main.yml diff --git a/reset.yml b/reset.yml new file mode 100644 index 000000000..afc3f6e39 --- /dev/null +++ b/reset.yml @@ -0,0 +1,5 @@ +--- + +- hosts: all + roles: + - { role: reset, tags: reset } diff --git a/roles/reset/tasks/main.yml b/roles/reset/tasks/main.yml new file mode 100644 index 000000000..95eeb412e --- /dev/null +++ b/roles/reset/tasks/main.yml @@ -0,0 +1,38 @@ +--- + +- name: reset | stop services + service: name={{item}} state=stopped + with_items: + - kubelet + - etcd + failed_when: false + +- name: reset | remove services + file: path="/etc/systemd/system/{{item}}" state=absent + with_items: + - kubelet + - etcd + register: services_removed + +- name: reset | systemctl daemon-reload + command: systemctl daemon-reload + when: ansible_service_mgr == "systemd" and services_removed.changed + +- name: reset | remove all containers + shell: docker ps -aq | xargs -r docker rm -fv + +- name: reset | gather mounted kubelet dirs + shell: mount | grep /var/lib/kubelet | awk '{print $3}' + register: mounted_dirs + +- name: reset | unmount kubelet dirs + command: umount {{item}} + with_items: '{{mounted_dirs.stdout_lines}}' + +- name: reset | delete some files and directories + file: path={{ item }} state=absent + with_items: + - /etc/kubernetes/ + - /var/lib/kubelet + - /var/lib/etcd +