LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: ipvsadm trees (fwd)

To: "LinuxVirtualServer.org users mailing list" <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: Re: ipvsadm trees (fwd)
From: Wensong Zhang <wensong@xxxxxxxxxxxx>
Date: Mon, 17 Jan 2005 13:27:23 +0800 (CST)


On Thu, 13 Jan 2005, Horms wrote:

On Wed, Jan 12, 2005 at 10:43:06AM -0500, Joseph Mack wrote:
Alejandro Mery wrote:

Hi, i have a machine which boot both, linux2.4 and linux2.6. i want to
use ipvs on both, what should i do with ipvsadm? can i use ipvsadm-1.24
to admin lx2.4 or ipvsadm-1.21 for lx2.4 and 1.24 for lx2.6?

The way they were written you have to use a version of ipvsadm for each
kernel. I would rather one giant ipvsadm that detects the kernel and does
the right thing. However Horms is the one who's doing most of the maintenance
and he's happy with the way he's doing it.

I am not sure that either of those stathements are true.
I would definately rather ipvsadm had the same kind of
semantics as modutils. That is something like this:

You always invoke ipvsadm regardless of your kernel.
If you only have ipvsadm-1.21 or ipvsadm-1.24 installed,
then that is always run and it complains if there is a kernel
version missmatch. If you have both installed then ipvsadm-1.24
is always run, but if it detects a 2.4 kernel, then it execs
ipvsadm 1.21.

Also, the current version numbers are quite aquard, especually
as 1.24 is used for a 2.6 kernel, nota  2.4 kernel, which one
may be tempted to think in error. But we are probably stuck with them.

As for who maintains the code. I have made modifications to it over
time, as have others. But I always assumed that as with the kernel code
the maintainer was Wensong.

I would be more than happy to make patches to implement what I describe
above, but I would like some feedback from Wensong first.


If we merge the code of current ipvsadm-1.21 and ipvsadm-1.24 together, we probably need copy all the ipvs interface between kernel and user (ip_vs.h) into ipvsadm source code, so that no matter which version the default kernel source is, ipvsadm can be compiled. Then, there is two places to maintain for the ipvs interface, the ipvsadm source code would be complicated and hard to read and maintain. In my past experience, maintaining the code of using getopt and popt parsing option together in one ipvsadm.c is time consuming. As long as the ipvs interface between kernel 2.4 and 2.6 is different, it is hard to do it in the way.

Regards,

Wensong

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