[Mailman-Users] Mailman and multimaster redundancy
brad at stop.mail-abuse.org
Fri Nov 4 15:45:21 CET 2005
At 5:20 AM -0500 2005-11-04, Mordechai T. Abzug wrote:
>> 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?
Mailman was never intended to be used in this way. However, the
code has been worked over repeatedly, and made as NFS-friendly as it
can be. Assuming that NFS on both client and server is properly
implemented, it should be okay. The problem is the factors outside
the control of Mailman regarding the correctness of the filesystem
implementation, the way locking is handled, etc....
If you can guarantee that your operating systems and your shared
storage implementations are correctly implemented, including
distributed locking, etc... then you should be okay.
Unfortunately, most NFS implementations (and other network
filesystems) have bugs or "features" that are unique to a particular
platform and are not cross-platform compatible when it comes to
things like locking, etc... and this makes it impossible for any
application to support these kinds of features across all platforms,
or even across many platforms.
This is one of those things where you either have to take what
you can get and hope that it doesn't blow up in your face (and maybe
do some testing to try to get an idea of whether that will happen or
not), you find other ways to live without these features, or you find
other programs which were designed to be used in the manner you want.
My guess is that you're not going to find any open source/freely
available programs that are designed to be used in the way you want,
so you'll need to spend some real money to get a commercial mailing
list server system -- maybe LSoft ListServ, or Listproc, or somesuch.
> 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?
Mailman does not implement any kind of replication itself. If
you want replication, you'll have to implement that somehow within
the filesystem, or otherwise outside of Mailman.
> I looked before I posted, and didn't find anything. Am I missing
Well, in terms of the archives, you could search for "NFS", among
other things. Think of other key words that we've discussed so far
in this thread, and search on those, too.
Brad Knowles, <brad at stop.mail-abuse.org>
"Those who would give up essential Liberty, to purchase a little
temporary Safety, deserve neither Liberty nor Safety."
-- Benjamin Franklin (1706-1790), reply of the Pennsylvania
Assembly to the Governor, November 11, 1755
SAGE member since 1995. See <http://www.sage.org/> for more info.
More information about the Mailman-Users