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中的備份文件將數據庫還原