Re: Loadbalancing TCP connections

From: Hervé COMMOWICK <hcommowick#exceliance.fr>
Date: Wed, 19 May 2010 12:33:57 +0200


Hi Chris,

You are using an old configuration template, let's go updating :

On 05/19/2010 12:10 PM, Chris Sarginson wrote:
> [...]
>
> defaults
> log global
> mode http

You want to use tcp load balancing so set "mode tcp" instead
> option httplog

same reason, set "option tcplog" instead
> option forwardfor

same reason, delete this line as it is http mode specific
> option allbackups
> option dontlognull
> retries 3
> option redispatch
> maxconn 5000
> contimeout 5000

to clarify your configuration and to use new and better keyword set "timeout connect 5s" instead
> clitimeout 50000

same reason, set "timeout client 50s" instead
> srvtimeout 50000

same reason, set "timeout server 50s" instead
> option httpchk

You are about to check tcp server, so delete this line, because tcp check is the default
> option httpclose

This is http mode specific, delete this line

You don't create a frontend, so you don't listen for connections. To be able to load balance something, create something like this :

frontend sphinx
bind :3312
default_backend 5220_sphinx

> backend 5220_sphinx
> balance leastconn
> mode tcp
> contimeout 50000

you don't have to specify it again as you already do this in defaults section, delete this line
> srvtimeout 50000

same reason, to clarify, delete this line
> server sphinx1 172.31.252.170:3312 check inter 3000 rise 2 fall 2
> weight 1
> server sphinx2 172.31.252.171:3312 check inter 3000 rise 2 fall 2
> weight 1
>
>
> Running a tcpdump on the server I can see that this is attempting to
> send HTTP requests to check if the backend is up - is this because of
> the defaults settings?

Yes it is.

Cheers,

Hervé.

-- 
Your Network supports your *BUSINESS !*
Appliances de *contrôle d'activité* et d'*optimisation* du réseau
EXCELIANCE - Rule your Network ! - www.exceliance.fr
Received on 2010/05/19 12:33

This archive was generated by hypermail 2.2.0 : 2010/05/19 12:45 CEST