LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

[lvs-users] ldirectord and direct routing issue

To: <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: [lvs-users] ldirectord and direct routing issue
From: "sa" <info@xxxxxxxxxxxxx>
Date: Mon, 20 Aug 2007 13:16:20 +0200
Hello,

I'm testing a load balance environment with DR configuration.

That's my ldirectord.cf: 

logfile="local0" 
virtual = VIP:80 
        real = RIP:80 gate  
        real = RIP:80 gate 
        checktimeout = 10 
        scheduler = sed  
        netmask=255.255.255.224 
        protocol = tcp 
        checktype = connect 

Load balance is on apache service. Shutting down on apache server ldirectord
sets the relative weight to 0. Correct!

When I restart apache ldirectord restore the real server but set it to masq.
Not Correct!

At this point I have to restart ldirectord to have all working again.

Better:

1. start ldirectord 

IP Virtual Server version 1.2.1 (size=4096) 
Prot LocalAddress:Port Scheduler Flags 
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn 
TCP  VIP:http sed 
  -> RIP:http             Route   1      1          2          
  -> RIP:http             Route   1      1          2    

2. stop one apache server

Prot LocalAddress:Port Scheduler Flags 
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn 
TCP  VIP:http sed 
  -> RIP:http             Route   1      1          3         
  -> RIP:http             Route   0      1          1               

3. restore apache server 


Prot LocalAddress:Port Scheduler Flags 
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn 
TCP  VIP:http sed 
  -> RIP:http             Route   1      1          3         
  -> RIP:http             Masq 1000      1          1               


I cannot replicate this systematically, it's random. As I see in the system
log, when ldirectord does a correct restore I have :

Aug 20 13:07:47 ldirectord[15130]: Restored real server: RIP:80 (VIP:80)
(Weight set to 1000) 
Aug 20 13:07:47 ldirectord[12279]: Restored real server: RIP:80 (VIP:80)
(Weight set to 1) 

The first correspond to a masq directive, the second to a gate.

When restore is incorrect I have:

Aug 20 13:00:12 ldirectord[12235]: Restored real server: RIP:80 (VIP:80)
(Weight set to 1) 
Aug 20 13:00:16 ldirectord[15130]: Restored real server: RIP:80 (VIP:80)
(Weight set to 1000) 


Any suggestion? There is a way to say NEVER use masq directive?

Tnx 

sa



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