La methode de replication via slurpd n'est pas la méthode conseillée : on constate de nombreux problemes de synchronisation, il vaut mieux utiliser syncrepl pour la réplication (bientot un article la dessus). Pourquoi cet article alors ? tout simplement que syncrepl ne marche pas avec OpenLDAP 2.3 qui est inclus dans la Debian Etch par exemple
Ebauche d'article : a compléter
L'annuaire a répliquer est situé sur ldap-1.mondomaine.com, et la replication se fait sur ldap-2.mondomaine.com, la racine du LDAP a répliquer est “dc=local”
Il faut maintenant configurer les services slapd et slurpd sur le maître pour que celui ci agisse en tant que tel. Cette configuration se fait dans le fichier /etc/openldap/slapd.conf :
Les directives suivantes sont à ajouter :
La directive replica comprend les arguments host, binddn et bindmethod. Si vous passez une ligne entre les arguments assurez vous qu’il y ai au moins un espace en début de ligne comme dans l'exemple ci dessous.
Il faut donc ajouter dans le fichier slapd.conf :
# Replication configuration (this computer is a slurpd master ) replogfile /var/lib/ldap/replog replica host=ldap-2.mondomaine.com:389 binddn="cn=Replicator,dc=local" bindmethod=simple credentials="MotDePasseEnClair"
Il faut ensuite redémarrer le service pour prendre en compte ces modifications :
/etc/init.d/slapd restart
On va en profiter pour faire un dump du LDAP qui servira plus tard :
/etc/init.d/slapd stop ; slapcat -l /root/maitre.ldif ; /etc/init.d/slapd start
apt-get install slapd
/etc/init.d/slapd stop
mv /etc/ldap /etc/ldap.orig scp -r ldap-1.mondomaine.com:/etc/ldap /etc/ scp ldap-1.mondomaine.com:/root/maitre.ldif /root/
#Replication configuration (this computer is a slurpd slave ) updatedn "cn=Replicator,dc=local" updateref "ldap://ldap-1.mondomaine.com"
access to * by dn="cn=Replicator,dc=local" write by dn="cn=admin,dc=local" write by * read
slapadd -l /root/maitre.ldif
chown -R openldap:openldap /var/lib/ldap/
/etc/init.d/slapd start