4. Replication with slurpd

El acrónimo slurpd significa: Standalone LDAP Update Replication Daemon y su misión es propagar los cambios de una base de datos slapd hacia otra. Si slapd está configurado para producir logs de replicación, slurpd los lee y envía los cambios a las instancias slapd esclavas a través del protocolo LDAP. slurpd se arranca, normalmente, en el arranque del sistema.

Una vez arrancado, slurpd normalmente hace un fork de si mismo y se independiza de la tty que lo ha llamado, luego lee el log de replicación (dado bien por la directiva replogfile del archivo de configuración de slapd, bien por la opción -r de la línea de comandos). Si el archivo log de replicación no existe o está vacío, slurpd se duerme. Después, cada cierto tiempo, se despierta y verifica si hay cambios que propagar.

Cuando slurpd encuentra cambios a propagar hacia las instancias slapd esclavas, bloquea el log de replicación, hace una copia privada del mismo, libera el bloqueo anteriormente puesto y crea un fork de si mismo para réplica de slapd que ha de ser actualizada. Cada proceso hijo se asocia con el demonio slapd esclavo, y envía los cambios.

Un ejemplo de replicación podría ser: