经常会出现使用keepalived的时候主机挂了,备机显示绑定了VIP。但是此时实际还是不能访问。
其实就是网关的arp缓存没有刷新

点击(此处)折叠或打开

arping -I eth1 -c 5 -s VIP GATEWAY

在服务器上执行一下就行了。

可以修改keepalived的配置文件,vrrp_instance段添加

点击(此处)折叠或打开

notify_master /root/arp.sh

脚本的内容就是

点击(此处)折叠或打开

    # cat /root/arp.sh
    #!/bin/bash
    VIP=10.xx.xx.xx
    GATEWAY=10.xx.xx.yy
    /sbin/arping -I eth1 -c 5 -s $VIP $GATEWAY &>/dev/null

以下是配置实例

[root@db-lvs-ctc-bj-10-254-9-16 lan]# cat arp_lan.conf

virtual_ipaddress {
                    10.254.15.140
                  }
notify_master "/etc/keepalived/front_clean_arp.sh"  #LVS主备机都为notify_master


virtual_ipaddress {
                    10.254.15.141
                  }
notify_master "/etc/keepalived/oms_clean_arp.sh"  #LVS主备机都为notify_master


virtual_ipaddress {
                    10.254.15.142
                  }
notify_master "/etc/keepalived/stock_clean_arp.sh"  #LVS主备机都为notify_master



2.
[root@db-lvs-ctc-bj-10-254-9-16 keepalived]# cat stock_clean_arp.sh 
#!/bin/sh

VIP=10.254.9.142

GATEWAY=10.254.8.1

/sbin/arping -I eth0 -c 5 -s $VIP $GATEWAY &>/dev/null
文档更新时间: 2019-06-20 06:33   作者:月影鹏鹏