2.3.7 replica with multiple partitions?

Bron Gondwana brong at fastmail.fm
Wed Aug 16 22:59:34 EDT 2006

On Wed, 16 Aug 2006 10:28:47 +0100, "Tim Bannister" <Tim.Bannister at manchester.ac.uk> said:
> We're intending to deploy a new Cyrus-based system using SAN storage and
> relying on replication for backups; under normal circumstances, we will
> take only partial backups of the master IMAP servers - omitting
> /var/spool/imap
> We've provisionally decided that each master IMAP server will have
> several partitions, each around 250 GiB, and that we'll distribute users
> across these. We'd like to replicate these to machines that are tuned
> for good IO performance. Initial tests with 2.3.7 show replication
> working, except that renaming a user to a different partition doesn't
> have an effect on the replica. Other operations such as mail delivery
> continue OK for a user that's moved to a different partition.
> The obvious workarounds for this are:
>  * give each replica instance a single default partition, probably 750GiB
>  * use just one partition on each master
>  * take an OOB copy of the mailboxes DB from the master and move users
>    around on the slave to make them match
> I'd at least like the option to be able to preserve partitioning when
> replicating, but I haven't found it. If there's no such option then
> what's the best way round this issue?

We're going with "one cyrus instance per partition", but then we're
already running both masters and replicas on the same server to help
reduce load.  We've chosen to use 300GiB partitions because that splits
rather neatly into 4 drive RAID 5 arrays, and it's small enough that
recovery doesn't take forever.

By having both masters and replicas on each machine and making sure
that all the replicas for a given host aren't on the same other host,
we spread the extra IO around when a machine fails.  At least that's
the theory.  Sort of RAID-5 for Cyrus partitions!

Once you go this route there is a bit of custom configuration to manage
of course.  I wouldn't dream of doing it without a whole stack of
templated auto-config generation goodness.

> Replicas are Sun T2000, master servers are HP DL380 G4, storage is EMC
> CX series. Each replica host will have two Cyrus instances (slave to 2
> masters).

Interesting, what's your failover scenario?  Master on the Sun while you
bring up a new HP/storage unit, or just suspend those accounts while you
recover to a master?

  Bron Gondwana
  brong at fastmail.fm

More information about the Info-cyrus mailing list