千家信息网

etcd数据库备份与还原

发表于:2024-11-28 作者:千家信息网编辑
千家信息网最后更新 2024年11月28日,1. 备份etcd1.1 手动备份数据etcdctl backup --data-dir /var/lib/etcd/default.etcd --backup-dir 备份目录1.2 脚本备份数据使
千家信息网最后更新 2024年11月28日etcd数据库备份与还原

1. 备份etcd

1.1 手动备份数据

etcdctl backup --data-dir /var/lib/etcd/default.etcd --backup-dir 备份目录

1.2 脚本备份数据

使用etcd自带命令etcdctl进行etc备份,脚本如下:

#!/bin/bashdate_time=`date +%Y%m%d`etcdctl backup --data-dir /var/lib/etcd/default.etcd --backup-dir /root/etcd71-${date_time}.etcdtar cvzf etcd71-${date_time}.tar.gz etcd71-${date_time}.etcd

1.3 删除7天前历史备份

find /root/*.etcd -ctime +7 -exec rm -r {} \;find /root/*.gz -ctime +7 -exec rm -r {} \;

2. 恢复etcd

2.1 单机运行

etcd --data-dir=/var/lib/etcd/default.etcd --force-new-cluster &

2.2 查看id

etcdctl member list1c4358be138c6d94: name=default peerURLs=https://192.168.61.71:2380 clientURLs=http://localhost:2379 isLeader=true

2.3 数据同步

curl http://127.0.0.1:2379/v2/members/1c4358be138c6d94 -XPUT \-H "Content-Type:application/json" -d '{"peerURLs":["http://127.0.0.1:2379"]}'

2.4 结束单机运行

pkill -9 etcd

2.5 重新启动服务

systemctl restart etcdsystemctl status etcd
0