On Fri, 21 Oct 2011 09:27:03 -0400, Miles Fidelman
<mfidel...@meetinghouse.net> wrote:
> Hi Folks,
> 
> I'm about to rebuild a server farm, and I'm thinking about alternate 
> approaches to high-availability for our mail services.
> 
> Right now, I just run a collection of services (including mail) on a 
> virtual machine, on top of a disk farm, with auto-failover to a 
> hot-spare backup on a 2nd machine.  With the addition of a few more 
> machines into the rack, I'm thinking about dis-aggregating several 
> services, and wondering about service-specific high-availability
> strategies.
> 
> Can anybody point me to examples, howtos, or what have you on building a

> high-availability mail cluster - I'm running Postfix, Amavisd, 
> Spammassassin, ClamAV (plus Sympa for list management, and UW IMAP - but

> those aren't technically part of the mail processing).  I'm specifically

> looking for approaches to redundant storage of mail ques, failover 
> models, recovery from failure, and so forth.
> 
> Thanks much,
> 
> Miles Fidelman

Miles,

I can outline our setup, which we have spent some time building.  We have
an external spam filtering solution, which in itself is load balanced and
highly available which I will leave out.  

At the most basic layer we use VMware on commodity hardware, which gives
us a lot of flexibility in deploying mail servers (i.e. cloning &
templating).  If you're not already virtualized I would highly recommend
it.  In our environment we have four separate mail servers that perform a
single task each:

- Inbound email (postfix)
- POP/IMAP (dovecot)
- Outbound email (postfix & dovecot for SASL)
- Webmail (Roundcube)

We do this to mitigate disaster risk, where if one service bugged out and
caused the load to skyrocket, it would not break the other services.  This
setup has saved us from full blown outages many times, and instead we had a
smaller outage that might have just impacted POP/IMAP or inbound mail
separately.  We also feel this solution is easier to manage as the configs
are completely separated.  We also have created two to four of each type of
server, which are load balanced appropriately.

We use NFS storage to tie all of the disk bound services together, as it
is naturally a clustering solution for storage, and works great for this
mail system.  For super high availability we have implemented a NetApp
Metro Cluster NAS, where we can instantly failover NFS services from our
primary data center to our secondary data center 10 miles away.  The
virtual machines that host mail are located at both sites as well, and are
clustered using a pair of hardware load balancers using VRRP for
connectivity failover.  This means close to zero downtime, which is really
amazing.

All of the authentication and aliasing is done from a Galera mysql
database.  Galera is a multi-master synchronous replication service for
mysql, which allows us to host read/write capable cluster of mysql servers
that exist at both data centers, providing the most crucial part of the HA
solution in my mind.  

If you have any questions feel free to ask.

Reply via email to