zoukankan      html  css  js  c++  java
  • nginx;keepalived配置出现主主的解决方法(脑裂问题)

    1.查看日志

    tail -f  /var/log/messages

    发现master和backup机都是mastaer模式启动的

    通过查看别人的经历,发现VRRP基于报文实现的。master设置一定时间发送一个报文给backup如果backup没有收到就自己成为master。可推出导致问题的原因是因为backup没有收到文

    所以自己成为了master。

    VRRP控制报文只有一种:VRRP通告(advertisement)。它使用IP多播数据包进行封装,组地址为224.0.0.18,发布范围只限于同一局域网内。这保证了VRID在不同网络中可以重复使用。为了减少网络带宽消耗只有主控路由器才可以周期性的发送VRRP通告报文。备份路由器在连续三个通告间隔内收不到VRRP或收到优先级为0的通告后启动新的一轮VRRP选举。

    ------------以下转载别人的博客

      centos7安装keepalived后,不关闭防火墙,虚拟ip不能实现漂移,双机都为master,不能实现双机热备的效果。原因是防火墙中没有方形vrrp的组播 IP 244.0.0.18。centos7下使用的防火请是firewall,本人不会使用centos7默认的防火墙放行组播IP,所以禁用掉centos7默认的防火墙,使用iptables防火墙。

         


    1、关闭默认的firewall防火墙
    #systemctl stop firewalld.service停止firewalld服务
    #systemctl disable firewalld.service进制开机自启动

    2、开启iptables
    #yum install iptables(根据centOS7的版本和内核,有些版本已经装过,可以跳过此命令)

    #yum install iptables-services


    3、编辑iptables文件
    #vim /etc/sysconfig/iptables
    在文件中添加一下内容
    -A OUTPUT -o eno16777736 -d 224.0.0.18 -j ACCEPT    注解:eno16777736 是网卡名称
    -A OUTPUT -o eno16777736 -s 224.0.0.18 -j ACCEPT
    -A INPUT -i eno16777736 -d 224.0.0.18 -j ACCEPT
    -A INPUT -i eno16777736 -s 224.0.0.18 -j ACCEPT

    4、开启服务,设置开机自启动
    #service iptables restart

    #chkconfig iptables on或者systemctl enable iptables.service开机自启

    此时就能实现虚拟ip的漂移,当master(keepalived)挂掉时,虚拟ip会漂移到backup(keepalived)上,master启动后虚拟ip又飘逸回来。
    ---------------------
    原作者:王旭光
    来源:CSDN
    原文:https://blog.csdn.net/qq_25331821/article/details/54602143

  • 相关阅读:
    JS中attribute和property的区别
    px(像素)、pt(点)、ppi、dpi、dp、sp之间的关系
    计算几何
    动态凸包
    斜率DP题目
    斜率DP个人理解
    后缀数组题目
    CF#190DIV.1
    MANACHER---求最长回文串
    扩展KMP题目
  • 原文地址:https://www.cnblogs.com/daysn/p/10136862.html
Copyright © 2011-2022 走看看