Recomendations for a 15000 Cyrus Mailboxes

Bron Gondwana brong at
Wed Apr 11 20:37:56 EDT 2007

On Wed, Apr 11, 2007 at 04:58:15AM -0400, Greg A. Woods wrote:
> At Tue, 10 Apr 2007 06:56:43 -0500, Nestor A. Diaz wrote:
> Subject: Recomendations for a 15000 Cyrus  Mailboxes
> > 
> > These are the plans: (comments on every number will be apreciated)
> > 
> >    1. Linux LVM over a 600 GB RAID 10 ( 4 x 300 GB)
> I would only ever be able to recommend NetBSD or FreeBSD, and I would
> strongly recommend some form of external RAID controller, either SCSI or
> Fibre Channel attached.

Agree on the external controllers.  Ours are SCSI attached.  We haven't
tried LVM, but the separation of responsibilities means a kernel crash
on the OS won't take out the RAID system and vice versa.
> >    4. Which pop3 / imap proxy to use ?
> Proxy?  What for?

Multiple systems!  Also good for denial of service protection, making
really sure your 'admin' user is blocked for external users and a few
other funky things.
> >    5. Single instance or multiple instances of cyrus ? taking in mind
> >       that there should be the option to recover a mailbox or some mail
> >       of a mailbox without having to shut down the whole cyrus system.
> Single instance for Cyrus, but with a separate MX host that can be
> (quickly and easily) replicated and which does delivery via LMTP/TCP.
> That's far too small a system to justify the complexity of having to
> manage multiple systems.

Absolutely yes on the separate MX host.  They need to scale against
spammers and denial of service attacks.  Besides, it's a totally
different use profile.  They want to be doing fast context switches and
have lots of processing capability, while your Cyrus box(es) need good

As for complexity?  It's on the cusp.  We've certainly had many more
users on a single instance before, but we prefer to keep under 10k users
per Cyrus instance these days for quicker recoverability.  It really
depends if this system is expected to grow.  Once you build a management
system that allows you to run more than one Cyrus instance painlessly,
you can scale out to multiple machines much more easily.


More information about the Info-cyrus mailing list