LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: [lvs-users] Dead servers not being removed from pool, ldirectord

To: "LinuxVirtualServer.org users mailing list." <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: Re: [lvs-users] Dead servers not being removed from pool, ldirectord
From: "Terry Burton" <tez@xxxxxxxxxxxxxxxxx>
Date: Thu, 22 May 2008 18:46:21 +0100
On Thu, May 22, 2008 at 6:20 PM, Michael S. Moody <michael@xxxxxx> wrote:
> (remember that this was working up until recently). In all times past,
> here's what happened:
>
> A server went dead
> Ldirectord realized the server was dead (generally in 10 seconds or less)
> Ldirectord used ipvsadm to remove it from the table completely (as in,
> running ipvsadm -Ln did not show the server anymore)
> All current and all new requests went to the remaining servers
>
> Ldirectord no longer seems to be removing servers from the ipvs table.

Hi Michael,

It is possible that ldirectord has hung whist checking the status of
some service and is therefore not updating the kernel tables.

Determine the PID of the ldirectord process using ps, then take a look
to see whether the socket identifier in the highest file descriptor in
/proc/$PID/fd/ is updating, as it should be. Alternatively, strace -p
$PID should show you against which FD a system call has wedged
(assuming this is the case).

If it is stuck then you should be able to determine on which host and
service it has hung by looking for the stuck socket identifier in the
TCP connections in netstat. I have seen issues with IMAP status checks
before.


Hope this helps,

Tez


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