Keepalived Vrrp Problem
Hey guys,
I’m trying to install keepalived 1.2.19 on a CentOS 6.5 machine. I did an install from source.
And when I start keepalived this is what I’m seeing in the logs. It’s reporting that the VRRP_Instance(VI_1) Now in FAULT state.
Here’s more of that log entry:
Sep 29 12:06:58 USECLSNDMNRDBA Keepalived_vrrp[44943]: VRRP Instance = VI_1
Sep 29 12:06:58 USECLSNDMNRDBA Keepalived_vrrp[44943]: Using VRRPv2
Sep 29 12:06:58 USECLSNDMNRDBA Keepalived_vrrp[44943]: Want State MASTER
Sep 29 12:06:58 USECLSNDMNRDBA Keepalived_vrrp[44943]: Runing on device
= eth1
Sep 29 12:06:58 USECLSNDMNRDBA Keepalived_vrrp[44943]: Gratuitous ARP
repeat = 5
Sep 29 12:06:58 USECLSNDMNRDBA Keepalived_vrrp[44943]: Gratuitous ARP
refresh repeat = 1
Sep 29 12:06:58 USECLSNDMNRDBA Keepalived_vrrp[44943]: Virtual Router ID
= 51
Sep 29 12:06:58 USECLSNDMNRDBA Keepalived_vrrp[44943]: Priority = 101
Sep 29 12:06:58 USECLSNDMNRDBA Keepalived_vrrp[44943]: Advert interval 1 sec Sep 29 12:06:58 USECLSNDMNRDBA Keepalived_vrrp[44943]: Accept disabled Sep 29 12:06:58 USECLSNDMNRDBA Keepalived_vrrp[44943]: Virtual IP = 1
Sep 29 12:06:58 USECLSNDMNRDBA Keepalived_vrrp[44943]: 10.40.116.34/32
dev eth1 scope global Sep 29 12:06:58 USECLSNDMNRDBA Keepalived_vrrp[44943]: Using LinkWatch kernel netlink reflector… Sep 29 12:06:58 USECLSNDMNRDBA Keepalived_vrrp[44943]: VRRP sockpool:
[ifindex(3), proto(112), unicast(0), fd(10,11)]
Sep 29 12:06:58 USECLSNDMNRDBA Keepalived_healthcheckers[44942]: ——<
Global definitions >—-
5 thoughts on - Keepalived Vrrp Problem
Tim Dunphy wrote:
Two stupid questions:
1. Why are you running 6.5, rather than 6.7?
2. On the host, does it *have* an eth0, or is it, perhaps, em1?
mark “it’s all emx on Dell R720’s”
“ifconfig -a” will show you all of your interfaces.
Em 29-09-2015 15:03, Gordon Messmer escreveu:
Maybe there is a confusion here. Sounds like Tim thought keepalived would create that eth1, like a tunnel interface, but it won’t. You have to specify an interface that actually exists so that the VIP address will be added as a secondary address to ip to that interface.
HTH
Marcelo
Guys,
I actually found a solution to this. After much googling I was able to come up with this:
vrrp_instance VI_1 {
interface eth1
state MASTER
virtual_router_id 51
priority 101 # 101 on master, 100 on backup
*dont_track_primary*
vrrp_unicast_bind 10.40.116.30 # Internal IP of this machine vrrp_unicast_peer 10.40.116.31 # Internal IP of peer virtual_ipaddress {
10.40.116.34
}
The key to getting this to work was to add the entry you see in bold above to the config. dont_track_primary. I’m not sure if that’s the best way to solve this problem. But I know that adding that line allowed me to do what I needed to do. After that I could ping the virtual address.
Thanks for all the suggestions.
Tim
I had same issue keepalived running in Oracle Linux 7 and I just changed my vrrp_instance ID and virtual_router_id to different number and it work for me. I was also using VI_1.
So in your case you just need to change vrrp_instance VI_1 to something else (may be vrrp_instance VI_12 ) on both master and back up.