Backing up
export ETCDCTL_API=3
etcdctl --endpoints $ENDPOINT snapshot save <file name> \
--endpoints=https://<host>:2379 \
--cacert=<cacert> \
--cert=<crt> \
--key=<key>
Stop etcd
sudo systemctl stop etcd
Delete existing etcd data
sudo rm -rf /var/lib/etcd
Restoring
export ETCDCTL_API=3
etcdctl snapshot restore <file name> \
--initial-cluster etcd-restore=https://<host>:2380 \
--initial-advertise-peer-urls https://<host>: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 it is working
etcdctl get cluster.name \
--endpoints=https://<host>:2379 \
--cacert=<cacert> \
--cert=<crt> \
--key=<key>