Ciao a tutti,
Ho alcuni problemi con la replica attraverso syncrepl.
Ho creato un utente per il syncrepl che si chiama syncuser e questo utente ha
i seguenti diritti di accesso specificati sul file slapd.conf:
by dn="cn=syncuser,ou=Profile,dc=xxxxx,dc=xxxxxx,dc=xxxxx" read
il master e configurato per il syncprov con i seguenti parametri:
overlay syncprov
syncprov-checkpoint 100 10
syncprov-sessionlog 100
mentre la parte slave è configurata nel seguente modo:
syncrepl rid=001
provider=ldap://10.10.216.167:890
type=refreshOnly
interval=00:00:02:00
retry="15 10 120 +"
searchbase="dc=xxxxx,dc=xxxxxxxxxx,dc=xxxxx" (root dell'albero)
filter="(objectClass=*)"
attrs="*"
scope=sub
schemachecking=off
bindmethod=simple
binddn="cn=syncuser,ou=Profile,dc=xxxx,dc=xxxxxxxxxxx,dc=xxxxxx"
credentials=xxxxxx
updateref ldap://10.10.216.167:890
Ho effettuato le seguenti prove con risultati disastrosi:
1) slave senza db, al memento dello startup dello slave il suo db inizia a
popolarsi ma dopo 8h di attesa
si è popolato solo parzialmente (lo slapd slave e configurato per tracciare le
info relative al syncrepl (-d 16384)
nel di log trovo un mare di righe tipo queste:
syncrepl_entry: rid 001 LDAP_RES_SEARCH_ENTRY(LDAP_SYNC_ADD)
syncrepl_entry: rid 001 be_search (0)
syncrepl_entry: rid 001
uid=DC_PIPPO|rm_ip2|434212|USER43|People,ou=expiredAccounts,dc=xxxx,dc=xxxxxxx,dc=xxxx
syncrepl_entry: rid 001 be_add (0)
syncrepl_entry: rid 001 LDAP_RES_SEARCH_ENTRY(LDAP_SYNC_ADD)
syncrepl_entry: rid 001 be_search (0)
syncrepl_entry: rid 001
uid=DC_PIPPO|rm_ip3|434212|USER43|People,ou=expiredAccounts,dc=xxxx,dc=xxxxxxx,dc=xxxxx
syncrepl_entry: rid 001 be_add (0)
syncrepl_entry: rid 001 LDAP_RES_SEARCH_ENTRY(LDAP_SYNC_ADD)
syncrepl_entry: rid 001 be_search (0)
syncrepl_entry: rid 001
uid=DC_PIPPO|rm_ip4|434212|USER43|People,ou=expiredAccounts,dc=xxxxx,dc=xxxxx,dc=xxxxx
syncrepl_entry: rid 001 be_add (0)
request done: ld 13bb588 msgid 2
do_syncrep2: rid 001 LDAP_RES_SEARCH_RESULT
se effettuo delle query con ldapsearch (da riga di comando vedo che nel db sono
presenti alcune entry con ou=expiredAccounts,
ma attreverso un qualsiasi browser non è visibile tale ramo.
2) Test con i due DB allineati, ho effettuato diverse prove sia effettuando
cancellazioni che inserimenti sul master ed
il risultato è sempre il medesimo il Master si impalla e non si ferma inviando
il comando kill -15 <pid>. Non è
più possibile lavorare con il master ne utilizzando vari browser ne da riga di
comando, l'unica soluzione per fermarlo
è il kill -9 e una successiva ripartenza.
Per ogni prova effettuavo un refresh del db (cancellazione dei file di dati e
slapadd da file ldif)
Alcune informazione la versione openldap è la 2.3.38 sia per il master sia per
lo slave, girano su sistemi solaris 9.
Il tipo di db che utilizziamo è ldbm e le entry presenti nel db (intendo dn)
sono 132285.
Qualche suggerimento? o idea?
A disposizione per chiarimenti.
Saluti,
Mirko
_______________________________________________
OpenLDAP mailing list
[email protected]
https://www.sys-net.it/mailman/listinfo/openldap