Question about lmtp.lock
Michael Loftis
mloftis at wgops.com
Mon Dec 13 12:14:49 EST 2004
--On Monday, December 13, 2004 10:38 -0500 David G Mcmurtrie
<dgm+ at pitt.edu> wrote:
> We've installed cyrus imapd 2.1.17 on a 4-node Veritas cluster and we're
> now testing it. Our /var/imap filesystem is on a clustered filesystem.
>
> We noticed that all of the lmtpd processes are just sitting in a blocking
> fcntl() call waiting for a lock on /var/imap/socket/lmtp.lock. When we
> run this in a clustered environment, each lmtpd is consuming CPU resources
> while blocking. In a non-clustered ufs environment they do not.
>
> Is there any reason that the lmtpd processes need to be serialized across
> different nodes in a cluster? If not, we'll just write these lock files
> to local ufs space on each cluster node.
There are a number of different lockfiles that cyrus uses during it's
lifecycle. Though one thing you need to know is that it is not designed to
run like you're attempting to run it. Each cyrus instance is meant to be
standalone, and running them all from a shared disk could very likely cause
mailbox corruption, as well as skiplist corruption for the seen/subs
entries and such. The only part of cyrus that may be multi-node from same
storage safe is the BerkeleyDB stuff used for the mailboxes and deliver DBs.
Take a look at MURDER, that's what you'll want if you want to cluster
Cyrus. MURDER+heartbeat with a shared storage medium provides for failover
(heartbeat is a separate, generic failover package).
>
> While I'm on the subject, what is the purpose of
> /var/imap/socket/imap.lock?
>
> Thanks,
>
---
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
More information about the Info-cyrus
mailing list