keepalived的群集IP能ping通,但是服务端口一会儿就不通【原创】

故障现象:keepalived的群集IP能ping通,但是服务端口一会儿就不通

处理方法:

1、修改keepalived配置,以下无效

1、修改keepalived配置,以下无效
vrrp_unicast_bind 10.70.X.X  # 本机IP
vrrp_unicast_peer 10.70.X.X   # 对点IP

2、修改keepalived配置,以下无效

   unicast_src_ip 10.70.X.X    # 本机IP
   unicast_peer {
       10.70.X.X               # 对方IP
    }

参数说明

     #在网卡上,用于绑定vrrpd的默认ip是主ip,如果你想隐藏本地vrrpd,可以使用这个ip作为多播和单播vrrp报文的源地址(如果是多么,vrrpd将会接收到数据包,无论使用什么样的源IP地址)
     mcast_src_ip <IPADDR>          #指定多播源ip地址
     unicast_src_ip <IPADDR>          #指定单播源ip地址
     version <2 or 3>           #指定运行在这个网卡上的vrrp版本,默认使用的是全局配置的参数“vrrp_version”
     unicast_peer {           #不通过vrrp组播群组发送vrrp广播报文。相反,通过单播的方式将广告发送到一下ip列表中。在某些不支持多播的网络环境中
         <IPADDR>           #使用VRRP  FSM(Finite State Machine有限状态机)和功能也是不错的。
          ...                         #指定的ip可以是IPV4 和IPV6
     }
vrrp_strict: 慎用,严格遵守VRRP协议。下列情况将会阻止启动Keepalived:1. 没有VIP地址。2. 单播邻居。3. 在VRRP版本2中有IPv6地址。

keepalived的原理

在传统的物理网络中,可以通过 keepalived 的 VRRP 协议协商主备状态,其原理是:主设备周期性发送免费 ARP 报文刷新上联交换机的 MAC 表或终端 ARP 表,触发 VIP 迁移到主设备上。

 开启组播功能 打开 VPC 组播开关;同时在 keepalived 配置文件中无需配置对端设备的 IP 地址,即不配置 “unicast_peer” 参数

#单播模式需要关闭vrrp_strict,严格遵守vrrp协议这个选项
单播需要在VIP实例配置段加入单播的源地址和目标地址

推荐

! Configuration File for keepalived

global_defs {
   router_id LVS_IBE
}

vrrp_script chk_http_port {
    script "/etc/keepalived/chk.sh"
    interval 2                ###监控时间
    weight 3
}

vrrp_instance VI_1 {
  #  state MASTER                 #状态,位主,从机使用BACKUP 
    state BACKUP
    interface eth1                   #绑定虚拟IP的网络接口
    virtual_router_id 114          #VRRP组名,两个节点的设置必须一样,以指明各个节点属于同一VRRP组
    priority 70                      #权重,哪权重高,那个就是主的,所以MASTER的权重必须高于BACKUP
    advert_int 1                       #组播信息发送间隔,两个节点设置必须一样
    nopreempt                      #非争抢机制
   unicast_src_ip 10.0.69.96
   unicast_peer {
       10.0.69.95
    }

    authentication {
        auth_type PASS             #主从机子通信的加密方式,两台必须一样
        auth_pass 1070             #主从机子通信的加密密码,两台必须一样
    }
    virtual_ipaddress {
        10.0.69.89/24                 #指定虚拟IP, 两个节点设置必须一样
    }
    track_script {
    chk_http_port                 #监控脚本,chk_http_port对应的是第3行的vrrp_script chk_http_port
    }
}

 

网上参考

[root@node1 ~]# cat  /etc/keepalived/keepalived.conf
! Configuration File for keepalived
  global_defs {
     notification_email {
       acassen@firewall.loc
       failover@firewall.loc
       sysadmin@firewall.loc
     }
  }
  vrrp_script checkhaproxy
  {
       #script "/etc/keepalived/do_sth.sh"   # 检测业务进程是否运行正常。其中“do_sth.sh”文件为用户自定义的业务进程检测脚本,请根据业务需要来执行,执行时“do_sth.sh”更换为实际的脚本名称。
       script "/usr/bin/curl -s http://10.0.22.16:8008/leader -v 2>&1|grep '200 OK' >/dev/null"
       interval 5
  }
  vrrp_instance VI_1 {
  # 注意主备参数选择
  state BACKUP              # 设置初始状态均为“备“
      interface eth0          # 设置绑定 VIP 的网卡 例如 eth0  
      virtual_router_id 51    # 配置集群 virtual_router_id 值
      nopreempt               # 设置非抢占模式,
      # preempt_delay 10      # 仅 state MASTER 时生效    
      priority 100            # 两设备是相同值的等权重节点
      advert_int 5        
      authentication {
          auth_type PASS
          auth_pass 1111
      }
      unicast_src_ip 10.0.22.16  # 设置本机内网IP地址
      unicast_peer {
          10.0.22.6             # 对端设备的 IP 地址
          10.0.22.17
      }
      virtual_ipaddress {
          10.0.22.144           # 设置高可用虚拟 VIP 
      }
      garp_master_delay 1    # 设置当切为主状态后多久更新 ARP 缓存
      garp_master_refresh 5   # 设置主节点发送 ARP 报文的时间间隔
       track_interface {
                  eth0               # 使用绑定 VIP 的网卡 例如 eth0
          }
      track_script {
         checkhaproxy 
      }
  }

keepalived推荐使用单播方式进行 VRRP 通信 - littlevigra - 博客园

https://www.cnblogs.com/hixiaowei/p/16181822.html

其中还查到涉及到改net.ipv4.tcp_timestamps = 1参数,查看别的服务器这参数都是打开的,所以人为错误忽略此修改

Linux服务器可以ping,但是telnet端口超时,网站wget超时,访问超时的解决办法 - 百度文库
https://wenku.baidu.com/view/7e1de8f0b3717fd5360cba1aa8114431b80d8e64.html?_wkts_=1678326045695

3、最后发现是群集IP配置错误,与其他服务器IP相同

4、避免此类问题方法

1)部署keepalived前,先ping 所给的vip,看是否通,如果通则有可能已被使用

2)让开发转云平台所分配的订单邮件,订单上会有群集IP是多少,避免手误发错。

 
posted @ 2023-03-08 16:58  paul_hch  阅读(821)  评论(0编辑  收藏  举报