On Fri, Nov 17, 2006 at 03:31:52AM +0300, Igor Zhbanov wrote: > 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. We use nginx with an authentication daemon which returns the backend server name along with the authentication response. You can also use perdition if you're willing to put up with the scalability hit of process-per-connection. Similarly there's an authentication daemon that speaks saslauthd protocol to Cyrus on the backend. > 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. That's what cyrus replication in 2.3.3+ is for, and why we're using that in addition to the nginx frontends spreading the load out. This works very nicely with having about 6 times as many "hosts" as real machines, because otherwise you tend to run out of TCP port pairs on the frontend eventually. Bron. ---- 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