[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Problema con replicación OpenLDAP (no funciona "updateref")



El vie, 19-01-2007 a las 01:01 +0100, Iñaki escribió:
> Hola, he montado 2 servidores OpenLDAP y configurado uno como maestro y otro 
> como esclavo.
> 
> La sincronización funciona perfectamente cuando hago algún cambio en el 
> maestro, de tal forma que se propagan los cambios al esclavo y se actualiza.
> 
> Pero trato también de poner el "updateref" en el esclavo para que cuando un 
> cliente intente hacer algún cambio en el esclavo se le redirija al maestro, y 
> no hay forma, he leído bastante sobre ello y repasado unas 20 veces.
> 
> 
> Maestro slapd.conf:
> ---------------------------------------------------------------------
> replogfile	/var/lib/ldap/replog
> 
>   replica           host=192.168.1.1:389
>                         binddn="cn=admin,dc=dominio,dc=net"
>                         credentials=secret
>                         bindmethod=simple
> ---------------------------------------------------------------------
> 
> 
> Esclavo slapd.conf:
> ----------------------------------------------------------------------
>   updatedn      "cn=admin,dc=dominio,dc=net"
>   updateref      ldap://192.168.1.100:389
> ----------------------------------------------------------------------
> 
> (Todo lo demás es idéntico en ambos y lo he comprobado repetidas veces).
> 
> 
> 
> Tengo instalado PhpLdapAdmin en el servidor esclavo, y también tengo 
> configurado una rama del esclavo como agenda de contactos en Kaddressbook con 
> permiso de escritura.
> 
> Pruebo a añadir un contacto en el esclavo desde consola:
> 
> ----------------------------------------------------------------------
> #> ldapadd -H ldap://127.0.0.1 -D "cn=admin,dc=dominio,dc=net" -w secret -x -f 
> file.ldif
> 
> adding new entry "uid=blablabla,ou=addressbook,dc=dominio,dc=net"
> ldap_add: Internal (implementation specific) error (80)
>         additional info: no structuralObjectClass operational attribute
> ----------------------------------------------------------------------
> 
> Exactamente lo mismo me ocurre si trato de añadir un usuario desde 
> PhpLdapAdmin (en el esclavo) o desde Kaddressbook.
> 
> Nota: Este error no aparece si quito la línea "updateref"  en el esclavo.
> Nota 2: Lo más curioso es que NO puedo añadir nuevas entradas en el esclavo 
> (me sale el error de antes) pero SI puedo modificarlas o eliminarlas. ¿?¿?¿
> 
> 
> Veo dos problemas:
> 
> 1º) No se está haciendo el "updateref ldap://192.168.1.100:389"; (en los logs 
> del maestro no veo siquiera intento de conexión). ¿Por qué puede ser? No hay 
> problemas de firewall ni nada así.
> 
> 2º) ¿Qué puede influir que exista o no la línea "updateref" en el esclavo para 
> que me dé error o no al añadir una entrada directamente en el esclavo? o 
> mejor dicho, entiendo que al existir "updateref" tal vez no debería si quiera 
> dejarse editar y debería responder al cliente indicando que haga los cambios 
> en el maestro.
> 
Hola,

	El problema puede ser que el updateref es una respuesta que se da al
cliente ldap que intenta realizar la operación. Es el cliente quién se
tiene que preocupar de hacer la actualización en el otro sitio. No se en
los últimos paquetes que habrán hecho, pero la última vez que miré, el
paquete ldap-utils no soportaba los updateref. Puede ser eso.

-- 
Angel L. Mateo Martínez
Sección de Telemática
Área de Tecnologías de la Información       _o)
y las Comunicaciones Aplicadas (ATICA)      / \\
http://www.um.es/atica                    _(___V
Tfo: 968367590
Fax: 968398337



Reply to: