Backup and restore etcd data.

Look up the value for the key cluster.name in the etcd cluster:

ETCDCTL_API=3 etcdctl get cluster.name
–endpoints=https://10.0.1.101: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

The returned value should be beebox.

Back up etcd using etcdctl and the provided etcd certificates:

ETCDCTL_API=3 etcdctl snapshot save /home/cloud_user/etcd_backup.db
–endpoints=https://10.0.1.101: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

Reset etcd by removing all existing etcd data:

sudo systemctl stop etcd

sudo rm -rf /var/lib/etcd

Restore the etcd Data from the Backup

Restore the etcd data from the backup (this command spins up a temporary etcd cluster, saving the data from the backup file to a new data directory in the same location where the previous data directory was):

sudo ETCDCTL_API=3 etcdctl snapshot restore /home/cloud_user/etcd_backup.db \
  --initial-cluster etcd-restore=https://10.0.1.101:2380 \
  --initial-advertise-peer-urls https://10.0.1.101:2380 \
  --name etcd-restore \
  --data-dir /var/lib/etcd

##Set ownership on the new data directory:

sudo chown -R etcd:etcd /var/lib/etcd

Start etcd:

sudo systemctl start etcd

Verify the restored data is present by looking up the value for the key cluster.name again:

ETCDCTL_API=3 etcdctl get cluster.name
–endpoints=https://10.0.1.101: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

The returned value should be beebox.