Postgresql高可用之repmgr+keepalived+流复制架构搭建
作为一个管理postgresql流复制以及自动故障转移的开源软件,repmgr大大地简化了PG流复制架构的管理。但是由于repmgr不具备提供VIP功能,因此需要结合keepalived实现VIP,并确保VIP运行在主节点上。此外,它也没有连接池的功能,因此只是一个轻量级开源软件。接下来将详细介绍如何搭建该架构。

一、repmgr软件的安装
首先安装repmgr依赖的软件包,官方推荐使用yum安装如下组件和rpm包:
yum check-update
yum groupinstall “Development Tools”
yum install yum-utils openjade docbook-dtds docbook-style-dsssl docbook-style-xsl
yum install flex libselinux-devel libxml2-devel libxslt-devel openssl-devel pam-devel readline-devel
下载repmgr并安装,当前最新的版本为5.2.1:
../configure && make install
注意,确保pg_config在安装用户的环境变量PATH中,repmgr会默认安装到postgres的软件目录下。
二、PG数据库及repmgr配置
首先完成流复制相关的参数修改和用户创建,并修改pg_hba.conf文件:
createuser repluser with usperuser password ****;
createdb repmgr with owner=repluser;
修改主备节点的pg_hba.conf文件:
local replication repluser trust
host replication repluser 127.0.0.1/32 trust
host replication repluser 10.26.60.0/24 trust
local repmgr repluser trust
host repmgr repluser 127.0.0.1/32 trust
host repmgr repluser 10.26.60.0/24 scram-sha-256
修改.pgpass:
spcl-pg250:5432:repmgr:repluser:Repl#2021
spcl-pg249:5432:repmgr:repluser:Repl#2021
修改/etc/repmgr.conf:
node_id=1
node_name=host01
conninfo=host=host01 user=repluser dbname=repmgr
connect_timeout=2
data_directory=/pgdata’
注册主节点:
repmgr -f /etc/repmgr.conf primary register
验证集群状态:
repmgr -f /etc/repmgr.conf cluster show
创建从库的/etc/repmgr.conf文件:
node_id=2
node_name=host02
conninfo=host=host02 user=repluser dbname=repmgr
connect_timeout=2
data_directory=/pgdata
进行从库搭建前的
原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/5996.html
