For some time now, I've been testing a unified murder configuration of the Cyrus IMAP server. I'm using two servers. Server A is a unified front-end/back-end server, hosting mailboxes and proxying connections to the back-end server. Clients connect only to server A. Server B is a conventional back-end server, only hosting mailboxes. My objective in this exercise is to set up a production server in the same manner, and then move mailboxes from the front-end to the back-end in a transparent manner. I've accomplished this successfully with the test server. Here are some notes I kept along the way: o The mupdate master cannot run on unified server, even with a different configuration directory. o The mupdate master will run on the backend server, with a different configuration directory. o A mupdate slave is required on a unified server, to update the local mailboxes database. This limitation should be fixable. o The mupdate server is multi-threaded but also runs as multiple processes. However, it uses mutex locking that can't work between processes. o E-mail delivery on the back-end server doesn't work if lmtpd has the `-a' option. At least, I couldn't figure out how to make it work. o For proxy delivery to work on the back-end server, the proxy user from the front-end must be defined in `lmtp_admins' on the back-end. o The service name configuration prefix as in `lmtp_admins' appears to work but is not documented anyplace. Where are the names listed? o `cyradm' connected to the unified server honours redirection to the backend, but prompts for a password repeatedly. This could be fixed by having it accept multiple server names on the command line, and opening persistent connections to all of them. o `cyradm' must connect to the backend to create mailboxes there. It doesn't work via proxy from frontend. o `sieveshell' connected to the unified server honours redirection to the backend, but prompts for a password twice. o For the cyradm `xfer' command, the unified server connects to the backend server as the proxy user, even when cyradm authenticates to the front-end as the administrator. o The mupdate master sometimes attempts to connect to itself, producing this error: ``kick_mupdate: can't connect to target: Connection refused''. o `autocreatequota' on the backend server may be necessary for `xfer' to work. o Defining the proxy user in `proxyservers' on the backend server does not work to enable cyradm `xfer' to work. o The proxy user must be defined in `imap_admins' for `xfer' to work. What privileges does this imply? o cyradm `xfer' only works from the unified server to the backend server, when connected to the unified server. Could it be fixed to work in reverse? Will it work when connected to backend server? -- -Gary Mills- -Unix Support- -U of M Academic Computing and Networking- ---- 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