美文网首页
数据库pgpool-II 4.1.4 高可用集群之VIP漂移

数据库pgpool-II 4.1.4 高可用集群之VIP漂移

作者: 乐维_lwops | 来源:发表于2022-01-18 09:35 被阅读0次

    问题描述:

    在一次部署PostgreSQL12.3流复制+pgpool-ii 4.1.4高可用集群的时候,遇到了很奇怪的vip漂移问题:PostgreSQL主库down掉后,vip不会漂移到备库,但是当我把主库启动后,vip反而漂移到了备库。

    解决思路:

    第一反应就是failover_stream.sh切换脚本有问题,于是手动执行了一下脚本,发现这个脚本只是用来切换PostgreSQL数据库主、备角色的,VIP并没有发生什么变化;期间参考了百度十几种方法和建议,都没有解决这个问题。最终,我在PostgreSQL官网找到了答案,与大家分享。

    问题排查:

    其实这个问题是pgpool-ii 4.1.4配置文件参数导致的,我看了网上很多的部署教程,在配置pgpool的时候都没有注意这个地方,如下:

    3.1.vi进入pgpool配置文件pgpool.conf,找到以下部分;

    修改如下:

    watchdog 发生故障后, 处理的相关配置(宕机, pgpool进程终止)

    #- Watchdog consensus settings for failover –

    failover_when_quorum_exists = on

    failover_require_consensus = on

    allow_multiple_failover_requests_from_node = on #默认off关闭

    enable_consensus_with_half_votes = on #默认off关闭

    网上很多教程,在配置这个模块的参数时都保持默认;其实这个模块是负责pgpool-ii节点仲裁的,watchdog(pgpool-ii节点)本身故障后,其他节点会执行仲裁,选取出一个主节点去请求vip;如果不配置, 主pgpool-i 节点关闭后, 可能不会漂移vip, 出现集群暂时不可访问的问题;

    相关文章

      网友评论

          本文标题:数据库pgpool-II 4.1.4 高可用集群之VIP漂移

          本文链接:https://www.haomeiwen.com/subject/ueqkhrtx.html