[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: Troubleshooting synchronization

Torsten Schlabach (Tascel eG) wrote:
> To begin with, I would just ask for confirmation of my proper
> understanding of the documentation:
> 1. A master server is a server which is using the syncprov overlay
> (servers/slapd/overlays/syncprov.c). This overlay will do little more
> than just provide a synchronization cookie (CSN) which consumers may ask
> for to find out what needs to get replicated and what not.

Pretty much, yes. We use the term "provider", not "master".

> 2. A consumer server is a server in which an additional thread is
> running which will query the master(s) in a given interval to ask for
> updated and if any, get them over the wire and into the local copy of
> the database. This synchronization thread is servers/slapd/syncrepl.c I
> guess?

There is no additional thread. In refreshOnly mode it will periodically ask
for new updates; in refreshAndPersist mode it will keep an LDAP session open
and receive updates as they occur.

> 3. An N-Way Multi-Master setup is a setup in which N servers are each a
> master and any of the others is a consumer of all other masters?

N servers are each a provider; any of them can be consumers of any number of
the other providers. Full NxN connectivity is not a requirement, nor does it
scale well.

> So what I fail to understand is:
> 1. What is the difference between Mirror Mode and N-Way Multi-Master?
> Especially given that in N-Way Multi-Master, have to set olcMirrorMode
> to TRUE.

MirrorMode relies on an external frontend to direct all updates to a single
provider. There is no difference within the OpenLDAP code between MirrorMode
and MultiMaster; the difference is entirely external, based on your deployment.

> 2. Given that I have added a 'Sync' value to the olcLogLevel attribute,
> what would be the "health check" information I should be watching in the
> log for to see that replication is attempted as expected.

> 3. What problems should I be watching for in the logs?

Error messages related to connect failures, retries, etc.

> 4. Could I for example manually ask a master (using some ldapsearch
> statement, pretending I was the consumer) what the master thinks which
> entries I would have to update?

Yes, use ldapsearch -E sync. See the ldapsearch(1) manpage.

  -- Howard Chu
  CTO, Symas Corp.           http://www.symas.com
  Director, Highland Sun     http://highlandsun.com/hyc/
  Chief Architect, OpenLDAP  http://www.openldap.org/project/