What's the best possible email failover solution

Bill Moran wmoran at potentialtech.com
Mon Jun 21 14:25:23 PDT 2004

Andy Harrison <aharrison at gmail.com> wrote:
> On Mon, 21 Jun 2004 13:20:06 -0400, Bill Moran <wmoran at potentialtech.com> wrote:
> > 
> > Hey,
> > 
> > I know questions like this get asked a lot, but I'm going to be really specific.
> > 
> > I know how to set up failover with a backup MX.  That's not what I'm looking
> > for.  We have a cyrus-imap server with lots of users connecting via IMAP,
> > while everything gets backed up, this only happens once a night.  Thus, if the
> > server were to go up in smoke right before the backup occurred, we'd lose
> > something like 23 hours worth of emails.
> > 
> > Does anyone have a solution to provide real-time mirroring of IMAP folders?
> > I don't mind manual intervention to get the thing running again, I just want
> > to ensure that if an email is received, it's on both machines and can't get
> > lost.  Is there a way to get real-time replication of cyrus (I'm no cyrus
> > guru, another fellow set this up)
> > 
> > I'm not tied to Cyrus either, if there's another solution, I'd be happy to
> > implement it.
> > 
> > I have an idea ... by using Dovecot with PostgreSQL storing the actual mail
> > folders, with Slony installed to provide real-time replication of the Postgres
> > database ... I don't know if Dovecot is able to store the actual mail folders
> > in Postgres yet, though ... Anyone?
> Real time mirroring would be a looooong way to go for very little
> return.

The return can be significant.  The company I am doing this for provides IMAP
mail services for business.  If a filesystem crashes and service is down for a
while, we can easily lose clients.  If we had some sort of failover, we'd be
able to just switch the IP on the backup machine and life would be good.

"long way to go" is what I'm trying to establish.  I was hoping to find
something workable without reinventing the wheel.  For example, Postgresql can
do real-time replication between two Postgresql servers using Slony.  If I can
find an IMAP server that will keep the mail folders in PostgreSQL, I've got my
failover system ... tada!

> You'd be much better off with some sort of NAS in a raid
> config, even if it were home grown, to store the spools.

We already have a "home-grown NAS" (just a FreeBSD box with Vinum RAID) but
it doesn't protect me if the machine with the drives has a power supply or a
mobo or a CPU go south.  I don't know if a NAS is any more reliable than a
PC, but it's still a single point of failure.

>  Then you can
> have as many front-ends as you want, just auth with LDAP or something.

We actually, already sort of have this (we're in the process of putting the
second front-end together now)

Thanks for the feedback, Andy!

Bill Moran
Potential Technologies

More information about the freebsd-questions mailing list