[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: High availability
- To: misc_(_at_)_openbsd_(_dot_)_org
- Subject: Re: High availability
- From: Victor <victord_(_at_)_paid_(_dot_)_com>
- Date: Fri, 30 May 2003 03:32:01 -0400
Chuck Yerkes wrote:
Quoting taproot420 (taproot420_(_at_)_myrealbox_(_dot_)_com):
Is there a high availability solution for openbsd? I am needing to setup
a cluster of servers, i would like the HA solution to provide load
balancing so all the servers can be used concurrently and of coarse fail
over master / slave etc... I found the HUT project but its HA daemons
freevrrp and loadd only run on freebsd.
"High Availability" is a marketing phrase.
(I worked for the company bought by OpenVision and then Veritas
that developed the first failover HA solution for Suns).
Define your actual needs better, and you can get answers.
HA for EMail relays is easy: MX
How do they sync mail afterwards? Or do you mean just sending mail? I
think this is a slightly more complex problem than you make it. It
really becomes Storage HA problem (and locking). One solution, if a
redundant storage is available is to use Maildir format. That way, it's
possible to have multiple relays receiving mail and avoid locking issues.
Another solution is just get a really good server and go with Cyrus mail
system. have a small box be an emergency queue for mail, if main server
fails, backup will queue mail until main is back up. Not the best but a
very workable model. users won't die if they can't read email for a few
hours and everything is queue'd.
HA for NFS is pretty easy: NetApp
I think the question asked for BSD solution. Not all of us can afford
NetApp. One possible solution is to use AFS, it's not the greatest since
learning curve and usability are not easy, but doable and workable and I
think there is a client for bsd.
I am not familiar with any good redundant NFS solution (other than going
with a proprietary appliance). There is a possible solution on the linux
platform: a storage driver that writes to two netwroked machines. So
master will receive nfs requests and the storage driver will sync to
secondary boxes. If master fails, slave can become the master and sync
changes to master when master comes back. I think the driver is called
drbd (http://www.complang.tuwien.ac.at/reisner/drbd/) but I am not
familiar as to how "production-ready" it is. It's certainly an
interesting solution (that is used by a few proprietary vendors on
windows platform, with some success).
Another is to get a winchester type system and connect the raid array to
two or more machines. Then implement a daemon that would make one be the
master and serve files. However I would think that existing connection
might time out and only new connections would work with a slave which
became a master. However, a lengthy NFS timeout might actually be long
enough for master to fail, slave come online and client to finally see
that and fetch the request. Just a thought, never implemented this myself.
These are very interesting problems, so if anyone implemented them with
success, please post and tell your stories. I'd be very interested to
hear what people have implemented and how well it went for them.