LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: [lvs-users] Is --timeout intended as non-persistent?

To: "LinuxVirtualServer.org users mailing list." <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: Re: [lvs-users] Is --timeout intended as non-persistent?
From: Kendrick Gay <kgay@xxxxxxxxxx>
Date: Wed, 27 Jul 2011 10:43:18 -0400 (EDT)
It looks like they're asking how to set the TCP timeout value persistently, as 
opposed to a virtual service? 

I apologies in advance for my ignorance of LVS. Let me give you my client's 
inquiries in their own words, as I believe they explain it a bit clearer: 


    • Setting up a Piranha load balancer does not require direct interaction 
with the ipvsadm command - all the configuration for setting up the ipvsadm 
table is done automatically when configuring lvs.cf and starting pulse. 
    • Finding that a Piranha load balancer has a TCP timeout value that is 
causing a conflict with our application, we wish to correct the issue by 
modifying our Piranha load balancer config 
    • Piranha (via lvs.cf) appears to control all aspects of the ipvsadm table 
- minus the timeout values that are affecting our application, which can be see 
via ipvsadm --Ln --timeout 
    • It appears can workaround this issue manually after boot by setting the 
timeout value via the ipvsadm command, and we can workaround this issue at boot 
by setting up a fake /etc/sysconfig/ipvsadm config file that contains only a 
single "--set x 0 0" configuration entry, and letting lvs.cf / pulse handle the 
remainder of the LVS table based on the nanny healthchecks and whatnot - 
however ipvsadm -S does not actually save timeout values (I suppose this is a 
different bug / issue) into the file and therefore neither does "service 
ipvsadm save" 

It seems as though not having the control of the ipvsadm LVS table timeout 
values from within Piranha / lvs.cf is broken, since someone admining one of 
these load balancers doesn't otherwise need to directly touch the table 
ourselves - I would expect Piranha to handle it. The rules themselves are not 
traditionally configured via "ipvsadm" and "service ipvsadm save / restore / 
stop / start" - they are via Piranha - so why do the /timeout/ values need to 
be configured in this way? 

Lastly, and this is largely out of scope, but the "ipvsadm -S" command should 
ideally write out the "--timeout x y z" parameters to STDOUT so that those can 
be saved / restored with everything else. 

Can you please address the following questions: 

    1. Is adding --timeout values for ipvsadm within lvs.cf and/or being 
controlled from Piranha something that should be added via feature request if 
it does not exist today or is it something that should be fixed via bugzilla if 
it does and isn't functioning properly? 
    2. Is adding --timeout values to be written from ipvsadm -S something that 
should be added via feature request if it does not exist today or is it 
something that should be fixed via bugzilla if it does and isn't functioning 
properly? 
Definitely correct this logic if invalid, but I responded to the client 
regarding question #1 by stating that ipvsadm is designed to manage the IP 
services, so I didn't believe it was feasible to duplicate this functionality 
between the utilities. The second question is the one I'm a bit less clear on. 

Thanks in advance for the assistance, btw! LVS cases are few and far between 
for us here, so I don't find myself dusting off our LVS books very often... 
----- Original Message -----

From: "Graeme Fowler" <graeme@xxxxxxxxxxx> 
To: "LinuxVirtualServer.org users mailing list." 
<lvs-users@xxxxxxxxxxxxxxxxxxxxxx> 
Sent: Wednesday, July 27, 2011 8:22:43 AM 
Subject: Re: [lvs-users] Is --timeout intended as non-persistent? 

On Tue, 2011-07-26 at 14:08 -0400, Kendrick Gay wrote: 
> I've been working with a client who notes that the only way to set --timeout 
> persistently in Red Hat Enterprise Linux is to directly apply it to the 
> /etc/sysconfig/ipvsadm file. A reboot seems to indicate that other parameters 
> are retained. The ipvsadm -S output does not appear to include the timeout 
> values. 
> 
> Is there a reason for this? 

--timeout is an option for the "-L" switch and is informational only. 

Persistence timeout is set using the "-p" switch, which *is* displayed 
using "-S" (this one is using fwmarks rather than IP addresses): 

[root@server ~]# ipvsadm -S 
-A -f 5 -s rr -p 60 
-a -f 5 -r localhost.localdomain:http -g -w 100 
-a -f 5 -r other.machine.in.cluster:http -g -w 100 

What is your client actually trying to achieve here? 

Graeme 


_______________________________________________ 
Please read the documentation before posting - it's available at: 
http://www.linuxvirtualserver.org/ 

LinuxVirtualServer.org mailing list - lvs-users@xxxxxxxxxxxxxxxxxxxxxx 
Send requests to lvs-users-request@xxxxxxxxxxxxxxxxxxxxxx 
or go to http://lists.graemef.net/mailman/listinfo/lvs-users 

-- 
Kendrick Gay, RHCE 
Global Support Services, TSE 
Red Hat, Inc. 
_______________________________________________
Please read the documentation before posting - it's available at:
http://www.linuxvirtualserver.org/

LinuxVirtualServer.org mailing list - lvs-users@xxxxxxxxxxxxxxxxxxxxxx
Send requests to lvs-users-request@xxxxxxxxxxxxxxxxxxxxxx
or go to http://lists.graemef.net/mailman/listinfo/lvs-users
<Prev in Thread] Current Thread [Next in Thread>