centos7备份和恢复单机etcd数据

前面一篇我们已经学习了etcd的单机部署,具体可以查看这个笔记:https://sulao.cn/post/962,这篇我们介绍下etcd数据备份与恢复,我们尝试先创建几条数据,备份,然后删除创建的数据,然后再恢复备份,查询这条被删除的数据。

我们先简单创建条数据

01.
etcdctl put testdata "etcd test"
02.
OK
03.
etcdctl get testdata
04.
testdata
05.
etcd test

然后我们备份数据

01.
ETCDCTL_API=3 etcdctl --endpoints="http://127.0.0.1:2379" snapshot save /data/etcd_backup.db

微信截图_20240126145620.png

备份完成以后,我们删除刚才创建的key "testdata"

01.
etcdctl del testdata
02.
1

删除完成再查询下,确认数据是否被删除

01.
etcdctl get testdata

返回空说明数据已经被删除,接着我们恢复备份,随后再查询刚才删除的key

首先停止etcd服务

01.
systemctl stop etcd

然后移走现有etcd目录并重新创建空目录

01.
mv /data/etcd /data/etcd_bak
02.
mkdir -p /data/etcd

接着就可以还原数据了,注意还原数据的命令就不添加--endpoint参数了,因为这里etcd服务没有启动,加上了就会报错,也无需添加这个参数

01.
ETCDCTL_API=3 etcdctl snapshot restore /data/etcd_backup.db --data-dir=/data/etcd

微信截图_20240126151117.png

注意,目前新版本的etcd恢复都需要使用etcdutl工具进行恢复备份数据,我们这里用的etcdctl,提示了,依然能够正常恢复,但是建议使用etcdutl

接着启动etcd

01.
systemctl start etcd

测试之前备份的数据

01.
etcdctl get testdata
02.
testdata
03.
etcd test

查询到数据说明恢复成功


内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://sulao.cn/post/963

评论列表

0%