Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 31 Jan 2009 13:55:08 +0000
From:      Matthew Seaman <m.seaman@infracaninophile.co.uk>
To:        "Marc G. Fournier" <scrappy@hub.org>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Load balancing multiple virtual hosts on 1 IP
Message-ID:  <4984583C.2030409@infracaninophile.co.uk>
In-Reply-To: <20090131091825.R90262@hub.org>
References:  <20090131091825.R90262@hub.org>

index | next in thread | previous in thread | raw e-mail

[-- Attachment #1 --]
Marc G. Fournier wrote:
> 
> Simple: is it possible?
> 
> I have two VMs that contain the same content, on two different IPs .. I 
> want to setup a third VM with something like haproxy on it that will 
> take the URL (http://domain1) and pull the content from one or the other 
> ...
> 
> So far, all works well if I only have one virtual host, but as soon as I 
> add a second one (http://domain2), when I try to go to http://domain2, 
> it pulls up the content for domain1 also, as if I was going to http://IP 
> instead.
> 
> Is there a way to set this up (with haproxy, or some other software), 
> that it will actually pass the URL through to the backend apache server 
> and load up the right content?  Or is this a limitation in the protocol 
> itself?/

This is certainly possible -- most of the world's big web sites work in
exactly this way, although they would tend to use dedicated hardware LB
if they were of any appreciable size.

I think what's going wrong for you is that you are using a front-end proxy,
and it's rewriting the requests with the host names of the real servers,
which will certainly screw up name based virtual hosts.

Instead of ha-proxy, look into relayd -- in conjunction with a pf(4)
firewall this will do exactly what you want.  It can operate purely at the
IP level or even at layer 2 if you want to implement DSR.  Another
alternative to consider is varnish, although I'm not sure that has much
in the way of health-checking the back-end servers behind it.  varnish
is a reverse-proxy / web accelerator so can give you some performance
boost as well.

	Cheers,

	Matthew

-- 
Dr Matthew J Seaman MA, D.Phil.                   7 Priory Courtyard
                                                  Flat 3
PGP: http://www.infracaninophile.co.uk/pgpkey     Ramsgate
                                                  Kent, CT11 9PW


[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.10 (FreeBSD)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEAREIAAYFAkmEWEIACgkQ8Mjk52CukIwdwgCaA1VU1lH/4n0N6O+hG1sXrj7D
dt8An0zHgiH2bCI4es07CGKLmvXnkKK9
=7HS/
-----END PGP SIGNATURE-----
help

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4984583C.2030409>