最近被个keepavlied主从折磨了,后面翻看以前的虚拟机。发现以前都是做过测试的。结果把以前的测试都从头走了一遍。回头想想太浪费时间了。现在特地记录下。省的下次再犯同样的错误。
global_defs {
notification_email_from wl@didi.com
router_id dstack
}
vrrp_instance VR_200 {
state BACKUP
interface eth0
virtual_router_id 200
priority 50
garp_master_delay 60
nopreempt
advert_int 1 #这个表示发心跳的间隔时间
track_interface {
eth0
}
virtual_ipaddress {
172.20.24.212/24 dev eth0
}
virtual_routes {
0.0.0.0/0 via 172.20.24.254 dev eth0
}
}
如果有两个vip,一般有以下三种情况:
1、keepavlied 配置文件写的不对。
2、vrrp包被上联交换机丢了
3、被机器里的防火墙阻挡住了。
# 配置iptables,允许vrrp流量,或者允许组播流量 [root@psql_standby ~]# vim /etc/sysconfig/iptables -A INPUT -p vrrp -j ACCEPT # 或者:-A INPUT -m pkttype --pkt-type multicast -j ACCEPT
如果是VM的话,现在公有云默认都屏蔽组播包了。所以在公有云VM里有可能使用不了keepavlied服务。