etcd
ETCDCTL_API=3 etcdctl --endpoints 127.0.0.1:2379 \
--cert=/home/cloud_user/etcd-certs/etcd-server.crt \
--key=/home/cloud_user/etcd-certs/etcd-server.key \
--cacert=/home/cloud_user/etcd-certs/etcd-ca.pem \
member list
-rw-r--r-- 1 cloud_user cloud_user 1070 Nov 30 13:58 etcd-ca.pem
-rw-r--r-- 1 cloud_user cloud_user 1216 Nov 30 13:58 etcd-server.crt
-rw------- 1 cloud_user cloud_user 1679 Nov 30 13:58 etcd-server.key
$ ip a
2: ens5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc mq state UP group default qlen 1000
inet 10.0.1.102/24 brd 10.0.1.255 scope global dynamic ens
ETCDCTL_API=3 etcdctl --endpoints 10.0.1.102:2379 \
--cert=/home/cloud_user/etcd-certs/etcd-server.crt \
--key=/home/cloud_user/etcd-certs/etcd-server.key \
--cacert=/home/cloud_user/etcd-certs/etcd-ca.pem \
member list
c423485b99beed3c, started, etcd1, https://10.0.1.102:2380, https://10.0.1.102:2379, false
ETCDCTL_API=3 etcdctl --endpoints 10.0.1.102:2379 \
--cert=/home/cloud_user/etcd-certs/etcd-server.crt \
--key=/home/cloud_user/etcd-certs/etcd-server.key \
--cacert=/home/cloud_user/etcd-certs/etcd-ca.pem \
snapshot save /home/cloud_user/etcd_backup.db
{"level":"info","ts":1638283466.2296247,"caller":"snapshot/v3_snapshot.go:119","msg":"created temporary db file","path":"/home/cloud_user/etcd_backup.db.part"}
{"level":"info","ts":"2021-11-30T14:44:26.242Z","caller":"clientv3/maintenance.go:200","msg":"opened snapshot stream; downloading"}
{"level":"info","ts":1638283466.242107,"caller":"snapshot/v3_snapshot.go:127","msg":"fetching snapshot","endpoint":"10.0.1.102:2379"}
{"level":"info","ts":"2021-11-30T14:44:26.246Z","caller":"clientv3/maintenance.go:208","msg":"completed snapshot read; closing"}
{"level":"info","ts":1638283466.2487173,"caller":"snapshot/v3_snapshot.go:142","msg":"fetched snapshot","endpoint":"10.0.1.102:2379","size":"20 kB","took":0.018988257}
{"level":"info","ts":1638283466.248812,"caller":"snapshot/v3_snapshot.go:152","msg":"saved","path":"/home/cloud_user/etcd_backup.db"}
#Verify the snapshot:
ETCDCTL_API=3 etcdctl --endpoints 10.0.1.102:2379 \
--cert=/home/cloud_user/etcd-certs/etcd-server.crt \
--key=/home/cloud_user/etcd-certs/etcd-server.key \
--cacert=/home/cloud_user/etcd-certs/etcd-ca.pem \
--write-out=table snapshot status /home/cloud_user/etcd_backup.db
+----------+----------+------------+------------+
| HASH | REVISION | TOTAL KEYS | TOTAL SIZE |
+----------+----------+------------+------------+
| b245bf41 | 2 | 5 | 20 kB |
+----------+----------+------------+------------+
#Restore the etcd Data from the Backup
#Stop etcd:
sudo systemctl stop etcd
#Delete the existing etcd data:
sudo rm -rf /var/lib/etcd
#Restore etcd data from a backup:
sudo ETCDCTL_API=3 etcdctl snapshot restore /home/cloud_user/etcd_backup.db \
--initial-cluster etcd-restore=https://etcd1:2380 \
--initial-advertise-peer-urls https://etcd1:2380 \
--name etcd-restore \
--data-dir /var/lib/etcd
#Set database ownership:
sudo chown -R etcd:etcd /var/lib/etcd
#Start etcd:
sudo systemctl start etcd
#Verify the system is working:
ETCDCTL_API=3 etcdctl get cluster.name \
--endpoints=https://etcd1:2379 \
--cacert=/home/cloud_user/etcd-certs/etcd-ca.pem \
--cert=/home/cloud_user/etcd-certs/etcd-server.crt \
--key=/home/cloud_user/etcd-certs/etcd-server.key
Last updated
Was this helpful?