更新时间:2024-06-12 15:54:27

本章节为补充说明,目的是将恢复之后的实例拓展成DS_PPS集群。由于DS_PPS集群环境为特定提供镜像环境(科特迪瓦提供的特定镜像)搭建完成,因此恢复成DS_PPS集群也是恢复至原有镜像搭建环境。下文中脚本在镜像安装之后环境自带,不做补充说明。本章节只做简单步骤指导。

前置环境准备配置

  1. 利用原生产镜像搭建一个节点(DS_PPS三号机)作为灾备节点,通过root用户,执行命令初始化一个空实例A:

    /root/script/postgresql96-setup_initdb.sh

  2. 按照第五章的恢复步骤,恢复数据库数据至DS_PPS三号机空实例A的数据路径下,覆盖空实例A下的数据;编辑postgresql.auto.conf文件取消以下两个参数的注释,并重启实例。

    image46.png

    编辑postgresql.auto.conf

  3. 按照原双机环境搭建两个节点:DS_PPS一号机与DS_PPS二号机,部署好Pacemaker集群;

  4. 执行pcs status查看主用数据库所在机器(DS_PPS一号机),在DS_PPS一号机上,通过root用户,执行命令初始化一个空实例:

    /root/script/postgresql96-setup_initdb.sh

  5. 在DS_PPS二号机上,通过root用户,执行命令/root/script/ds_pps_addnode.sh

  6. 节点添加完毕后,请先等待5分钟,然后通过root用户,执行命令:pcs status

    image47.png

    查看集群状态

此时Pacemaker集群已在DS_PPS二号机上启动。

部署灾备数据库

  1. 通过root用户,执行命令:shutdown -h now,关闭DS_PPS数据库二号机。

  2. 在DS_PPS数据库一号机上,通过postgres用户,执行命令:/home/postgres/1.pg_create_standby_db.sh

  3. 在部署灾备库(DS_PPS数据库一号机)的交互界面中,输入主用数据库IP地址:DS_PPS数据库三号机的IP地址。

  4. 此时,DS_PPS数据库一号机, 已降级为DS_PPS数据库三号机的灾备库。

  5. 在DS_PPS数据库一号机上,通过postgres用户,执行命令:/home/postgres/2.pg_sync_status.sh,查看数据同步状态,确保已正常实时同步DS_PPS数据库三号机的数据。

  6. 在DS_PPS数据库一号机上,通过root用户,查看DS_PPS集群状态:

    image48.png

    查看集群状态

  7. 在DS_PPS数据库一号机上,通过root用户,查看PostgreSQL状态:

    [root@svr-dsdb01 ~]# systemctl status postgresql-9.6.service

    image49.png

    查看PostgreSQL状态

主备切换

  1. 在DS_PPS数据库一号机上,通过postgres用户,执行命令:/home/postgres/3.pg_failover.sh

  2. 此时,DS_PPS数据库一号机已经升级为主库。

  3. 将DS_PPS数据库二号机开机。

  4. DS_PPS数据库二号机启动后,DS_PPS集群的主库会自动切换到DS_PPS数据库二号机。

  5. 在DS_PPS数据库二号机上,通过root用户,查看DS_PPS集群状态,集群恢复完成:

    [root@svr-dsdb02 ~]# pcs status

    image50.png

    查看Pacemaker集群状态