[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: syncrepl w/ 2.3 and bdb 4.3 working great



> I was having problem with syncrepl ( 2.3 and bdb 4.3 ).  some of the
> entries didn't go to the slave and sometimes, old entries were gone too..
>
> do you mind share your configuration ( both master and slave )?
>

Sure thing.  I'll be doing some heavier testing in a week, so I'll let
everyone know if I see any similar results.  I'm also going to try larger
datasets to see if problems start showing up in the 2 million entries
range as suggested by Quanah and start doing modifies as well.  Although
my dataset personally will probably never get that high.

Both the master and the two slaves are running on Dell PowerEdge 1850's.
They have 2 2.8G Xeon CPUs and 2G RAM.  They have two scsi disks running
raid1.  They are all running FreeBSD 5.4, with SMP enabled in the kernel.
Both BerkeleyDB and Openldap are built from source.  Openldap is
RELENG_2_3 from CVS on 8/11.

The RADIUS schema is taken from the FreeRadius project and slightly
modified, which explains some of the attributes I'm indexing. The .lab TLD
is just one I setup in our lab nameservers.

slapd.conf (master)

include         /usr/local/openldap23/etc/openldap/schema/core.schema
include         /usr/local/openldap23/etc/openldap/schema/RADIUS-LDAPv3.schema

#referral       ldap://root.openldap.org
pidfile         /usr/local/openldap23/var/run/slapd.pid
argsfile        /usr/local/openldap23/var/run/slapd.args
loglevel        256

database        hdb
suffix          "dc=mydomain,dc=net"
rootdn          "cn=root,dc=mydomain,dc=net"
rootpw          secret
directory       /usr/local/openldap23/var/openldap-data
# Indices to maintain
index   objectClass     eq
index   uid             eq
index   radiusGroupName eq
index   accountNumber   eq
index   entryUUID       eq
index   entryCSN        eq

limits dn.exact="cn=slave,ou=admins,dc=mydomain,dc=net" size=unlimited
time=unlimited

cachesize       100000
idlcachesize    300000
checkpoint      1024 5

overlay syncprov
syncprov-checkpoint     100 10
syncprov-sessionlog     1000

access to dn.sub="dc=mydomain,dc=net"
        by dn.exact="cn=billing,ou=admins,dc=mydomain,dc=net" write
        by dn.exact="cn=slave,ou=admins,dc=mydomain,dc=net" read
        by self read
        by anonymous auth
        by * none

database        monitor
access to dn.sub="cn=monitor"
        by dn.exact="cn=monitor,ou=admins,dc=mydomain,dc=net" read
        by * none



slapd.conf (slave)

include         /usr/local/openldap23/etc/openldap/schema/core.schema
include         /usr/local/openldap23/etc/openldap/schema/RADIUS-LDAPv3.schema

#referral       ldap://root.openldap.org
pidfile         /usr/local/openldap23/var/run/slapd.pid
argsfile        /usr/local/openldap23/var/run/slapd.args
loglevel        256

database        hdb
suffix          "dc=mydomain,dc=net"
rootdn          "cn=root,dc=mydomain,dc=net"
rootpw          secret
directory       /usr/local/openldap23/var/openldap-data
# Indices to maintain
index   objectClass     eq
index   uid             eq
index   radiusGroupName eq
index   accountNumber   eq
index   entryUUID       eq
index   entryCSN        eq

cachesize       100000
idlcachesize    300000
checkpoint      1024 5

syncrepl rid=1
        provider=ldap://ldapm.lab:389
        type=refreshAndPersist
        retry="60 30 300 +"
        searchbase="dc=mydomain,dc=net"
        filter="(objectclass=*)"
        scope=sub
        attrs=*
        sizelimit=none
        timelimit=none
        schemachecking=on
        bindmethod=simple
        binddn="cn=slave,ou=admins,dc=mydomain,dc=net"
        credentials="slave"

updateref       ldap://ldapm.lab

access to dn.sub="dc=mydomain,dc=net"
        by dn.exact="cn=slave,ou=admins,dc=mydomain,dc=net" write
        by self read
        by anonymous auth
        by * none

database        monitor
access to dn.sub="cn=monitor"
        by dn.exact="cn=monitor,ou=admins,dc=mydomain,dc=net" read
        by * none


--------

I uncomment DB_TXT_NOSYNC when doing the original slapadd - then comment
it back when I start for the first time.  This causes slapd to run
db_recover automatically to update the BDB environment and re-enable
logging.

DB_CONFIG (all servers)
set_cachesize 0 536870912 1
set_lg_regionmax 1048576
set_lg_bsize 2097152
set_lg_max 10485760
set_flags DB_LOG_AUTOREMOVE
#set_flags DB_TXN_NOSYNC