fred34 | Bonjour à tous,
Je suis en train de tester la réplication en mode mirroir entre 2 serveurs OpenLDAP (2.4.23 installé sur une Debian Squeeze).
Tout fonctionne bien quand les 2 serveurs sont lancés : la réplication fonctionne bien.
J'ai un problème par contre lorsque l'un des 2 nœuds est arrêté puis redémarré un peu plus tard, il ne prend pas en compte les modifications apportées pendant son arrêt. Par contre, il prend de nouveau en compte les modifications apportées une fois redémarré.
Par exemple,
Mes 2 noeuds sont en marche : Je créé user1 sur node1 => user1 est visible également sur node2
J'arrête node 2 et je crée user2 sur node1
Je redémarrer node2 => user2 est uniquement présent sur node1
Je crée user3 sur node 1 => il est visible également sur node2
Au bout du compte : node1 comporte user1, user2 et user3
node2 ne comporte que user1 et user3 (mais pas user2)
Si quelqu'un a une idée pour régler ce problème, je lui en serais très reconnaissant .
Merci pour votre aide,
@+
Fred
Voici ce qu'indique les logs de node2 au redémarrage : Si pas de modif sur node1 entre temps :
Code :
- Dec 30 16:25:34 cas2slapd[1838]: @(#) $OpenLDAP: slapd 2.4.23 (Jun 15 2011 13:31:57) $#012#011@incagijs:/home/thijs/debian/p-u/openldap-2.4.23/debian/build/servers/slapdDec 30 16:25:34 cas2slapd[1839]: slapd startingDec 30 16:25:34 cas2slapd[1839]: do_syncrep2: rid=002 LDAP_RES_INTERMEDIATE - REFRESH_DELETEDec 30 16:25:34 cas2slapd[1839]: do_syncrep2: rid=001 LDAP_RES_INTERMEDIATE - REFRESH_DELETEDec 30 16:25:34 cas2slapd[1839]: do_syncrep2: rid=004 LDAP_RES_INTERMEDIATE - REFRESH_DELETEDec 30 16:25:34 cas2 slapd[1839]:do_syncrep2: rid=003 LDAP_RES_INTERMEDIATE - REFRESH_DELETE
|
Si il y a eu des modifs sur node1 :
Code :
- Dec 30 16:25:54 cas2slapd[1866]: @(#) $OpenLDAP: slapd 2.4.23 (Jun 15 2011 13:31:57) $#012#011@incagijs:/home/thijs/debian/p-u/openldap-2.4.23/debian/build/servers/slapdDec 30 16:25:54 cas2slapd[1867]: slapd startingDec 30 16:25:54 cas2slapd[1867]: do_syncrep2: rid=001 LDAP_RES_INTERMEDIATE - REFRESH_DELETEDec 30 16:25:54 cas2slapd[1867]: do_syncrep2: rid=002 LDAP_RES_INTERMEDIATE - REFRESH_DELETEDec 30 16:25:54 cas2slapd[1867]: do_syncrep2: rid=004 LDAP_RES_INTERMEDIATE - REFRESH_DELETEDec 30 16:25:54 cas2slapd[1867]: do_syncrep2: rid=003 LDAP_RES_INTERMEDIATE - REFRESH_DELETEDec 30 16:25:54 cas2slapd[1867]: do_syncrep2: rid=003cookie=rid=003,csn=20111230152551.302647Z#000000#000#000000Dec 30 16:25:54 cas2slapd[1867]: slap_queue_csn: queing 0x7fc34410c53020111230152551.302647Z#000000#000#000000Dec 30 16:25:54 cas2 slapd[1867]:slap_graduate_commit_csn: removing 0x7fc34410c6d020111230152551.302647Z#000000#000#000000Dec 30 16:25:54 cas2slapd[1867]: do_syncrep2: rid=004 LDAP_RES_INTERMEDIATE - NEW_COOKIEDec 30 16:25:54 cas2slapd[1867]: do_syncrep2: rid=004 NEW_COOKIE: rid=004,csn=20111230152551.302647Z#000000#000#000000
|
Il semble donc bien détecter les modifs mais ne les applique pas.
Et voici ma configuration (automatiquement répliquée sur les 2 noeuds):
Code :
- dn: cn=configobjectClass: olcGlobalcn: configolcAllows: bind_v2olcArgsFile: /var/run/slapd/slapd.argsolcLogLevel: anyolcPidFile: /var/run/slapd/slapd.pidolcServerID: 1 ldap://192.168.1.103olcServerID: 2 ldap://192.168.1.104olcSizeLimit: 1000000olcToolThreads: 1 dn: cn=module{0},cn=configobjectClass: olcModuleListcn: module{0}olcModuleLoad: {0}back_hdbolcModuleLoad: {1}syncprovolcModulePath: /usr/lib/ldap dn: olcBackend={0}hdb,cn=configobjectClass: olcBackendConfigolcBackend: {0}hdb dn: olcDatabase={-1}frontend,cn=configobjectClass: olcDatabaseConfigobjectClass: olcFrontendConfigolcDatabase: {-1}frontendolcAccess: {0}to * bydn.exact=gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth manage by * breakolcAccess: {1}to dn.exact="" by * readolcAccess: {2}to dn.base="cn=Subschema" by * readolcSizeLimit: 500 dn: olcDatabase={0}config,cn=configobjectClass: olcDatabaseConfigolcDatabase: {0}configolcAccess: {0}to * bydn.exact="uid=syncrepl,dc=tracteur91,dc=local" read by * breakolcAccess: {1}to * bydn.exact=gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth manage by * breakolcLimits:{0}dn.exact="uid=syncrepl,dc=tracteur91,dc=local" size=unlimitedolcMirrorMode: TRUEolcRootDN: cn=admin,cn=configolcRootPW: {MD5}BkY718PMIcgBNjpfXmGpOA==olcSyncrepl: {0}rid=001provider="ldap://192.168.1.103" searchbase="cn=config" type=refreshAndPersist bindmethod=simplebinddn="uid=syncrepl,dc=tracteur91,dc=local" credentials="Tr@cteur91"retry="30 +" network-timeout=5 timeout=30olcSyncrepl: {1}rid=002provider="ldap://192.168.1.104" searchbase="cn=config" type=refreshAndPersist bindmethod=simplebinddn="uid=syncrepl,dc=tracteur91,dc=local" credentials="Tr@cteur91"retry="30 +" network-timeout=5 timeout=30 dn: olcOverlay={0}syncprov,olcDatabase={0}config,cn=configobjectClass: olcOverlayConfigobjectClass: olcSyncProvConfigolcOverlay: {0}syncprovolcSpCheckpoint: 100 5 dn: olcDatabase={1}hdb,cn=configobjectClass: olcDatabaseConfigobjectClass: olcHdbConfigolcDatabase: {1}hdbolcDbDirectory: /var/lib/ldapolcAccess: {0}to * bydn.exact="uid=syncrepl,dc=tracteur91,dc=local" read by * breakolcAccess: {1}to attrs=userPassword,shadowLastChange by selfwrite by anonymous auth by dn="cn=admin,dc=tracteur91,dc=local"write by * noneolcAccess: {2}to dn.base="" by * readolcAccess: {3}to * by self write bydn="cn=admin,dc=tracteur91,dc=local" write by * readolcDbCheckpoint: 512 30olcDbConfig: {0}set_cachesize 0 2097152 0olcDbConfig: {1}set_lk_max_objects 1500olcDbConfig: {2}set_lk_max_locks 1500olcDbConfig: {3}set_lk_max_lockers 1500olcDbIndex: objectClass eqolcDbIndex: uid eqolcDbIndex: cn eqolcDbIndex: ou eqolcDbIndex: dc eqolcDbIndex: entryCSN eqolcDbIndex: entryUUID eqolcLastMod: TRUEolcLimits: {0}dn.exact="uid=syncrepl,dc=tracteur91,dc=local"size=unlimitedolcMirrorMode: TRUEolcRootDN: cn=admin,dc=tracteur91,dc=localolcRootPW: {SSHA}ZtvvlHUQYloI17cv2/cjPFmx51+Ut/+5olcSuffix: dc=tracteur91,dc=localolcSyncrepl: {0}rid=003provider="ldap://192.168.1.103" searchbase="dc=tracteur91,dc=local" type=refreshAndPersistbindmethod=simple binddn="uid=syncrepl,dc=tracteur91,dc=local"credentials="Tr@cteur91" retry="30 +" network-timeout=5 timeout=30olcSyncrepl: {1}rid=004provider="ldap://192.168.1.104" searchbase="dc=tracteur91,dc=local" type=refreshAndPersistbindmethod=simple binddn="uid=syncrepl,dc=tracteur91,dc=local"credentials="Tr@cteur91" retry="30 +" network-timeout=5 timeout=30 dn: olcOverlay={0}syncprov,olcDatabase={1}hdb,cn=configobjectClass: olcOverlayConfigobjectClass: olcSyncProvConfigolcOverlay: {0}syncprovolcSpCheckpoint: 100 5
|
---------------
http://leblogdundsi.lesprost.fr/
|