2017-03-16 86 views
1

我目前正在四個節點上測試OpenLDAP多主複製,並且我遇到了一些問題。OpenLDAP多主複製

我遵循本教程:setup-openldap-multi-master-replication-centos-7,我成功配置了四節點多主複製。

如果我有所有節點活着,一切正常,數據在所有四個節點之間複製。即使我停止一個/兩個/三個節點,只在生命節點上進行一些更改,數據會在節點重新啓動時複製到節點。

但問題是,如果我停止並在節點ldap1,ldap2和ldap3上啓動slapd服務,而我在節點ldap4上做了一些「多個」更改。

我的一個場景,在那裏我有問題: - 一切都是同步 在一個節點上我在LDAP

for ((i=1; i<=5000; i++)); do 

> addUser.ldif 
echo " 
dn: uid=ldaptest$i,ou=People,dc=test,dc=com 
objectClass: top 
objectClass: account 
objectClass: posixAccount 
objectClass: shadowAccount 
cn: ldaptest 
uid: ldaptest 
uidNumber: 9988 
gidNumber: 100 
homeDirectory: /home/ldaptest 
loginShell: /bin/bash 
gecos: LDAP Replication Test User 
userPassword: {crypt}x 
shadowLastChange: 17058 
shadowMin: 0 
shadowMax: 99999 
shadowWarning: 7 
" >> addUser.ldif 

ldapadd -x -w xxxxx-D "cn=Manager,dc=test,dc=com" -f addUser.ldif 
done 

所有用戶現在在所有的DB啓動腳本,用於接入用戶。

然後在一個節點上我刪除用戶啓動腳本:

for ((i=1; i<=5000; i++)); do 
     echo $i 
     ldapdelete -w xxxxx-D "cn=Manager,dc=test,dc=com" -x "uid=ldaptest$i,ou=People,dc=test,dc=com" 
done 

在那個時候,我停止/啓動/停止/開始等三個節點的slapd服務。當腳本完成刪除時,ldap數據庫不再同步。

命令ldapsearch -x cn=ldaptest -b dc=test,dc=com |grep numEntries回報:

ldap1: numEntries: 648 
    ldap4: numEntries: 0 (node where script was running) 
    ldap3: numEntries: 5 
    ldap2 numEntries: 24 

這種行爲是正常的LDAP或也許是有毛病我的配置?

過程與教程中的過程相同,我只是爲複製添加了其他olcSyncRepl條目。喜歡的東西:

[[email protected] bkal]# cat ldap04_2.ldif 
    dn: olcDatabase={2}hdb,cn=config 
    changetype: modify 
    add: olcSyncRepl 
    olcSyncRepl: rid=004 
     provider=ldap://192.168.26.180:389/ 
     bindmethod=simple 
     binddn="cn=Manager,dc=test,dc=com" 
     credentials=iskratel 
     searchbase="dc=test,dc=com" 
     scope=sub 
     schemachecking=on 
     type=refreshAndPersist 
     retry="30 5 300 3" 
     interval=00:00:01:00 
    - 

[[email protected] bkal]# ldapadd -Y EXTERNAL -H ldapi:/// -f ldap04_2.ldif 

我的第一印象是,LDAP多主複製,如果當我們插入或LDAP數據庫刪除數據節點重啓並不十分可靠。

回答

2

我們使用OpenLDAP多主節點的經驗是,它具有2個ldap節點的可靠性。有3個(可能還有更多的節點)複製出現一些小的壓力。我們可以用Apache JMeter作爲測試工具重現這一點。主要刪除行爲給了問題。

對於2個節點,Apache JMeter測試完全不會造成任何問題,複製時最多可添加8000個條目,隨後在測試計劃中添加,讀取,更改和刪除操作。

+0

感謝您的確認Obout OpenLDAP多主複製與更多的兩個節點。在經歷了OpenLDAP的不佳體驗之後,我們開始使用「389 Directory Server」進行測試,結果更好。 – rtmktl