[squid-users] Re: Loadbalancing multiple SQUID parents using a parent persistence selection per client connection

From: Joe Cooper <joe@dont-contact.us>
Date: Mon, 18 Mar 2002 15:21:52 -0600

Hi Alexandre,

Is there a reason you can't simply tie each Squid to one parent? i.e.
to redraw your diagram, something like this:

> +----------------------------+
> | Internet |
> +----------------------------+
> | | |
> +----------------+ | +-----------+
> | | |
> +----------------+ +----------------+ +----------------+
> | PROXY-PARENT-1 | | PROXY-PARENT-2 | | PROXY-PARENT-3 |
> +----------------+ +----------------+ +----------------+
> | | |
> +---------------+ +---------------+ +---------------+
> | SQUID-PROXY-1 | | SQUID-PROXY-2 | | SQUID-PROXY-3 |
> +---------------+ +---------------+ +---------------+
> | | |
> +--------------+ | +---------+
> | | |
> +----------------------------+
> | LoadBalancer |
> +----------[ VIP ]-----------+

If you're using a cache scheduler (one that guarantees client
persistence for any given destination IP) this should lead to a constant
client->proxy->parent->server persistence. This is probably what you
really want, isn't it?

This will lead to occasional 'hot spots' on one cache and proxy or
another (this is kind of unavoidable with a destination hash based
scheduler), but should generally lead to a pretty good balance most of
the time.

Alexandre CASSEN wrote:
> Hi All,
>
> I am from the LinuxVirtualServer team and I am currently looking for
> informations and advices on a SQUID setup.
>
> My current needs correspond to the following simple sketch :
>
>
> +----------------------------+
> | Internet |
> +----------------------------+
> | | |
> +----------------+ | +-----------+
> | | |
> +----------------+ +----------------+ +----------------+
> | PROXY-PARENT-1 | | PROXY-PARENT-2 | | PROXY-PARENT-3 |
> +----------------+ +----------------+ +----------------+
> ...................................................
> ...................................................
> ...................................................
> +---------------+ +---------------+ +---------------+
> | SQUID-PROXY-1 | | SQUID-PROXY-2 | | SQUID-PROXY-3 |
> +---------------+ +---------------+ +---------------+
> | | |
> +--------------+ | +---------+
> | | |
> +----------------------------+
> | LoadBalancer |
> +----------[ VIP ]-----------+
>
> Architecture components :
>
> * 3 SQUID-PROXY included in a LVS VIP to loadbalance incoming traffic
> through proxy port.
> * 3 Antivirus PROXY-PARENT parents of 1.
> * All clients browser point to LVS VIP
>
> My question is located on the SQUID parent definition. I want that each
> SQUID loadbalance incoming traffic to parent pool. My setup must work with
> SQUID round-robin parent declaration since Antivirus proxy are not ICP
> capable. So on each SQUID-PROXY I define the following squid.conf rulez
> (according to the 7.3.Hierarchy-Tutorial) :
>
> local_domain mydomain.com
> cache_host PROXY-PARENT-1 parent 3128 8080 no-query round-robin
> cache_host PROXY-PARENT-2 parent 3128 8080 no-query round-robin
> cache_host PROXY-PARENT-3 parent 3128 8080 no-query round-robin
>
> The loadbalancer use a persistence rule to stick traffic from a specific
> client to a specific proxy. So all traffic coming from the same client will
> be alway directed to the same SQUID proxy. My question is located on the
> upper level, on the parent proxy selection :
>
> I would like to know if it is possible to make a connection persistent from
> a specific client to a specific parent ? Is it possible to stick traffic
> from a client to the same parent (without round-robin algo replay for all
> GET query comming from the same client) ?
>
> Can someone give me some lighting points on that kind of setup ?
>
> Best regards,
> Alexandre Cassen

-- 
Joe Cooper <joe@swelltech.com>
http://www.swelltech.com
Web Caching Appliances and Support
Received on Mon Mar 18 2002 - 14:23:24 MST

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 17:06:58 MST