I have one cyrus murder (aggregator) master and a IMAP backend cluster on failover consisting of 2 nodes (backend1 and backend2).
I use corosync/pacemaker to set :
- a virtual IP
- start and stop the cyrus-imapd service
for the backend IMAP cluster.
I use too drbd to synchronize the /var/lib/imap and the /var/spool/imap between my 2 IMAP backends.
For example, the cyrus-imapd service runs on the backend1. When userA creates folders and subfolders in their INBOX, the backend1 requets the aggregator with the mupdate protocole. It replied positively and on the aggregator's mailboxes.db we have the folders plus the backend's name where the folder is stored.
Even if the backend1 stops, the backend2 takes over. When userA create folder, cyrus-imapd requests from the aggregator if it can create the folder. The aggregator replied negatively because the aggregator knows that the userA's mailbox is managed by the backend1. It doesn't know that backend1 and backend2 are the "same". So it ordered the backend2 to delete the mailbox. But as their datas are replicated, so the maibox disappears on backend1.
So my question is the following : Is there an option, in the imapd.conf or something else that allows my 2 backend's IMAP appear with the same name ?