LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: ldirectord removes real servers when config file changed

To: "LinuxVirtualServer.org users mailing list." <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: Re: ldirectord removes real servers when config file changed
From: Horms <horms@xxxxxxxxxxxx>
Date: Tue, 13 Jul 2004 15:30:07 +0900
On Mon, Jul 12, 2004 at 02:28:15PM -0700, Dave Lowenstein wrote:
> Something is wrong with my ldirectord.cf file. Every time I modify it, all
> real servers for a particular service are removed from service and i have
> to quickly add them via ipvsadm before my phone starts ringing.
> 
> This is not good.
> 
> This is the stanza for the service that has all real servers removed when 
> the config file is modified:
> 
> virtual=1.2.3.4:80
>         real=192.168.1.101:80 masq
>         real=192.168.1.102:80 masq
>         real=192.168.1.103:80 masq
>         real=192.168.1.104:80 masq
>         real=192.168.1.105:80 masq
>         real=192.168.1.106:80 masq
>         service=http
>         request="hb.html"
>         receive="Test Page"
>         scheduler=lc
>         persistent=900
>         protocol=tcp
> 
> Nothing weird there, right? and this shows up in /var/log/ldirectord.log
> pretty frequently:

That sounds a bug in ldirectord. Try
heartbeat-1.2.2-8.rh.el.3.0 which can be found in
http://www.ultramonkey.org/download/heartbeat/1.2.2/redhat_el_3.0/

This includes a number of fixes to ldirectord.
Including a reworking of the logic that handles
adding and removing servers, especailly on reload.

> [Mon Jul 12 14:20:48 2004|ldirectord.cf] ldirectord for
> /etc/ha.d/ldirectord.cf is already running with pid: 7476
> [Mon Jul 12 14:20:48 2004|ldirectord.cf] Exiting with exit_status
> 1: Initialisation Error
> [Mon Jul 12 14:21:05 2004|ldirectord.cf] ldirectord for
> /etc/ha.d/ldirectord.cf is already running with pid: 7476
> [Mon Jul 12 14:21:05 2004|ldirectord.cf] Exiting with exit_status
> 1: Initialisation Error
> [Mon Jul 12 14:21:22 2004|ldirectord.cf] ldirectord for
> /etc/ha.d/ldirectord.cf is already running with pid: 7476
> [Mon Jul 12 14:21:22 2004|ldirectord.cf] Exiting with exit_status
> 1: Initialisation Error
> [Mon Jul 12 14:21:39 2004|ldirectord.cf] ldirectord for
> /etc/ha.d/ldirectord.cf is already running with pid: 7476
> [Mon Jul 12 14:21:39 2004|ldirectord.cf] Exiting with exit_status
> 1: Initialisation Error
> [Mon Jul 12 14:21:56 2004|ldirectord.cf] ldirectord for
> /etc/ha.d/ldirectord.cf is already running with pid: 7476
> [Mon Jul 12 14:21:56 2004|ldirectord.cf] Exiting with exit_status
> 1: Initialisation Error

It looks like something is trying to start up ldirectord when
it is already running. Perhaps it is listed both in heartbeat's
haresources file and as a daemon to be started up by init?

> I'm using the ultramonkey 2.4.21-9.0.1.EL.um.1smp kernel on redhat EL 3.0
> and my heartbeat/ldirectord version is
> heartbeat-ldirectord-1.2.0-1.rh.el.3.0.1
> 
> Is there a way to crank up the debug information and find out what
> ldirectord doesn't like about my configuration file?

ldirectord -d

-- 
Horms
<Prev in Thread] Current Thread [Next in Thread>