Doing Cyrus *right* for a large installation

Simon Matter simon.matter at
Thu Jan 15 17:40:06 EST 2009

> On Thu, 15 Jan 2009, Simon Matter wrote:
>>> But then I started thinking about how I was going to backup all this
>>> new
>>> data...  Our backup administrator isn't too excited about trying to
>>> backup
>>> 12TB of email data.
>>> What if we used Cyrus replication in combination with delayed expunge
>>> as a
>>> form of "backup"?  We currently only keep 1 month of daily backups
>>> anyways...
>>> For those of you running large installations, how do you back them up?
>> I don't have a really large installation anymore but what I still do is:
>> 1) use 'expunge_mode: delayed' and 'delete_mode: delayed' (a nice side
>> effect is increase of performance on certain operations).
>> (expunge/delete
>> period is 7 days in our case)
>> 2) use rsnapshot to replicate all cyrus data to a separate storage and
>> maintain some history while still saving space. (daily in our case)
>> 3) create offsite backup of the rsnapshot storage. (weekly in our case)
>> That's our poor mans solution we use here, and it is very KISS. Other
>> ideas may include using advanced filesystems like ZFS or build something
>> around DRBD, maybe all in combination with deduplication (something like
>> using a Datadomain box instead of rsnapshot).
>> I'm also interested to hear what others do.
> rsnapshot, neat!  I haven't seen that until now.  If I'm reading this
> right, rsnapshot works like ZFS snapshots, where the only "extra" data in
> each snapshot is the data that has changed?

I don't know the details of ZFS but I guess it works on the block level
but not like most LVM on raw device blocks but on the filesystem level.
Rsnapshot works completely on the file level. It's nice for mail spools
because the payload data doesn't change and that means those file only
exist once and all other instances are hardlinks. It does not work well if
mails are moved around, of course, but usually that happens only once and
then they stay there forever.
We are using rsnapshot for all our servers and it really works very well.
We have hit different kernel issues over the years (the first box ran
RedHat 9) but finally things look very stable with RHEL5.2.

> This kinda goes back to a discussion last week about filesystems.  I think
> I would like ZFS, but I'm not sure I want to switch our Cyrus stuff over
> to Solaris.  We run a fair amount of Solaris on SPARC here, but no Solaris
> x86.  Unfortunately the SPARC hardware is not as cheap as x86.
> I was pondering using delayed expunge and delayed delete with a 30 day
> period, and just replicating (Cyrus replication) to another data center.
> Hmm, I should try to figure out how much overhead it would be to keep 30
> days of delayed expunge/delete...

We are using 7 days for delayed expunge/delete and I don't remember any
proplems with it. I have never tried 30 days.


More information about the Info-cyrus mailing list