Sync with Longhorn manager
commit 8e060dce288c4dfa054a4b0a188559e624aeb3c8 Author: James Oliver <joliver@rancher.com> Date: Fri Aug 31 16:09:06 2018 -0700 Add script to tear down Longhorn system
This commit is contained in:
parent
a7c768ade2
commit
d7b574acd6
@ -30,6 +30,8 @@ metadata:
|
|||||||
labels:
|
labels:
|
||||||
app: mysql
|
app: mysql
|
||||||
spec:
|
spec:
|
||||||
|
strategy:
|
||||||
|
type: Recreate
|
||||||
template:
|
template:
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
@ -47,6 +49,9 @@ spec:
|
|||||||
volumeMounts:
|
volumeMounts:
|
||||||
- name: mysql-volume
|
- name: mysql-volume
|
||||||
mountPath: /var/lib/mysql
|
mountPath: /var/lib/mysql
|
||||||
|
env:
|
||||||
|
- name: MYSQL_ROOT_PASSWORD
|
||||||
|
value: "rancher"
|
||||||
volumes:
|
volumes:
|
||||||
- name: mysql-volume
|
- name: mysql-volume
|
||||||
persistentVolumeClaim:
|
persistentVolumeClaim:
|
||||||
|
65
scripts/cleanup.sh
Executable file
65
scripts/cleanup.sh
Executable file
@ -0,0 +1,65 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
NAMESPACE=${NAMESPACE:-longhorn-system}
|
||||||
|
|
||||||
|
remove_and_wait() {
|
||||||
|
local crd=$1
|
||||||
|
out=`kubectl -n ${NAMESPACE} delete $crd --all 2>&1`
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
echo $out
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
while true; do
|
||||||
|
out=`kubectl -n ${NAMESPACE} get $crd -o yaml | grep 'items: \[\]'`
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
echo $out
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
echo all $crd instances deleted
|
||||||
|
}
|
||||||
|
|
||||||
|
remove_crd_instances() {
|
||||||
|
remove_and_wait volumes.longhorn.rancher.io
|
||||||
|
# TODO: remove engines and replicas once we fix https://github.com/rancher/longhorn/issues/273
|
||||||
|
remove_and_wait engines.longhorn.rancher.io
|
||||||
|
remove_and_wait replicas.longhorn.rancher.io
|
||||||
|
remove_and_wait engineimages.longhorn.rancher.io
|
||||||
|
remove_and_wait settings.longhorn.rancher.io
|
||||||
|
# do this one last; manager crashes
|
||||||
|
remove_and_wait nodes.longhorn.rancher.io
|
||||||
|
}
|
||||||
|
|
||||||
|
# Delete driver related workloads in specific order
|
||||||
|
remove_driver() {
|
||||||
|
kubectl -n ${NAMESPACE} delete daemonset.apps/longhorn-csi-plugin
|
||||||
|
kubectl -n ${NAMESPACE} delete statefulset.apps/csi-attacher
|
||||||
|
kubectl -n ${NAMESPACE} delete service/csi-attacher
|
||||||
|
kubectl -n ${NAMESPACE} delete statefulset.apps/csi-provisioner
|
||||||
|
kubectl -n ${NAMESPACE} delete service/csi-provisioner
|
||||||
|
kubectl -n ${NAMESPACE} delete daemonset.apps/longhorn-flexvolume-driver
|
||||||
|
kubectl -n ${NAMESPACE} delete deployment.apps/longhorn-driver-deployer
|
||||||
|
}
|
||||||
|
|
||||||
|
# Delete all workloads in the namespace
|
||||||
|
remove_workloads() {
|
||||||
|
kubectl -n ${NAMESPACE} get daemonset.apps -o yaml | kubectl delete -f -
|
||||||
|
kubectl -n ${NAMESPACE} get deployment.apps -o yaml | kubectl delete -f -
|
||||||
|
kubectl -n ${NAMESPACE} get replicaset.apps -o yaml | kubectl delete -f -
|
||||||
|
kubectl -n ${NAMESPACE} get statefulset.apps -o yaml | kubectl delete -f -
|
||||||
|
kubectl -n ${NAMESPACE} get pods -o yaml | kubectl delete -f -
|
||||||
|
kubectl -n ${NAMESPACE} get service -o yaml | kubectl delete -f -
|
||||||
|
}
|
||||||
|
|
||||||
|
# Delete CRD definitions with longhorn.rancher.io in the name
|
||||||
|
remove_crds() {
|
||||||
|
for crd in $(kubectl get crd -o jsonpath={.items[*].metadata.name} | tr ' ' '\n' | grep longhorn.rancher.io); do
|
||||||
|
kubectl delete crd/$crd
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
remove_crd_instances
|
||||||
|
remove_driver
|
||||||
|
remove_workloads
|
||||||
|
remove_crds
|
Loading…
Reference in New Issue
Block a user