-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathclean-kube-wipe
executable file
·74 lines (72 loc) · 2.78 KB
/
clean-kube-wipe
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#!/bin/bash
# Copyright 2017 Charter DNA Team (CTEC).
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# Cleaning up nodes is simple:
### Declare colors to use during the running of this script:
declare -r GREEN="\033[0;32m"
declare -r RED="\033[0;31m"
declare -r YELLOW="\033[0;33m"
function echo_green {
echo -e "${GREEN}$1"; tput sgr0
}
function echo_red {
echo -e "${RED}$1"; tput sgr0
}
function echo_yellow {
echo -e "${YELLOW}$1"; tput sgr0
}
source /opt/demo/.bootkube_env
echo_red "\nWARNING!!! Removing entire Kubernetes environment from ${HOSTNAME}..."
sudo systemctl stop kubelet.service
sudo systemctl disable kubelet.service
sudo systemctl restart docker
sudo docker stop $(sudo docker ps -a | grep k8s| cut -c1-20 | xargs sudo docker stop)
sudo docker rm -f $(sudo docker ps -a | grep k8s| cut -c1-20 | xargs sudo docker stop)
sudo systemctl stop docker
sudo systemctl disable docker
sudo rm -rf /etc/kubernetes/
sudo rm -rf /var/etcd
sudo rm -rf /var/run/calico
sudo rm -rf /var/run/flannel
sudo rm -rf /var/run/kubernetes/*
sudo rm -rf /var/lib/kubelet/*
sudo rm -rf /var/run/lock/kubelet.lock
sudo rm -rf /var/run/lock/api-server.lock
sudo rm -rf /var/run/lock/etcd.lock
sudo rm -rf /var/run/lock/pod-checkpointer.lock
sudo rm -rf /opt/demo/log/cluster-info*
sudo rm -rf /opt/demo/.bootkube
sudo ip link set flannel.1 down
sudo hostess del ${KUBE_DNS_API} ${KUBE_MASTER}
sudo hostess del kubernetes ${KUBE_MASTER}
sudo cp /opt/demo/backups/resolv.conf /etc/resolv.conf
sudo rm -rf /var/lib/ceph/* /var/lib/openstack-helm/*
### These can optionally be enabled, but a menu is soon to come to clean up the following binaries:
# sudo rm -rf /usr/local/bin/bootkube
# sudo rm -rf /usr/local/bin/kubectl
# sudo rm -rf /usr/local/bin/kubelet
# sudo rm -rf /usr/local/bin/helm
# sudo rm -rf /usr/local/bin/hostess
# sudo rm -rf /opt/cni
sudo rm -rf /etc/systemd/system/kubelet.service
sudo systemctl daemon-reload
### These can optionally be enabled, but Docker will need to be reinstalled, and volumes will be perm removed:
# sudo apt-get remove docker.io -y
# sudo rm -rf /var/lib/docker
# sudo rm -rf /var/lib/kubelet
# sudo rm -rf /var/lib/dockershim
sudo rm -rf /var/lib/openstack-helm/*
sudo rm -rf /var/lib/nova
echo_green "\nCOMPLETE!\n"