etcd file:

root@arm:~# tree /var/lib/etcd
/var/lib/etcd
└── member
    ├── snap
    │   ├── 0000000000000003-0000000000635873.snap
    │   ├── 0000000000000003-0000000000637f84.snap
    │   ├── 0000000000000003-000000000063a695.snap
    │   ├── 0000000000000003-000000000063cda6.snap
    │   ├── 0000000000000003-000000000063f4b7.snap
    │   └── db
    └── wal
        ├── 0000000000000044-00000000005e5061.wal
        ├── 0000000000000045-00000000005fb519.wal
        ├── 0000000000000046-0000000000611a77.wal
        ├── 0000000000000047-0000000000627ff8.wal
        ├── 0000000000000048-000000000063e4b3.wal
        └── 1.tmp

3 directories, 12 files

alias in /root/.bashrc:

alias ectl='ETCDCTL_API=3 etcdctl --endpoints="https://127.0.0.1:2379" --cacert=/etc/kubernetes/pki/etcd/ca.crt --cert=/etc/kubernetes/pki/etcd/server.crt --key=/etc/kubernetes/pki/etcd/server.key'

source:

source /root/.bashrc

显示当前Etcd存储的所有Key:

ectl get / --prefix --keys-only  

备份:

root@arm:~# ectl snapshot save etcd-snapshot-$(date +%F)
2022-08-07 16:48:19.781123 I | clientv3: opened snapshot stream; downloading
2022-08-07 16:48:19.903819 I | clientv3: completed snapshot read; closing
Snapshot saved at etcd-snapshot-2022-08-07

查看快照:

root@arm:~# ll -h etcd-snapshot-2022-08-07 
-rw-r--r-- 1 root root 18M Aug  7 16:48 etcd-snapshot-2022-08-07
root@arm:~# ectl  --write-out=table snapshot status etcd-snapshot-2022-08-07 
+----------+----------+------------+------------+
|   HASH   | REVISION | TOTAL KEYS | TOTAL SIZE |
+----------+----------+------------+------------+
| da7677cf |  6128754 |       2559 |      18 MB |
+----------+----------+------------+------------+

恢复:

#master执行
systemctl stop kubelet.service
docker stop `docker ps |grep apiserver |awk '{print $1}' |xargs`
mv /var/lib/etcd /var/lib/etcd-bak-$(date +%F)
mkdir /var/lib/etcd 
mod 700 /var/lib/etcd
ectl snapshot restore etcd-snapshot-2022-08-07

是否健康:

root@arm:~# ectl endpoint health
https://127.0.0.1:2379 is healthy: successfully committed proposal: took = 34.00196ms

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

Captcha Code