当 ldapsearch 工作正常时,为什么 syncrepl 不执行任何操作?

当 ldapsearch 工作正常时,为什么 syncrepl 不执行任何操作?

我正在尝试在 Red Hat 7 上使用 OpenLDAP 设置 LDAP 多主复制(对 LDAP 的了解很少)。

作为第一阶段,我已经安装了 syncprov:

# ldif format
dn: cn=module,cn=config
objectClass: olcModuleList
cn: module
olcModulePath: /usr/lib64/openldap
olcModuleLoad: syncprov.la

并启用:

# ldif format
dn: olcOverlay=syncprov,olcDatabase={2}hdb,cn=config
objectClass: olcOverlayConfig
objectClass: olcSyncProvConfig
olcOverlay: syncprov
olcSpSessionLog: 100

我尝试使用简单绑定作为同步方法来创建 syncrepl 条目,如下所示(我想我可以稍后切换到 TLS):

# ldif format
dn: cn=config
changetype: modify
replace: olcServerID
olcServerID: 1

dn: olcDatabase={2}hdb,cn=config
changetype: modify
add: olcSyncRepl

olcSyncRepl: rid=134 provider=ldap://ws2/  bindmethod=simple searchbase="dc=tcs,dc=local" type=refreshAndPersist interval=00:00:00:10 retry="5 5 300 5" timeout=1

add: olcMirrorMode
olcMirrorMode: TRUE

(“ws1”和“ws2”是隔离的本地 LAN 上的两台服务器。)

我知道这是可能的为了让服务器能够互相访问,因为我可以使用 ldapsearch 从另一台服务器连接到其中任意一台服务器,例如:

admin@ws1$ ldapsearch -x -H ldap://ws2/ -LLL "(objectClass=posixAccount)" dn
dn: uid=testuser1,ou=People,dc=tcs,dc=local
# ...

但他们似乎从未真正同步过他们的数据,而且我找不到任何原因。

如果我已经确定基本 LDAP 通信正常,但没有发生复制,我该如何排除 syncrepl 功能的故障?

相关内容