Jens-- Thanks for your help! I've been able to get Cyrus IMAP running now with a shared backend, and my tests thus far indicate that it's working dandy. It looks like most of the "important" databases are already skiplists; the only ones that defaulted to BDB were the duplicate, tlscache, and ptscache databases. What, if anything, do I need to do special when converting my data over? I'll not be changing Cyrus versions; will it "just work" to move all of my current data, or will I need to convert databases/reconstruct/etc.? Thanks again! Chris St. Pierre Unix Systems Administrator Nebraska Wesleyan University On Mon, 8 Sep 2008, Jens Hoffrichter wrote: > There I told him to write to the list, and I just clicked the wrong > reply button myself ;) > > Sorry for that. > > > ---------- Forwarded message ---------- > From: Jens Hoffrichter <jens.hoffrichter@xxxxxxxxx> > Date: 2008/9/8 > Subject: Re: Docs for Cyrus/GFS? > To: "Chris St. Pierre" <stpierre@xxxxxxxxxxxxxxxx> > > > Hi Chris, > > 2008/9/8 Chris St. Pierre <stpierre@xxxxxxxxxxxxxxxx>: > >> I'm looking for any good documentation on using Cyrus IMAP with shared >> storage (in our case, GFS). Thus far, all I've been able to turn up >> is a few snippets on mailing lists and in the wiki, but nothing really >> comprehensive. Any pointers? Thanks! > There is no real documentation up to now, I think, but I'm in the > process of implementing a quite big mail system on top of a GFS, so if > you have any specific questions, just ask here on the list or me > directly, though on the list would probably be better, to share the > answers. > > Just some hints for things I stumbled upon up to now: > > I suppose you meta directory will be shared, so you need to separate > out some directories between the single nodes, where each node can put > its own files. Directories coming to my mind are "proc" and "backup". > There are probably some more, but I have no access to the machine > right now to check it. For the separation there I used the named > symlinks from GFS, which worked quite fine. > > The other thing is: Make ABSOLUTELY sure that you turn off anything > related to bdb during compile (you probably need to compile your own > cyrus anyway, we are using the incova sources here), as berkeley db > just doesn't work on top of GFS. Or, at least not in a cyrus context. > And it isn't sufficient to just use skiplist in the config file, you > definitely need to switch off compiling bdb support. > > The reason for this is that even if you don't have any bdbs > configured, cyrus will still initialize some sort of bdb environment > in your meta directory, and if on another sort the same thing is > happening during the same time, it will try to sleep on a mutex, > waiting for the release of the mutex. Yet, the callback to wake up > never comes when using GFS, so your process will hang indefinitely. > That one took us at least 3 weeks to figure out ;) > > Besides from those little things, cyrus works on top of the GFS just > fine, you probably need to tweak some tuning parameters, but I don't > remember them right now, if you need them, I can look them up for you. > > The performance is nothing to brag about, though, cyrus and GFS just > don't play that well together. But I got the performance I needed > (around 15 logins per second with three nodes using a loadbalancer), > which is sufficient for our needs. The added reliability is nice, > though, as you can turn off one node, and the whole thing still works. > > I don't know if you have any experience using RedHat Cluster, but be > absolutely sure to understand about fencing and quorum of the cluster > before you start any configuration. Cluster software is by no means > really easy to use, IMO, and everything you do needs some extra > thinking if you are just used working with single nodes normally :) > > Just try your luck, and if you have any questions, just ask. > > Jens > ---- > 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 > ---- 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