Red Hat Bugzilla – Bug 16399
Startup does not properly handle multiple Virtual Servers
Last modified: 2005-10-31 17:00:50 EST
I have piranha-0.4.16-3 installed (Including all the appropriate Kernal
updates) and the configuration reader seems to be having a major problem
with multiple virtual servers.
I have a configuration using NAT for 1 Site, but the site has both port 80
I have virtual servers VS1:80 and VS1:443 each has 2 real servers (Same
ones for each).
I ran it with pulse -v and it brings up the first one fine, then it states:
Aug 16 16:07:17 rrbwebfarm2 lvs: starting virtual service VS1 active:
But it never runs the proper ipvsadm commands to bring up the services. If
I manually run all the commands everything works fine. (ipvsadm, ifconfig,
No nanny's get kicked off for the second site either. The only two running
nanny processes are for the first virtual site.
If I switch the order of the Virtual servers in the configuration file,
lvs.cf, it switches which one comes up, so neither one has a configuration
issue for the virtual server definition.
ipvsadm -l does not show the second VS at all.
-- Keith Moore
Created attachment 2576 [details]
Try using 2 different virtual IP addresses and devices. The virtual services as
they are defined are using the same address and device. Services have to be
individualized by ip address.
After reading all previous piranha bug reports I rebuilt configuration using web
tool. I had made 1 minor change by hand, and want to insure that this was not
causing the problem. The problem still persists. Attached is the updated
Below is the updated config, created with the web tool, and with the change
requested by Keith (The other one). It still only brings up one site. I have
this working on the 6.0 version of the LVS (1 IP, 2 different ports). and it
appeared to have worked once with the latest software, but when I added the
second REAL servers to each Virtual server, it started doing this to me (I used
the web tool for the config changes). I can't get back to where it worked
Created attachment 2578 [details]
When I updated it with 2 different IPs for the virtual services, the Virtual
Interface is brought up, just no ipvsadm commands are run to configure the
I completely zeroed the /etc/lvs.cf and rebuilt it from scratch using the Web
tool, still same issue.
Based on what I see in the code, it uses the IP+Port as the Service Identifier,
so it shouldn't have a problem with the same IP twice, but different ports.
OK. I'll check this out in the lab.
*** Bug 16316 has been marked as a duplicate of this bug. ***
I found that my problem is different than the other bug. I found a bug with
persistence. I updated the code and my is fully functional now, even with the
same IPs. I will attach my patch.
Created attachment 2580 [details]
Patch for lvs.c bug with persistence
Thanks! Nice patch. It'll be included.
Are you saying that your LVS problem has now been fixed because of this?
Yes, it is fully functional now. Also, this same problem may be related to why
sometimes lvs went defunct in other bug reports, and nanny didn't get killed
properly. I was seeing the same issues until I updated the lvs.c.
Here is an output of my ipvsadm:
[root@rrbwebfarm2 log]# ipvsadm
IP Virtual Server version 0.9.14 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 126.96.36.199:https wlc persistent 20
-> renpwwwbkprd6.renp-dmz.com:https Masq 1 0 0
-> renpwwwbkprd5.renp-dmz.com:https Masq 1 0 0
TCP 188.8.131.52:www wlc persistent 20
-> renpwwwbkprd6.renp-dmz.com:www Masq 1 0 0
-> renpwwwbkprd5.renp-dmz.com:www Masq 1 0 0
-- Keith Moore
Thanks again. Your name and patch now appear in the product source and changelog
A new source RPM should appear shortly in the expermential downlaod area.
Official RPMs will also eventually be posted.