LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

RE: keepalived script problem.

To: "LinuxVirtualServer.org users mailing list." <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: RE: keepalived script problem.
Cc: keepalived-devel@xxxxxxxxxxxxxxxxxxxxx
From: "Peter Mueller" <pmueller@xxxxxxxxxxxx>
Date: Tue, 26 Oct 2004 10:26:27 -0700
> To start with, the PID_FILE looks just fine. It has the 
> correct content, ownership and rights.

Ok.

> My keepalive version is: 1.1.7.
> Distribution is Debian 3.0.
> I have 2 NICs, Intel(R) PRO/100 Network Driver - version 2.3.38-k1.
> My kernel is 2.4.26p3-lvs (NAT and conntrack disabled).
> No SMP set.

Ok.  Looks good.  I forgot to ask, can you post your keepalived.conf file?

Comments RE: logs are inline below.

> This is from /var/log/messages when "/etc/init.d/keepalived reload":
> Oct 25 15:01:00 searchlvs1 Keepalived_vrrp: Reloading VRRP 
> child process on signal
> Oct 25 15:01:00 searchlvs1 Keepalived_vrrp: Using MII-BMSR 
> NIC polling thread...
> Oct 25 15:01:00 searchlvs1 Keepalived_vrrp: Registering 
> Kernel netlink reflector
> Oct 25 15:01:00 searchlvs1 Keepalived_vrrp: Registering 
> Kernel netlink command channel
> Oct 25 15:01:00 searchlvs1 Keepalived_vrrp: Registering 
> gratutious ARP shared channel
> Oct 25 15:01:00 searchlvs1 Keepalived_healthcheckers: 
> Reloading Healthchecker child process on signal
> Oct 25 15:01:00 searchlvs1 Keepalived_healthcheckers: Using 
> MII-BMSR NIC polling thread...
> Oct 25 15:01:00 searchlvs1 Keepalived_healthcheckers: 
> Registering Kernel netlink reflector
> Oct 25 15:01:00 searchlvs1 Keepalived_healthcheckers: 
> Registering Kernel netlink command channel
> Oct 25 15:01:00 searchlvs1 Keepalived_vrrp: Configuration is 
> using : 714197 Bytes
> Oct 25 15:01:00 searchlvs1 Keepalived_vrrp: Watchdog: 
> Starting listener on /tmp/.vrrp wdog socket
> Oct 25 15:01:00 searchlvs1 Keepalived_healthcheckers: 
> Configuration is using : 713540 Bytes
> Oct 25 15:01:01 searchlvs1 Keepalived_vrrp: 
> VRRP_Instance(vlan_157) Transition to MASTER STATE
> Oct 25 15:01:02 searchlvs1 Keepalived_vrrp: 
> VRRP_Instance(vlan_157) Entering MASTER STATE
> 
> This is from /var/log/messages when "/etc/init.d/keepalived restart":
> Oct 25 15:52:46 searchlvs1 Keepalived_vrrp: Reloading VRRP 
> child process on signal
> Oct 25 15:52:46 searchlvs1 Keepalived_vrrp: Using MII-BMSR 
> NIC polling thread...
> Oct 25 15:52:46 searchlvs1 Keepalived_vrrp: Registering 
> Kernel netlink reflector
> Oct 25 15:52:46 searchlvs1 Keepalived_vrrp: Registering 
> Kernel netlink command channel
> Oct 25 15:52:46 searchlvs1 Keepalived_vrrp: Registering 
> gratutious ARP shared channel
> Oct 25 15:52:46 searchlvs1 Keepalived_healthcheckers: 
> Reloading Healthchecker child process on signal
> Oct 25 15:52:46 searchlvs1 Keepalived_healthcheckers: Using 
> MII-BMSR NIC polling thread...
> Oct 25 15:52:46 searchlvs1 Keepalived_healthcheckers: 
> Registering Kernel netlink reflector
> Oct 25 15:52:46 searchlvs1 Keepalived_healthcheckers: 
> Registering Kernel netlink command channel
> Oct 25 15:52:46 searchlvs1 Keepalived_vrrp: Configuration is 
> using : 714197 Bytes
> Oct 25 15:52:46 searchlvs1 Keepalived_vrrp: Watchdog: 
> Starting listener on /tmp/.vrrp wdog socket
> Oct 25 15:52:46 searchlvs1 Keepalived_healthcheckers: 
> Configuration is using : 713540 Bytes
> Oct 25 15:52:47 searchlvs1 Keepalived_vrrp: 
> VRRP_Instance(vlan_157) Transition to MASTER STATE
> Oct 25 15:52:48 searchlvs1 Keepalived_vrrp: 
> VRRP_Instance(vlan_157) Entering MASTER STATE
> Oct 25 15:53:12 searchlvs1 Keepalived_vrrp: Terminating VRRP 
> child process on signal
> Oct 25 15:53:12 searchlvs1 Keepalived_vrrp: Watchdog: Error 
> reading to /tmp/.vrrp wdog socket

This is a common problem.  You are using both vrrp and healthchecker, right?
Here are some interesting threads for you to read:

http://marc.theaimsgroup.com/?l=keepalived-devel&m=109241321010899&w=2
http://marc.theaimsgroup.com/?l=keepalived-devel&m=109165262509861&w=2

Without a configuration I can't be sure, but you can try modifying your init
script to run two separate daemons:
  keepalived --vrrp
  keepalived --check

> Oct 25 15:53:13 searchlvs1 Keepalived_healthcheckers: Using 
> MII-BMSR NIC polling thread...
> Oct 25 15:53:13 searchlvs1 Keepalived_healthcheckers: 
> Registering Kernel netlink reflector
> Oct 25 15:53:13 searchlvs1 Keepalived_healthcheckers: 
> Registering Kernel netlink command channel
> Oct 25 15:53:13 searchlvs1 Keepalived_healthcheckers: 
> Configuration is using : 714480 Bytes
> Oct 25 15:53:13 searchlvs1 Keepalived_healthcheckers: IPVS : 
> Service already exists
> Oct 25 15:53:13 searchlvs1 Keepalived_healthcheckers: IPVS : 
> Destination already exists
> Oct 25 15:53:13 searchlvs1 last message repeated 3 times
> Oct 25 15:53:13 searchlvs1 Keepalived_healthcheckers: IPVS : 
> Service already exists
> Oct 25 15:53:13 searchlvs1 Keepalived_vrrp: Using MII-BMSR 
> NIC polling thread...
> Oct 25 15:53:13 searchlvs1 Keepalived_healthcheckers: IPVS : 
> Destination already exists
> Oct 25 15:53:13 searchlvs1 Keepalived_vrrp: Registering 
> Kernel netlink reflector
> Oct 25 15:53:13 searchlvs1 Keepalived_healthcheckers: IPVS : 
> Destination already exists
> Oct 25 15:53:14 searchlvs1 Keepalived_vrrp: Registering 
> Kernel netlink command channel
> Oct 25 15:53:14 searchlvs1 Keepalived_healthcheckers: IPVS : 
> Destination already exists
> Oct 25 15:53:14 searchlvs1 Keepalived_vrrp: Registering 
> gratutious ARP shared channel
> Oct 25 15:53:14 searchlvs1 Keepalived_healthcheckers: IPVS : 
> Destination already exists
> Oct 25 15:53:14 searchlvs1 Keepalived_healthcheckers: IPVS : 
> Service already exists
> Oct 25 15:53:14 searchlvs1 Keepalived_healthcheckers: IPVS : 
> Destination already exists
> Oct 25 15:53:14 searchlvs1 last message repeated 2 times
> Oct 25 15:53:14 searchlvs1 Keepalived_vrrp: Configuration is 
> using : 715177 Bytes
> Oct 25 15:53:14 searchlvs1 Keepalived_healthcheckers: IPVS : 
> Destination already exists
> Oct 25 15:53:14 searchlvs1 Keepalived_vrrp: Watchdog: 
> Starting listener on /tmp/.vrrp wdog socket
> <snip>... IPVS : Destination already exists
> <snip>... IPVS : Service already exists
> Oct 25 15:53:14 searchlvs1 Keepalived_healthcheckers: 
> Watchdog: Starting listener on /tmp/.healthcheckers wdog socket
> Oct 25 15:53:14 searchlvs1 Keepalived_healthcheckers: 
> Activating healtchecker for service [212.78.220.40:6200]
> Oct 25 15:53:15 searchlvs1 Keepalived_healthcheckers: 
> Activating healtchecker for service [212.78.220.41:6200]
> Oct 25 15:53:15 searchlvs1 Keepalived_healthcheckers: 
> Activating healtchecker for service [212.78.220.66:6200]
> Oct 25 15:53:15 searchlvs1 Keepalived_healthcheckers:  for 
> service [212.78.220.67:6200]
> <snip>... Activating healtchecker
> Oct 25 15:53:14 searchlvs1 Keepalived_vrrp: 
> VRRP_Instance(vlan_157) Transition to MASTER STATE
> Oct 25 15:53:16 searchlvs1 Keepalived_vrrp: 
> VRRP_Instance(vlan_157) Entering MASTER STATE

Well it sure looks like it got confused ;-).

Regards,

P
<Prev in Thread] Current Thread [Next in Thread>