Forum Linux.général OpenLDAP -- @(#) $OpenLDAP: slapd 2.4.21 (Dec 19 2011 15:18:58) $

Posté par  (site web personnel) .
Étiquettes :
2
1
sept.
2012

Hello!

Je dois synchroniser deux annuaires LDAP sous OpenLDAP 2.4.x. La stratégie est d'avoir deux maîtres.

Nous nous sommes donc documentés au sujet de syncprov qui remplace l'ancien slurpd.

Le problème est que nous utilisons le "nouveau système" de configuration (slapd.d + cn=config), et que toute la documentation est expliquée avec le fichier slapd.conf sur chaque serveur.

Nous nous posons donc plusieurs questions :
- est-ce une bonne pratique de synchroniser la configuration (cn=config) et si oui, comment faire pour que chaque serveur sache qui il est ??
- nous n'avons pas trouvé l'objectClass olcSyncProvConfig lors de la création de l'overlay

Bref, nous sommes perdus…

Quelqu'un aurait-il quelques pistes pour nous débloquer ? Merci d'avance.. :)

  • # Re

    Posté par  (site web personnel) . Évalué à 2.

    Nous nous posons donc plusieurs questions :
    - est-ce une bonne pratique de synchroniser la configuration (cn=config) et si oui, comment faire pour que chaque serveur sache qui il est ??

    En pratique je dirais non, si la configuration est identique tu ne pourra pas spécifier le "UpdateRef" par exemple.

    Personnellement j'ai tenté de repliquer la configuration de schema uniquement, mais ça bloquait l'ecriture ldap sur la totalité de cn=config donc assez dommage.
    Obliger d'editer les fichiers à la main + redemarrer, ce qui n'est pas tres pratique.

    • nous n'avons pas trouvé l'objectClass olcSyncProvConfig lors de la création de l'overlay

    Extraits de mon ldif d'initialisation des slaves ldap, basé sur une installation debian standard:

    dn: cn=module{0},cn=config
    changetype: modify
    add: olcModuleLoad
    olcModuleLoad: syncprov
    
    dn: olcDatabase={1}hdb,cn=config
    changetype: modify
    add: olcSyncrepl
    olcSyncrepl: rid=002 provider=ldap://ldap.example.net bindmethod=simple timeout=0
      network-timeout=0 binddn="cn=ldap-slave-x,ou=servers,ou=systems,dc=example,dc=net" crede
     ntials="xxxxxxxx" starttls=yes filter="(objectClass=*)" searchbase="dc=example,
     dc=net" scope=sub attrs="*,+" schemachecking=off type=refreshAndPersist retry
     ="60 10 300 +"
    -
    add: olcUpdateRef
    olcUpdateRef: ldap://ldap.example.net/
    
    
    • [^] # Re: Re

      Posté par  (site web personnel) . Évalué à 0. Dernière modification le 05 septembre 2012 à 17:11.

      Si j'ai bien compris donc, tu utilises bien le système de configuration embarqué dans LDAP (cn=config), avec la réplication activée, mais tu ne synchronises pas du tout la partie configuration ?

      Cela me semble plus logique (mis à part pour les schémas).

      Du coup ça pourrait déjà être quelque chose de fonctionnel concernant la mise en place de la réplication.

      Tu n'as que ces entrées pour activer la réplication ? C'est à dire si j'ai bien compris :
      - le chargement du module syncrepl (logique…)
      - la configuration du module (apparemment la définition de l'autre nœud)
      Mais je n'ai pas compris à quoi sert la dernière entrée ?

      Nous aurons sûrement besoin d'adapter cette configuration, car nous souhaitons avoir deux maîtres.

      Si tu as des informations / conseils, je suis preneur. La documentation à ce sujet sur le net n'est pas toujours très claire / à jour.

      • [^] # Re: Re

        Posté par  (site web personnel) . Évalué à 1.

        Mais je n'ai pas compris à quoi sert la dernière entrée ?

        elle sert a dire à un client qui voudrait faire une ecriture sur le slave quel est l'adresse du master pour faire ses écritures,
        et accessoirement le serveur passe en R/O sauf pour le process syncrepl je crois

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.