LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: [lvs-users] LVS with Tomcat application server

To: John Little <jlittle_97@xxxxxxxxx>, "LinuxVirtualServer.org users mailing list." <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: Re: [lvs-users] LVS with Tomcat application server
From: Joseph Mack NA3T <jmack@xxxxxxxx>
Date: Wed, 14 Nov 2007 17:49:07 -0800 (PST)
On Wed, 14 Nov 2007, John Little wrote:

> Hi all
>
> I am testing LVS using a tomcat server (real server) to 
> pass hl7 (medical) messages to an end application.  The 
> setup looks like this:
  _                                  _          _
|_| Medical information  server -> |_| LVS -> |_| tomcat ->
  _
|_  -> |_| end user application

| -> ->  |_|   tomcat ->

I fiddled with the ascii art but couldn't make anything 
sensible of it. You have a medical information server, which 
I assume is a realserver. Then you have 
->tomcat->application->tomcat. Later you seem to say that 
the medical server is a client. This is too many layers deep 
to be sensible. Still none of it seems to bear on your 
problem.


> The question/problem:  The tomcat server must return an 
> acknowledgement to the medical information server.  On the 
> three ports that I am testing the ports are going into a 
> close_wait state on the real server.  I believe it is 
> because the acknoweldgement is either not getting to the 
> medical information server or that it is receiving it from 
> the real ip of the LVS router.

I assume this all works with a single standalone server.

If the client is connecting to the VIP, then the realserver 
will be contacted on the VIP. If the application is replying 
on the RIP, then there is something wrong with the 
application. If so you aren't the first one to find this. 
rsh does the same thing (see the HOWTO).

You can check for this problem with tcpdump (netstat on the 
realserver will show IPs and ports, check with `netstat -p 
prog_name`).

Make sure the application is not listening/running/attached 
to the RIP (at least for testing that your LVS works).

If the realserver is replying from the VIP and the reply is 
not getting to the client, then there is a problem with your 
routing (`ipvsadm` will show InActConn without an ActConn). 
You can check your routing by running telnet as your LVS'ed 
service to see if this behaves.

Joe

-- 
Joseph Mack NA3T EME(B,D), FM05lw North Carolina
jmack (at) wm7d (dot) net - azimuthal equidistant map
generator at http://www.wm7d.net/azproj.shtml
Homepage http://www.austintek.com/ It's GNU/Linux!


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