Unfortunately, I do not have a definitive answer for you, but I have also
wondered — and previously research — the same, without coming up with a well
documented answer.
I draw a parallel to CouchDB — a non-SQL database — which also advertises
“Multi-Master Replication” as a feature, but to do so, you need to set up
symmetrical singular replication.
So for CouchDB — which is NOT ApacheDS — if you have two master nodes A and B,
you achieve multi-master by setting up:
A Replicates to B
B Replicates to A
as two separate replication streams.
I believe the same may be true for “Multi-Master Replication” for ApacheDS, as
I have not found anything that indicates otherwise, and I have spend a fair
amount of time looking. So I suspect the answer is just:
B Pulls from A
A Pulls from B
However, given the propensity of these groups to be offended and correct
anything that is wrong, more so than volunteer new information when asked, I am
hoping that if I am incorrect here, that someone else will post a correction.
Otherwise, I have “played” with this, albeit only two ApacheDS nodes, and I
have been able to simulate “Multi Master” by doing just that.
I have had some minor issues, but only when adding, deleting, and then
re-adding the same entry within a short period of time from the same node
(which I think might be a completely separate issue).
So in the general case it works (setting up A ==> B on B, and B ==> A on A),
and I ask anyone on this list if there is a better or different way to do it,
please advise, as I haven’t found it.
Caveat emptor: I am not involved in any way with the development or design of
ApacheDS, I am just a “happy” user who has spent considerable time figuring out
how to get ApacheDS to do everything I need it to do ... occasionally through
trial and error … ;-)
> On Jul 29, 2021, at 6:08 PM, Nick Couchman <[email protected]> wrote:
>
> On Fri, Jul 23, 2021 at 11:20 AM Nick Couchman <[email protected]
> <mailto:[email protected]>>
> wrote:
>
>> Hello, everyone,
>> I did some searching of the archives and Google on this issue, but haven't
>> found any definitive results, so thought I'd kick off a new thread, here,
>> and get some feedback on the best practices for setting up a "Multi-Master
>> Replication" configuration.
>>
>> The online Advanced User Guide has a LDIF file to use to create a
>> configuration, but I also noticed that there's a place to configure it in
>> the Studio GUI under Server Configuration. However, when configuring in the
>> GUI, it seems that you're only setting up one-way replication - that is,
>> you set up server2 to be the consumer of server1, so it syncs down any
>> changes from server1, but if you make changes to an object on server2 those
>> changes are not pushed back to server1.
>>
>> So, my question is this: Is the correct way to do this to set up both
>> servers to be consumers of each other - that is, set up server1 as a
>> consumer of server2 and server2 as a consumer of server1? Or is there a
>> different way that two-way replication should be done?
>>
>> Also, how does this scale? So, if I have four servers, do I need to set up
>> all servers to be consumers of all other servers, or should I pick a
>> "central" server and just configure replication to/from that server and the
>> other three? Or, again, is there some other way I'm not considering?
>>
>>
> Gentle bump on this - any takers??
>
> -Nick