pgpool 故障转移命令问题

时间:2021-02-17 18:16:14

标签: postgresql failover pgpool

在启动两个 postgres 节点(节点 0 主节点和节点 1)并设置 pgpool 之后。默认情况下,pgpool 故障转移命令将 node0 作为主节点。我的问题是是否发生故障转移并使节点 1 成为主节点,一段时间后,如果节点 1(主节点)上发生故障转移,则故障转移命令会将其作为备用节点并跳过故障转移,这会导致集群没有主节点并且无法接受写入事务。任何人都可以帮助我进行使故障转移命令正常工作所需的更改。

带有复制槽的 pgpool v 4.1 和 postgres v 9.6。

1 个答案:

答案 0 :(得分:1)

正常情况下是这样的:

<块引用>

在默认设置下,通过故障转移或切换分离的 PostgreSQL 节点永远不会自动返回到之前的状态(附加状态)

取自文档:

https://www.pgpool.net/docs/41/en/html/runtime-config-failover.html

一旦你故障转移到节点 1,你就有了一个节点,你不再有备用节点,节点 0 可能完全消失了。您需要重新创建它,再次设置复制并将其添加回池中。如果是短暂的网络中断,这可能不会太多,您可以使用 auto_failback 功能。如果仅在主服务器上运行的风险是一个大问题并且您无法容忍它,那么您需要更多的备用服务器。

我会使用链接和测试、测试、测试来阅读上面的 pgpool 文档。