On Wed, 16 Jun 2010, Nestor A Diaz wrote:

Hello Cyrus People.

I have been always a proud user of the cyrus email system, currently my
larger cyrus installation is about 70K users, which have been working
fine, however i need to make some adjustems to improve the resposiviness
of the mailstore.

At the begining i use only a default mailstore, on a ext3 formatted
filesystem over a raid 10 / LVM, it works fine, however when it reaches
the 32768 directories, (a limitation of ext3) i have to create another
partition, and then another one, so i have currently 3 partitions in total.

Having defined some criteria in order to group every user into a
partition i will like some recomendations, taking in mind the current
cyrus server tools which i currently don't know what are their current
capabilities, my plan is to forget using cyrus partitions, and instead
using LVM partitions and the propper links to the physical partitions
from the logical one.

So i currently have:

partition-default : 30K users
partition-alt1: 20K users
partition-alt2 : 20K users.

and then i will like to have just one partition:

partition-default ext4 formatted with links to physical partitions based
on the first letter [a-z] of the user.

Have you seen the hashimapspool option:

hashimapspool: 0
            If enabled, the partitions will also be hashed, in addition to the 
hashing done on con‐
            figuration directories.  This is recommended if one partition has a 
very bushy  mailbox
            tree.

This results in spool directories like "/var/spool/cyrus/mail/m/user/morgan".

Unless you have more than 32k users with the same first letter in their username, it should work well.

There is also a "fulldirhash" option, but I've never used it.

I think LVM is a great advantage, and in some way aliviate the need for
cyrus partitions, i it will lead me deal with the grow of a partition
and data administration so easy without too much downtime.

So, it means that accordingly to this stragegy which seems to be the
most simple for me, what would be the best technical path to accomplish
a good migration ? allowusermoves: yes option and renamemailbox is
enoguth to do this task ? what if i want to do this online ? can i ? how
? is there any script that will help me do that ?

You can do online moves/renames.

Any suggestions or migration histories are welcome !

What about murder / perdition ? they make any sense in this configuration ?

Both Murder and Perdition would work to "scale out" to multiple servers. They do add complexity though, so there is always a trade-off.

        Andy
----
Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html

Reply via email to