justajoke86 发表于 2012-10-23 10:38

LDAP 主从服务器同步问题

本帖最后由 justajoke86 于 2012-10-24 14:33 编辑

最近配置了两台openldap的主从服务器,按照网上比较典型的配置方式,主从的关键配置如下:

主服务器上的/etc/openldap/slap.conf里添加了:replogfile /var/lib/ldap/replog
replica uri=ldap://slave.test.com:389
   binddn="cn=replication,dc=test,dc=com"
   bindmethod=simple
   credentials=secret从服务器上的/etc/openldap/slap.conf里添加了:updatedn "cn=replication,dc=test,dc=com"
updateref ldap://master.test.com:389现在ldap服务正常,在主服务器上增加/删除/更新信息都可以同步到从服务器上.
但是在从服务器上更新数据却无法反向同步到主服务器。如下测试在slave上插入一条新的ou条目,接收到了referral信息,但是实际上在master和slave上都没插入这个条目。# ldapadd -xWcf newou.ldif
Enter LDAP Password:
adding new entry "ou=cct,dc=test,dc=com"
ldapadd: Referral (10)
      referrals:
                ldap://master.test.com:389/ou=newou,dc=test,dc=com不过比较奇怪的是在用ldapbrowser的时候,可以在slave上执行插入新条目操作。(成功转介到master上进行插入后,再replicate到slave上)

但是为什么命令行没有成功,有没有高手遇到过类似的问题呢?求解,谢谢!
(上网一通乱搜后,发现有个说法是“OpenLDAP 命令行客户机不遵循转介,但其他 LDAP 库遵循。如果您正在复制的环境中使用 LDAP,应该验证您的应用程序是否正确遵循转介。”,这个说法到底是真的么???)

justajoke86 发表于 2012-10-24 14:35

顶一下,等专家。。

justajoke86 发表于 2012-10-25 10:42

再顶一下。。

doita 发表于 2012-10-25 17:35

主从的意思就是主的可读可写,从的是只读的,所以,无法更改从服务器内容,更没法用从服务器来更新主服务器。

abc3w 发表于 2012-10-25 21:11

看看ACL权限

justajoke86 发表于 2012-10-26 09:40

回复 4# doita

确实是只能单向的由主服务器更新从服务器,但是在slapd.conf里设置了updateref的含义就是将从服务器上收到的更新请求转到主服务器上,然后主服务器更新完后再推送到从服务器。
从始至终都是主服务器更新从服务器,但是现在的情况是没有自动实现。

网上看了很多非官方的资料,有些说法就是updateref不会自动转送请求,而是要通过二次开发实现的,不过尚未考证。

不过目前如果客户端绑定在从服务器上,通过passwd命令来更新用户password,是会自动实现referral的。其他条目或属性的更新都没有成功过。
   

justajoke86 发表于 2012-10-26 09:41

回复 5# abc3w

ACL应该都是ok的,在主从上都设定了replication账号的可读写。
   
页: [1]
查看完整版本: LDAP 主从服务器同步问题