1、备份
不管我们是恢复从节点还是直接重建集群,都要先备份
2、停patroni,拷贝pgsql数据
高可用的pgsql使用patroni来控制pgsql的配置及启停,所以其实我们这步就是变相的停止pgsql
systemctl stop patroni
拷贝当前机器的整个pgsql的数据目录备份,以防一旦重建有问题可以直接还原
mv /data1/postgres /root/backup
3、停ETCD,清理ETCD数据,重建ETCD集群
在这个体系中etcd用于存放patroni的配置数据,所以我们如果要重建,最根本的就是patroni的重建,数据删除
systemctl stop etcd
备份原有ETCD数据
mv /var/lib/etcd/* /root/backup
4、重建集群
首先重建ETCD集群
systemctl start etcd
重启patroni
systemctl start patroni
5、查看集群状态
6、还原数据库
使用步骤1中的备份文件将数据库还原