记录一次线上Keepalived非抢占模式重启失效问题解决

1、keepalived.conf文件详解,非全部配置


vrrp_instance VI_1 {
        state MASTER  # keepalived状态可以是MASTER或者BACKUP
        interface ens33  # vip所在网卡
        virtual_router_id 100 # vrid
        priority 100 # 优先级
        nopreempt #设置为不抢占,这里只能设置在state为backup的节点上,而且这个节点的优先级必须别另外的高
        advert_int 1  #检查间隔,单位秒
        unicast_src_ip 192.168.20.130
        unicast_peer {
                192.168.20.131
        }
        authentication {
                auth_type PASS #认证方式,可以是PASS或AH两种认证方式
                auth_pass 1111 #认证密码
        }
        virtual_ipaddress {
                192.168.20.100
        }
}

2、Keepalived非抢占模式配置

Master 的配置

vrrp_instance VI_1 {
        state BACKUP
        interface em2
        virtual_router_id 1
        priority 100
        nopreempt
        advert_int 3
        unicast_src_ip 192.168.2.20
        unicast_peer {
                192.168.2.21
        }
        nopreempt
        authentication {
                auth_type PASS
                auth_pass 1111
        }

        track_script {
                chk_mysql
                chk_redis
                chk_nginx
        }

        virtual_ipaddress {
                192.168.2.100
        }
}

BACKUP的配置

vrrp_instance VI_1 {
        state  BACKUP   # 必填,可以是MASTER或BACKUP

        interface em2
        virtual_router_id 1
        priority 90
        nopreempt
        advert_int 3

        unicast_src_ip 192.168.2.21
        unicast_peer {
                192.168.2.20
        }
        nopreempt
        authentication {
                auth_type PASS
                auth_pass 1111
        }

        track_script {
                chk_mysql
                chk_redis
                chk_nginx
        }

        virtual_ipaddress {
                192.168.2.100
        }

}

3、出现问题

手动开启关闭keepalived不会抢占VIP,但是重启会出先异常
需要解决的问题 21 重启会抢占20的VIP,但是20重启不会抢占21的

4、问题排查

查看Keepalived的运行日志
tail -100f /var/log/messages | grep Keep*
在不重启的情况下,非抢占模式的Keepalived均正常工作,未出现抢占现象
后来经排查发现其中一台服务器添加了很多延时程序,怀疑是这些延时程序影响Keepalived的启动,造成了这样的现象

5、解决方案

对配置 advert_int 将检查间隔由1秒修改为3秒,成功解决问题。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值