Hi, Matthew Seaman wrote: > On FreeBSD, CARP would be the natural choice, seeing as it's standard with > the system. ... CARP works nice for a floating IP-address between two servers, and if you go that route you might want to look at ifstated (in the ports) to control daemons based on the CARP failover... (With heartbeat (linux-ha) you can control services as well as the IP-addresses...) But I'm not sure if this automatic failover is wise for use with Cyrus replication. At least I still do my failovers manually; I still like some more control over where my master actually is, when I recover, verify that the last bits are properly synced (if possible run a sync_client on the remaining logs), verify that replication was actually working, verify that there is indeed something wrong, perhaps compare md5s, ... Just some checks but if a failover occurs with a slave that was accidentally not up to speed you'll lose (the not yet synced) mail on the previous master (if I'm not mistaken). And you can't have a sync server and sync client at the same time and have imapd running on both servers (then you'd only redirect your clients to the server running the master imapd with the CARP failover)... That said, I don't have a written 'protocol' for it yet, and I'd still like to automate a couple of things, I was thinking of cfengine or something like that so I can only flip a switch to change roles (and still be carefull)... but for the application I think it's more dangerous to rely on CARP; it might just switch addresses while the application isn't ready for that. (We have stunnel, http proxies, resolvers and in/outgoing MTAs, those work perfectly with CARP - even without ifstated...) Paul ---- 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