[Mailman-Developers] Doing load balancing with mailman

Marc MERLIN marc_news@valinux.com
Fri, 17 Nov 2000 13:05:21 -0800


So I didn't hear anything back on mailman-users, would anyone here be more
inspired with those questions?

Thanks
Marc

----- Forwarded message from Marc MERLIN <marc_news@valinux.com> -----

[I didn't  Cc mailman-developers,  but if I  should ask  programing specific
questions there, let me know]

While  a  correctly tuned  mailman+exim  config  should  be able  to  handle
sourceforge's  lists  just  fine,  I've  been  encouraged  to  look  into  a
failover/load balancing solution :-)

So, I've seen two options so far:

Option #1:
Lists are physically split between let's say 2 mail servers.

All mail goes to listname@lists.sourceforge.net,  which is MXed the two mail
servers. I know how to configure exim so that it rewrites the envelope To to
resend the mail  to the other list  server if listname is not  local to that
mail server.
So far so good.
The problem, is that for web access, I then have to show URLs with
http://lists1.sourceforge.net/lists/listinfo/listname
and
http://lists2.sourceforge.net/lists/listinfo/listname

Ok, that can be fixed with some clever apache rewriting/proxying, but it'd
be a bit iffy.

As far as failover is concerned, I  can rsync the list configs on a periodic
basis and with some symlink magic, I  could have one mail server mostly take
over the other mail server's lists if it were to disappear.

This requires mail header rewriting, http URL rewriting, plus other magic,
and it's not very "automatic".


Option #2:
Hold on, this is scary :-)

/var/local/mailman is NFS mounted on the mail servers.
/var/local/mailman/qfiles is a symlink to local disk
qrunner is modified to set a lockfile in qfiles and not data (it should
hopefully be a simple patch)
cron jobs are run on only one mail server, with the exception of qrunner.
both mail  servers offer web  access (same URL  with load balancing)  to the
same lists.

Voila :-)

Did I forget anything? Is there any reason why this wouldn't work?
(mailman's locking looks  NFS safe to me,  but I don't know  if having locks
created for  possibl the same lists  in the mailman/locks directory,  by two
different machines would  be a problem for some reason  that would escape me
right now).

Is there anything else besides qrunner that I'd need to patch?

Thanks
Marc
-- 
Microsoft is to operating systems & security ....
                                      .... what McDonalds is to gourmet cooking
  
Home page: http://marc.merlins.org/   |   Finger marc_f@merlins.org for PGP key

------------------------------------------------------
Mailman-Users maillist  -  Mailman-Users@python.org
http://www.python.org/mailman/listinfo/mailman-users

----- End forwarded message -----