Files
home-docker/recovery.sh
T
2022-03-03 19:29:47 +11:00

59 lines
1.6 KiB
Bash

etcdctl -C http://127.0.0.1:2380 \
--ca-file=/etc/kubernetes/pki/etcd/ca.crt \
--cert-file=/etc/kubernetes/pki/etcd/peer.crt \
--key-file=/etc/kubernetes/pki/etcd/peer.key restore db
docker run --rm -it \
-v '/mnt/backups:/backup' \
-v '/var/lib/etcd:/var/lib/etcd' \
--env ETCDCTL_API=3 \
'k8s.gcr.io/etcd:3.2.24' sh
# 1 reset cluster
kubeadm reset
# 2 recovery etcd from backup
docker run --rm \
-v '/mnt/backups:/backup' \
-v '/var/lib/etcd:/var/lib/etcd' \
--env ETCDCTL_API=3 \
'k8s.gcr.io/etcd:3.2.24' \
/bin/sh -c "etcdctl snapshot restore '/backup/snapshot-2022-02-26_05-00-03_UTC.db'; echo 'done'; ls /default.etcd/; mv /default.etcd/member /var/lib/etcd"
## update docker cgroup
vim /lib/systemd/system/docker.service
# update
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --exec-opt native.cgroupdriver=systemd
systemctl daemon-reload
systemctl restart docker
# check cgroup
docker system info --format '{{.CgroupDriver}}'
# re init cluster
sudo kubeadm init --ignore-preflight-errors=DirAvailable--var-lib-etcd --control-plane-endpoint home.toozhao.com --pod-network-cidr=10.244.0.0/16
yo# check logs
journalctl -xeu kubelet -f
# install fiannel
kubectl -n kube-system apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
# print join command
sudo kubeadm token create --print-join-command
# kubelet docker cgroupfs issue
vim /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
# update KUBELET_CGROUP_ARGS=--cgroup-driver=systemd to KUBELET_CGROUP_ARGS=--cgroup-driver=cgroupfs