Configurando a replicação multimaster do openldap usando cn = config

4

Atualmente, temos um único servidor OpenLDAP usando o backend cn=config . Gostaríamos de adicionar um segundo servidor OpenLDAP e configurá-los para replicação multimestre. O que precisamos fazer para

  1. habilitar a replicação no servidor existente e
  2. inicialize o novo servidor com os dados existentes

Até agora, o que fiz (seguindo este guia ) é:

Configuração de sincronização

dn: cn=config
changetype: modify
replace: olcServerID
olcServerID: 1 ldap://foo.example.com
olcServerID: 2 ldap://bar.example.com
-
replace: olcSaslSecProps
olcSaslSecProps: noanonymous

dn: cn=module,cn=config
changetype: modify
olcModuleLoad: syncprov

dn: olcDatabase=config,cn=config
changetype: modify
olcRootDN: cn=admin,cn=config
olcRootPW: abc123
add: olcSyncRepl
olcSyncRepl: rid=001 provider=ldap://foo.example.com bindmethod=simple
  binddn="cn=admin,cn=config" credentials=abc123 searchbase="cn=config" 
  type=refreshAndPersist retry="5 5 300 5" timeout=3
olcSyncRepl: rid=002 provider=ldap://bar.example.com bindmethod=simple 
  binddn="cn=admin,cn=config" credentials=abc123 searchbase="cn=config" 
  type=refreshAndPersist retry="5 5 300 5" timeout=3
-
add: olcMirrorMode
olcMirrorMode: TRUE

dn: olcOverlay=syncprov, olcDatabase=config, cn=config
changetype: add
objectClass: olcOverlayConfig
objectClass: olcSyncProvConfig
olcOverlay: syncprov

Isso fez com que a sincronização da configuração funcionasse nas duas direções.

Sincronizando dados

dn: olcDatabase=bdb,cn=config
changetype: modify
add: olcMirrorMode
olcMirrorMode: TRUE
-
add: olcSyncrepl
olcSyncrepl: rid=001 provider=ldap://foo.example.com searchbase=dc=example,dc=com binddn="uid=ldapsync,ou=Special Accounts,dc=example,dc=com" credentials=xyz123
olcSyncrepl: rid=002 provider=ldap://bar.example.com searchbase=dc=example,dc=com binddn="uid=ldapsync,ou=Special Accounts,dc=example,dc=com" credentials=xyz123

dn: olcOverlay=syncprov, olcDatabase=bdb, cn=config
changetype: add
objectClass: olcOverlayConfig
objectClass: olcSyncProvConfig
olcOverlay: syncprov

Verifiquei que essas alterações foram sincronizadas com o segundo servidor e que o usuário do ldapsync pode autenticar e visualizar todos os dados necessários. No entanto, os dados do bdb não parecem estar sincronizando em nenhuma direção. o que estou perdendo?

    
por Brad Mace 01.07.2013 / 22:45

1 resposta

2

Este tópico me levou à ideia de que a definição olcMirrorMode precisa ser colocado após as linhas olcSyncrepl . Parei os servidores ldap e editei os arquivos oldDatabase ldif manualmente. Isso parece ter obtido a replicação dos dados trabalhando em ambas as direções agora.

    
por 03.07.2013 / 22:52