How should Cyrus do clustering?

Gary Mills mills at cc.umanitoba.ca
Sat Oct 9 16:42:32 EDT 2004


There does seem to be some demand for operating a Cyrus IMAP server
in a failover or load-balancing clustered environment.  One question
is whether data should be replicated between nodes in the cluster,
or whether all nodes should access one copy of the data.  Cyrus uses
a number of databases, as well as using UFS as a database for the
message store.  What's the best way to manage these databases across
multiple nodes?

For performance reasons, replication would have to be done in the
most efficient manner possible.  Cyrus processes already know which
files and portions of files are being updated.  Replication should
use that knowledge.  For the message store, a UFS layer that does
efficient replication might also work.  Of course, there are also
issues of concurrent access from different nodes.  The current inter-
process locking facility might have to be extended.  For the small
databases, a redesign may be required.

Apparently, Oracle clustering uses a single copy of the data, with a
buffer manager running on all nodes to mediate access to the data.
Would that approach work with Cyrus?  There are also filesystems,
such as Sun's QFS, that allow the same files to be visible on all
nodes of a cluster.  Would that sort of facility benefit Cyrus?

-- 
-Gary Mills-    -Unix Support-    -U of M Academic Computing and Networking-
---
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