repmgr

repmgr+pg12集群,挂掉的主机如何手动加入集群

一笑奈何 提交于 2020-05-04 13:44:02
接上回,备机在检测到主机挂掉后,备机通过standby promote成功升级为主机继续提供服务 此时集群状态如下: 接下来需要恢复原主机为备机加入集群继续提供服务 1、主机执行node rejoin,将节点重新加入集群: ./repmgr node rejoin -h192.168.101.7 -Upostgres - dpostgres [postgres@localhost bin]$ ./repmgr node rejoin -h192. 168.101 . 7 -Upostgres - dpostgres ERROR: this node cannot attach to rejoin target node 2 DETAIL: rejoin target server ' s timeline 2 forked off current database system timeline 1 before current recovery point 0/8000028 HINT: use --force-rewind to execute pg_rewind 报错日志可以看出,此时的节点和现在的主节点日志发生了分歧,需要调用--force-rewind重做备机,执行如下命令即可 ./repmgr node rejoin -h192. 168.101 . 7

repmgr实现pg流复制失效自动切换

橙三吉。 提交于 2020-04-07 07:04:28
本次测试中用到的配置及脚本见: https://github.com/lxgithub/repmgr_conf_scripts 一、系统 IP HOSTNAME PG VERSION DIR OS 192.168.100.146 node1 9.3.4 /opt/pgsql CentOS6.4_x64 192.168.100.150 node2 9.3.4 /opt/pgsql CentOS6.4_x64 # cat /etc/issue CentOS release 6.5 (Final) Kernel \r on an \m # uname -a Linux barman 2.6.32-431.11.2.el6.x86_64 #1 SMP Tue Mar 25 19:59:55 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux # cat /etc/hosts 127.0.0.1localhost.localdomainlocalhost.localdomainlocalhost4localhost4.localdomain4localhostnode1 ::1localhost.localdomainlocalhost.localdomainlocalhost6localhost6.localdomain6localhostnode1 192

PostgreSQL使用repmgr配置级联复制

安稳与你 提交于 2020-04-06 15:12:09
最近的项目要求配置共享存储的四节点集群,使集群能够形成负载均衡。 但是大家知道,PostgreSQL不支持使用同一数据目录生成多个实例,在执行pg_ctl start的时候,如果指定的数据目录有实例在运行,则该实例会发生错误导致数据库down掉。故而,我们选择了基于pgpool-II + repmgr的策略来实现基于NAS共享存储的负载均衡策略。架构如下图所示: 共享磁盘的实现方法多种多样,本文主要讲解repmgr的使用方法: (零)准备工作 本例中,准备了四台虚拟机,IP地址分别为: 192.168 . 100.1 node1 192.168 . 100.2 node2 192.168 . 100.3 node3 192.168 . 100.4 node4 NAS存储中,分别创建目录data1、data2、data3、data4,并挂载到各数据节点上。* 注意目录权限必须为 700 在所有节点安装repmgr。其中,只有 node1节点上执行initdb ,而node2、node3、node4 均不初始化 。 在node1节点的postgresql.conf添加以下配置: hot_standby = on wal_level = ' replica ' max_wal_senders = 50 创建repmgr用户及数据库 [Harvest@node1 ~] createuser

What is the purpose of `pg_logical` directory inside PostgreSQL data?

岁酱吖の 提交于 2019-12-10 14:49:46
问题 I've just stumbled upon this error while testing failover of a PostgreSQL 9.4 cluster I've set up. Here I'm trying to promote a slave to be the new master: $ repmgr -f /etc/repmgr/repmgr.conf --verbose standby promote 2014-09-22 10:46:37 UTC LOG: database system shutdown was interrupted; last known up at 2014-09-22 10:44:02 UTC 2014-09-22 10:46:37 UTC LOG: database system was not properly shut down; automatic recovery in progress 2014-09-22 10:46:37 UTC LOG: redo starts at 0/18000028 2014-09