cyrus replication how does it work
Wesley Craig
wes at umich.edu
Sat Jul 7 14:44:19 EDT 2007
On 07 Jul 2007, at 09:26, ram wrote:
> I was looking at the replication doc here at
>
> http://cyrusimap.web.cmu.edu/imapd/install-replication.html
>
> ( seems incomplete )
>
> Is there a complete documentation somewhere.
The best documentation is in the wiki, and anyone getting a useful
answer from these lists ought to feel obliged to update that
documentation.
> I had a few questions
>
> 1) How does replication happen
The various Cyrus programs which run on the primary backend (imapd,
pop3d, lmtpd) write to a sync log (/var/imap/sync/log in my
environment) as various data changing events occur. The data in the
log typicall names the thing that changed, not what the change was,
e.g., "MAILBOX user.wes" means that something about the mailbox
changed. sync_client reads this log and connects to sync_server
running on the replica backend. The data in the log gives
sync_client a hint of where to look for changes between the primary
and the replica backends. sync_client will then examine mailboxes,
acls, seen state, etc, on the primary backend and ask sync_server for
similar information on the replica backend. Changes are transmitted
from sync_client to sync_server and stored on the replica backend.
> 2) Can it happen to more than one slave
Not in the current implementation, tho changing it to replicated to
more than one replica backend wouldn't be super complex. Someone
familiar with Cyrus internals could do it in a few weeks of coding, I
would estimate.
> 3) Does replication also replicate the mailboxes ( users ? )
This question doesn't really make much sense to me. All pertinent
information is replicated.
:wes
More information about the Info-cyrus
mailing list