On Thu, 2007-10-25 at 07:22 -0700, Joseph Mack NA3T wrote:
> On Thu, 25 Oct 2007, Rumen Bogdanovski wrote:
>
> > I am experiencing problems with the LVS master and backup
> > daemons. I have 2 directors running both with master and
> > backup sync daemons. Failover works fine but the
> > connection threshold does not. I mean if I have 2 real
> > servers each accepting 3 connections, this means I can
> > have 6 connections in total to the cluster, but if I have
> > 5 and the master fails, the backup takes over(so far so
> > good) but the new director accepts 6 more connections and
> > the cluster ends up with 11 connections, if another
> > failover occurs soon, 6 more connections will be accepted
> > no matter how many were inherited from the failed
> > director.
>
> hmm. I'm not familiar with the connection threshhold code.
> As well it doesn't get used a whole lot, so it's possible
> that there are unnoticed bugs. However the code was written
> (I think) by Ratz (unless someone has messed with it since)
> and Ratz is unlikely to have let code out without making the
> obvious test to check for the problem you see.
>
> Hopefully someone else will have a suggestion for you.
>
> > How can I make the new director know how many connections are inherited?
> >
> > "ipvsadm -lnc" shows the inherited connections together with the new
> > ones, while "ipvsadm -l" shows only the connections established by the
> > current director.
>
> Has the number of connections (and other state info) been
> transferred by the synch state demon to the backup director?
Well the connection state works fine, no connection is dropped on when
failover occurs. "ipvsadm -lnc" shows the correct state of all
connections.
but "ipvsadm -l" says
root@test2:~# ipvsadm -l
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP rumen-desktop.local:5999 wlc
-> node473.local:5999 Route 1000 0 0
-> node484.local:5999 Route 1000 0 0
while "ipvs -lnc"
root@test2:~# ipvsadm -lnc
IPVS connection entries
pro expire state source virtual destination
TCP 14:56 ESTABLISHED 192.168.0.10:39164 192.168.0.222:5999 192.168.0.51:5999
TCP 14:59 ESTABLISHED 192.168.0.10:39165 192.168.0.222:5999 192.168.0.52:5999
new connection created :
root@rumen-desktop:~# ipvsadm -l
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP rumen-desktop.local:5999 wlc
-> node491.local:5999 Route 999 1 0
-> node503.local:5999 Route 999 0 0
root@rumen-desktop:~# ipvsadm -lnc
IPVS connection entries
pro expire state source virtual destination
TCP 14:59 ESTABLISHED 192.168.0.10:32800 192.168.0.222:5999
192.168.0.52:5999
TCP 14:21 ESTABLISHED 192.168.0.10:39164 192.168.0.222:5999
192.168.0.51:5999
TCP 14:31 ESTABLISHED 192.168.0.10:39165 192.168.0.222:5999
192.168.0.52:5999
So the new connection is seen on both places while the old ones only
with "-lnc" and the scheduler seems to read the same number of
connections as "ipvsadm -l"
I could look in the source, but I am not sure how much time it will take
me to figure out how everything works and to fix it... However I will
try next days when I have some time...
Rumen
|