2006/11/17, Sarah Walters <s.walters@xxxxxxxxxxxxx>:
> > > The main problem is to build a shared storage that can > survive server > > > crashes, where mail will be stored. > > > > Use a SAN. > First of all, such SAN must be very reliable itself. Second, it must > support some kind of global locking mechanism, so several nodes can > use lock to protect file from simultaneous writing. Third, Cyrus IMAP > must lock mailboxes, so several instances on different server can work > with one mailbox without conflicts. Whether Cyrus IMAP use locks or > assumes that he is the only one who access mail box, I don't know. Can > it safely access one mailbox from different servers, I don't know too. A good commercial SAN costs a fortune, but it is very reliable. And did you want a *cluster* or a group of servers? A cluster should operate as if it is a single host, and thus avoid the locking issues. Have a look at Red Hat's clustering product for an example. If our cyrus installation was going to be clustered, RH cluster with a SAN backend is what we would do.
Yes, I need the cluster exactly. Have I lots of domains, I could store mailboxes of each domain on separate server. But I have only one big domain. So, I need to spread mailboxes on one domain across several servers. And than I need very clever load-balancer that will send request to server where particular mailbox is. I don't know such balancers aware of mail system structure. Another way is to try to use something like GFS, constructed from several servers. Each server will contain one portion of data and will have Cyrus IMAP instance. But GFS will be mounted to each server, so each Cyrus IMAP instance will see whole filesystem. Of course, here we have same possible lock issues as with NFS. And we have no redundancy, as I understand. So, I need cluster for reliability to. I want to have each mailbox at least on two servers (or to have shared storage upon two-nodes failover cluster), so I can survive crash of any node (and not only of disk system, that can be protected by RAID, but CPU crash, memory...) with minimal recovery time. ---- 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