[Mailman-Users] Mailman and multimaster redundancy

Mordechai T. Abzug morty at frakir.org
Fri Nov 4 11:20:55 CET 2005


On Fri, Nov 04, 2005 at 08:17:47AM +0200, Brad Knowles wrote:
> At 10:24 PM -0500 2005-11-03, Mordechai T. Abzug wrote:
> 
> > I'd like to set up GNU Mailman for high-availabilty via multimaster
> > redundancy, ie. with two servers such that configuration and
> > subscription changes can occur on either server and will automatically
> > be propagated to the other server.
> >
> > Can GNU Mailman do this?
> 
> 	Mailman wasn't really designed to do this sort of thing, but 
> there are some features it does have which makes something along 
> these lines at least achievable.
> 
> 	It is easy enough to split up the incoming mail server(s), 
> outgoing mail server(s), and front-end proxy web server(s) onto 
> separate machines.

Yes, the web part and the mail part are easy.  My concern is the
mailman configuration itself, as per my earlier posting.  I need full
redundancy.  Note that performance is NOT a problem.  The problem is
to not have a single point of failure.  The servers in question are
way-overspec'd for the expected load, but we need to be able to
continue running in the event that we lose a facility.

> 	Splitting the Mailman instance itself is a bit more difficult, 
> and would need to be done via NFS or other shared network storage 
> facility with the appropriate file locking mechanisms, etc....

In my experience, you can't just take an app that was designed to run
on a private filestore or a private database, run two instances of it
on a shared filestore or a shared database, and expect instant
happiness.  You will run into race conditions, which are not the fault
of the developers because they never intended it to be run this way.
It may even appear to work for a while, and then late one night,
conditions are just right, your two instances tie the race, and your
configuration is corrupted.

So, was Mailman intended to be run this way?

I also prefer not to rely on a shared filestore or a shared database,
since it introduces more moving parts, and a new single point of
failure (the NFS server) unless you go with something like a NetApp or
a database with built-in replication.  Application-layer replication
is even better because it guarantees that the application is aware
that it is being replicated.  But I'll take what I can get; is Mailman
safe for external replication?

> 	I don't know if there is a FAQ entry on this subject in 
> particular, but you should search the FAQ Wizard for "performance", 
> and search the archives of this list.

I looked before I posted, and didn't find anything.  Am I missing
something?

- Morty



More information about the Mailman-Users mailing list