High availability ... again

Tore Anderson tore at linpro.no
Tue Jun 22 12:52:09 EDT 2004

* Etienne Goyer

 > I have been asked to consider how to build an high-availability
 > Cyrus installation.  This is a small installation (~200 accounts ...
 > peanuts), so scalability is not really a concern.  In this regard, a
 > Murder is not really appropriate.
 > The platform would be Linux.  We already have the fail-over stuff
 > figured out with heartbeat and friends, so that part is covered.
 >  From what I can see, I would have two possibilities to make a hot
 > spare Cyrus IMAP daemon : replication, or cluster filesystem/block
 > device (drdb, GFS, etc).

  There's a third option, which is the one I prefer the most:  shared
 block device.  Connect your two servers to a SAN, and store all of
 Cyrus' data on one LUN, which both servers have access to.  Then, set
 your cluster software to automatically mount the file system before
 starting Cyrus.  You'll need STONITH or IO-fencing to protect against
 file system corruption in a split-brain scenario, but other than that
 it's a fairly simple solution that's unlikely to break in spectacular
 ways.  You could share a SCSI cabinet between the servers instead of
 using a SAN, though I can't say I reccomend it - too failure-prone.

  I'm working on building such a system with Cyrus+Exim these days, and
 I tend to use the same setup for all other HA stuff I set up as well.
 I can't remember that any of those systems have ever misbehaved,
 either.  So based on that experience I'd reccomend doing it this way.

Tore Anderson
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html

More information about the Info-cyrus mailing list