Hi Howard! >> 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.
So when you say: "We recommend not to use MMR", you're not saying don't use code section X of openldap but use code section Y, but you're basically saying: Do not send different updates to different providers at the same time, right? In other words: If I would configure MMR between say 3 nodes but I would make sure that only one of them will receive updates at a time while on the other two there will only be read operations, then I have MirrorMode? Is that right? >> for new updates; in refreshAndPersist mode it will keep an LDAP session open >> and receive updates as they occur. Could I query a provider to show me the current open sessions held by the consumers? When is refreshOnly and when is refreshAndPersist recommended? I was always confused in the documentation, as it says: sncrepl is entirely a client side technology and then it says you have the option to either pull or push updates. Now this becomes a bit clearer to me. Thanks for that. Regards, Torsten Howard Chu schrieb: > 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. >
