• keepalive 两个master


    查看10.11.4.187的日志发现,其上keepalived服务刚启动后不久就进入master模式,获得VIP;同时查看10.11.4.186的日志,并没有任何异常。

    初步判断是两边的协商机制出问题(vrrp),10.11.4.187 backup节点与10.11.4.186 主节点协商不成功,认为主节点故障,切换升主。

    2. 验证分析

    验证

    # 采用tcpdump抓包定位问题,以下是在10.11.4.186 主节点的抓包结果
    [root@psql_master ~]# tcpdump -i eth0 vrrp -n

    # 以下是在10.11.4.187 备节点的抓包结果
    [root@psql_standby ~]# tcpdump -i eth0 vrrp -n

    分析

    1. 10.11.4.186/187 主/备节点轮流在对外发布vrrp通告(vrrp通告地址224.0.0.18),理论上备节点如果收到主节点的通告,通告中优先级高于自己,就不会主动对外发送通告;
    2. 查看iptables,默认没有允许vrrp或者组播流量,导致备节点收不到主节点的通告,认为主节点故障,切换状态,发布VIP。 

    三.解决方案

    1. 配置iptables 

    复制代码
    # 配置iptables,允许vrrp流量,或者允许组播流量
    [root@psql_standby ~]# vim /etc/sysconfig/iptables
    -A INPUT -p vrrp -j ACCEPT
    # 或者:-A INPUT -m pkttype --pkt-type multicast -j ACCEPT
    
    # 重启iptables:
    [root@psql_standby ~]# service iptables restart
    复制代码

    放开iptables策略后,tcpdump抓包发现:备节点10.11.4.187收到更高级的通告,已不再主动向外发vrrp通告。

    2. 设置vrrp单播通告(未验证)

  • 相关阅读:
    WEB
    Java
    数据库
    node笔记(持续更新)
    mysql数据库关于表的操作
    flutter 文本 更多 收起
    flutter 处理时间字符串
    flutter 轮播图动态加载网络图片
    写flutter项目之一脚一个坑,持续踩坑中
    flutter json数据解析
  • 原文地址:https://www.cnblogs.com/agang-php/p/12602431.html
Copyright © 2020-2023  润新知