Forum Discussion

DarkSideOfTheQ_'s avatar
DarkSideOfTheQ_
Icon for Nimbostratus rankNimbostratus
Oct 29, 2009

Pool Stats

Hi All,

 

 

I'm a bit confused on something and hope someone can clarify for me. I have a pool which contains two servers. The VIP that uses this pool is using oneconnect which as I understand it, will re-use connections from the LB to the server. So one 'connection' may actually be multiple users connecting to this site, correct? If so, I'm confused on the statistics shown when looking at the pool stats. When I view statistics for the pool members, looking at "Connections", I'll see something like 10 current connections for the pool and 4 current connections for one pool member and 6 for the other. I know there are other factors like persistence coming into play (we use a cookie and fallback to source IP). How do I determine if those are actual users connecting to each pool member and not the oneconnect coming into play?

 

 

TIA,

 

DarkSide

8 Replies

  • You are correct that one connect basically cuts down LB to server connection and reuses any idle connection and manages the sessions within the connection. The pool states from I can tell only look at connections and not sessions.

     

     

    I hope this helps

     

     

    CB

     

  • There is no concept of application session at the TCP layer, so CB's response is correct.

     

     

    Are you trying to track which HTTP requests are associated with which TCP connection? If not, can you clarify what the problem is and what you're trying to determine?

     

     

    Thanks,

     

    Aaron
  • Every so often I get a "the application is performing slowly and we think the LB isn't distributing load correctly", which is miraculously fixed by restarting their app on one of the servers in the pool, yet they never seem to stop blaming the LB. :-) They also never seem to understand that we use persistence too. What I'm trying to determine is there a way to see how many users are connected to each server in the pool. I know, with persistence, it's very likely that one server will have more load than another. When this 'issue' cropped up yesterday, I looked in the GUI at the pool stats and saw 3 current connections to this pool, 1 current connection to pool member 1 and 2 current connections to pool member 2. I told the business owner that and he did not believe that only 3 people were using this app at that particular time. Hence my trying to figure out a way to see how many users were actually connected to the pool and how many were on each server in the pool (there are 2 servers in this pool).
  • If this is a web application, then it's possible you can pull this information from WebTrends or something some server that can analyze each log file from the web server.

     

    You can also probably write up an irule to count each HTTP trigger to track the connections. Here is a link to a forum post talking about using Profile STATS which can store custom counter information

     

    (http://devcentral.f5.com/Default.aspx?tabid=53&forumid=5&tpage=1&view=topic&postid=33148).

     

    In the post they are tracking Web content but, it's possible to track sessions on clients.

     

    I hope this helps

     

    thanks,

     

    CB
  • Conceptually, I suppose you could use the session table to store [IP::server_addr] as the key and increment/decrement the value on each request/response then do a lookup periodically to log the data.
  • with the possibility of showing my ignorance, i am wondering if there is a way to show pool stats for only 1 pool, and/or to include stats for only the active nodes in a given pool? i have an LTM running 9.4.3. i've done some searching but i cannot seem to find a way to this, with a iRule perhaps? I have written a few iRules so I am not completely in the dark, but i seem to be missing something somewhere. thanks in advance for any ideas or anyone who can point me to a URL i can read. thanks...
  • you could use a script to do this (icontrol or a perl script gathering via snmp) I wrote a perl script for interface stats (Click here) a while back that could be modified for pool stats. Probably best not to be an iRule, but it is possible.