|
PG_AUTO_FAILOVER是PG数据库的中间件,可以很好地实现PG数据库的负载均衡和故障转移,部署的架构有单备节点、双备节点等。要有一台单独的主机作为监控节点,要安装PG_AUTO_FAILOVER软件,其它的数据节点也要都要安装PG_AUTO_FAILOVER软件。监控节点对其它数据节点的PG_AUTO_FAILOVER软件通过心跳进行检测、调度。
PG_AUTO_FAILOVER软件部署的步骤主要包括:
1、做好各个节点的/etc/hosts的配置
2、安装PG_AUTO_FAILOVER软件(各个节点都要安装),可以参考一下墨天轮的相应文章,文章比较多,要自己学会分辨和吸收,去伪存真。大家可以参考一下这篇文章https://www.modb.pro/db/48135,这篇文章被墨天轮收入到postgres学习图谱中,在此非常感谢大佬的分享,里面的内容总结还是比较到位的。
3、做好POSTGRES用户的环境变量设置
4、先在单独的主机上创建监控节点。命令如下:切换到POSTGRES后,执行如下命令。
pg_autoctl create monitor --pgdata /var/lib/pgsql/13/data \
--pgport 5432 \
--hostname server01 \
--auth trust \
--ssl-self-signed
--run
实际上各个节点在安装PG_AUTO_FAILOVER,从安装过程的信息输出,我们发现相应的PG数据库-PG13和各种数据库依赖也一并安装好了。执行了上面的命令后,监控主机节点PG数据库的pg_hba.conf文件中,会把HOSTSSL添加进去,也就把要访问的网段以trust的方式添加进去。后面其它主备节点将以SSL的方式对监控节点进行访问。
大家要注意在创建监控节点时,主机屏幕上输出信息,如果有报错信息要及时找原因。创建成功后,相应的命令窗口不要关闭,以保证监控节点的PG_AUTO_FAILOVER处于开启状态。
另外建议在干净的系统(也就是新安装操作系统系统)安装PG_AUTO_FAILOVER,作为监控节点。
5、其它节点的安装和监控系统是一样的,命令如下:
pg_autoctl create postgres \
--pgdata /var/lib/pgsql/13/data \
--hostname paf2 \
--auth trust \
--ssl-self-signed \
--monitor 'postgres://autoctl_node@paf1:5432/pg_auto_failover?sslmode=require' \
--run &
'postgres://autoctl_node@paf1:5432/pg_auto_failover?sslmode=require'是监控主机在创建监控节点时,生成的监控节点连接字符串。后面其它节点在创建时,都要使用那个连接字符串。
总结:在部署PG_AUTO_FAILOVER时,不用预先部署主从复制的。另外,无论是部署监控节点,还是部署其它的节点,一定要带上这个参数--pgdata /var/lib/pgsql/13/data。
合作电话:010-64087828
社区邮箱:greatsql@greatdb.com