LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: scheduling separate persistent services

To: lvs-users@xxxxxxxxxxxxxxxxxxxxxx, Horms <horms@xxxxxxxxxxxx>, Julian Anastasov <ja@xxxxxx>, jsc3@xxxxxxxxxxxxx
Subject: Re: scheduling separate persistent services
From: Joseph Mack <mack.joseph@xxxxxxx>
Date: Wed, 18 Sep 2002 08:46:39 -0400
Julian Anastasov wrote:
> 
> We should fix our terminology :) For example:

good idea. This would solve one of the problems of writing this stuff
up for the HOWTO.

> - ipvsadm understand "virtual service" as list of one or many
> service points (PROTO:VIP:VPORT), i.e. one PROTO:VIP:VPORT or
> one fwmark which covers "something"
> 
> - OTOH, we understand under "virtual service" just one PROTO:VIP:VPORT
> 
>         Can we introduce "cluster", list of virtual services using
> same list of real servers? I'm not about changing the code but the
> terms :) Or you have a better definition :)

I don't want to use "cluster" as VMS used that 10-15yrs ago for their
clustering, and this (I thought) became accepted as the definition 
of "clustering". I remember the derision on /. which greeted RedHat's 
announcement of their "cluster server" software for $1000 a few years 
back. This software was LVS, which isn't cluster software at all, 
but a load balancer. This taught me that some people hold the term 
"cluster" in high regard and not to be used for just any software 
associated with computers working together.

From what I can see, realservers are assigned to "scheduling groups"
or a "virtual service" (or "foo" or whatever new word we decide on)
by the `ipvsadm -A` command. The realservers belonging to the "foo" 
are listed below the "TCP ..." (or UDP) entry in the output of `ipvsadm`. 

ie 

TCP VIP:port rr persistent 360
  -> rs1 Route 1 0 0
  -> rs2 Route 1 0 0
.
.
  -> rsn Route 1 0 0

Any packets which will be serviced by the "foo" have a dst_addr 
of the entry following "TCP" (here VIP:port, but could be a fwmark) 
will be scheduled to the realservers which are listed below (near
rs1..rsn). 

I'm assuming we need a term to cover the entity you form with the 
`ipvsadm -A` command.

If the term "scheduling group" is corrent here (ie matches what the
code is doing) then its meaning will be obvious when we use it.
If we use "virtual service" then this fits in well with the the name
"LVS", but we'll have to educate people as to what it means (which is
doable).

Since we're working on terminology, I need another term then.

I need something to describe a "virtual connection", "scheduling instance",
or "scheduled item" (not great terms, I'm hoping for something better).

With a regular (non-persistent) http "virtual service"/"scheduling 
group"/"foo", 
a single client when asking for multiple hits, can get each of the hits 
from different realservers and each of these hits increments the InActConn
entry for that realserver. Each of these hits is scheduled separately 
(by rr, wlc etc). Each hit happens to be a separte tcpip connection (or can be, 
if the webserver is not using persistent connection in the netscape sense). 

If persistent connection (with say https) from a client, the scheduler 
sees many tcpip connections and schedules them as if they all part of 
the same "scheduled item". 

What I'm looking for is a term to describe the thing/atom/event that counts
as event and that increments the ActiveConn (or InActConn) counter 
in a row in the output of `ipvsadm`

Joe
-- 
Joseph Mack PhD, Senior Systems Engineer, Lockheed Martin
contractor to the National Environmental Supercomputer Center, 
mailto:mack.joseph@xxxxxxx ph# 919-541-0007, RTP, NC, USA


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