Hey,
ucarp is a good place to start. I use the CARP implementation under
OpenBSD firewalls while pushing 250mbps+ of traffic through them. I can
take one down without the traffic hiccuping for more than a second or
two. As an endpoint (at the webserver/mailserver level), CARP can do
basic load balancing. While it's not exactly straightforward to set up,
it boils down to being fairly basic... You enable the options, and
either it works or it doesn't. You do need two IPs per box to make it
work right now...
As far as seamless redundancy goes; http://www.drbd.org/ is probably
your tool, along with MySQL replication if desired. Set up any mounts
you require exist on both systems onto one or more drbd partitions,
create your filesystem on top of that, then set up a keepalived script
(along with ucarp?) to bring up the backup volume when the primary is down.
It's not free, it's not going to set itself up for you, but it's the
most relatively uncomplicated setup I can mention at this point.
-Dormando
Eric Brown wrote:
Some food for thought:
net-misc/ucarp for redundant IP configurations.. maybe you could have
one box use the original IP if the first one fails, while also having
its own primary IP for concurrent action...
For data redundancy, I've only really heard of stuff like AFS where
you could have lots of replication. But if you don't need immediate
replication, you might be able to get away with hourly rsyncs or
something..
What I don't like about the Linux Virtual Server model (having one
machine distribute the load to real-servers) is that it's just another
form of weakness. You could use ucarp to provide redundancy on the
distributing machine, but it all seems too complicated to work well.
Anyway, if you're considering going that far, you might want to check
out openMosix for the apache process distribution.
Personally, I would want to try having multiple MX records, and
perhaps some simple http request distribution too (maybe DNS can
manage something like that).. All of the data could be rsync'd and
mail could possibly be forwarded between the two machines to keep
stuff up to date (that, or use some slow AFS/NFS implementation..)..
Or consider some kind of database for storage...
Eric
On 11/12/05, xyon <[EMAIL PROTECTED]> wrote:
But what kind of solution for config files and mail? I'm running into
the same dilemma with my setup. In my previous setup I had one server
NFS-mount the other server for mail and things, but that just does not
accomplish the data redundancy that I need.
Mal, as far as database setup, I would check out setting up MySQL
Master/Slave replication (or if you run MySQL 5.0 you can have dual
Masters replicating to eachother). Here's a link for the how-to:
http://forums.gentoo.org/viewtopic.php?t=241123
You may want to look at doing MySQL clustering if you have access to a
3rd server:
http://dev.mysql.com/doc/refman/5.0/en/mysql-cluster-overview.html
HTH! :)
On Sat, 2005-11-12 at 20:46 +0100, Jeroen Geilman wrote:
Mal Herring wrote:
Hi Gentoo-Server....
I run a Apache2 webserver and Postfix as per the virtual mailhost
guide...
For resilience I would like to have two gentoo boxes doing these tasks
for load balancing / redundancy - how can this be achieved? Is there a
tool that will allow replication of the config files / mysql stuff to
allow the boxes to basically be a cluster ?
Oh - one more thing, the boxes will sit in different data centres !
Thanks in advance...
That won't actually be all that easy to accomplish...
The most robust solution will always be to set up a THIRD box in front
of those identical servers, which can load balance the traffic and/or
connections to both.
Obviously, this is going to be more difficult to implement when the
servers are physically far apart.
A very good *mail* solution would be to set up Postfix on both boxes for
the same domain, but with different MX proirities - this is a relatively
easy setup.
For apache, you can do part of the loadbalancing yourself, but that will
require both boxes to be available at all times - meaning you don't have
a redundancy in place.
You can implement this via DNS, but you will need flexible access to
your DNS records; with DNS round-robin you would have a certain amount
of redundancy.
Google around, there are plenty of documents available.
--
[email protected] mailing list
--
[email protected] mailing list