[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
slow replication
- To: "openldap-technical@openldap.org" <openldap-technical@openldap.org>
- Subject: slow replication
- From: Meike Stone <meike.stone@googlemail.com>
- Date: Wed, 24 Apr 2013 17:39:43 +0200
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20120113; h=mime-version:x-received:date:message-id:subject:from:to :content-type; bh=ngutndsfysDyrHrD1/cSLCY9XQzuGuC6DzcB1OwxqLU=; b=u3xryq22lphaRIWAhk/g5YxmgPOeNG0ElLMGg1qbIILsW5eHfrSy343l0PY5eLr9fd xRn1JjeYcYnw/eXTTdjZubr0grlJturB+wMwrFNmp5gPCKutoYPqczUhL5JRiKize63A UJvN/bFzX9ZLS1cOycQKAcT6Kkjq+oeZyAxYIS+D3Ihqjwyuh56SxHnQiJ+zbOCbsrAq gdKFGS2SwgXptUViT+EufZg2tFzSCymdINAnd4UI934iv9zTd+K5Io0s7OqJFYE2EvWT mgbxmv4reUS/mggypdupr1n5yKfCtClm+o9FgKV9RggIMzNuRJ7tQE1v9fUO5hJExKN7 4avg==
Hello,
I've a problem with the speed of replication.
I've set up openldap 2.4.33 with a Master and one consumer. At the
moment the full replaction takes abaout 32hours.
No LDAP operations are made on master or consumer during this time.
(I know, i depends on Hardware too, but the two servers are fast )
How long should it need, to replicate a DB from about 6GByte
(id2entry.bdb + dn2id.bdb) with 1.6M DN's and about 66M Attributes.
Replication is configured with RefreshAndPersist, no DeltaSync. Both
servers are on the same IP segment, connected via gigabit ethernet
switch.
I played in test environment with different parameters:
- shm_key
- dbnosync
- switched off all indexes on consumer except entryUUID and entryCSN
- different bdb cachesize
- noatime, relatime
- ext3/xfs
I locked on disk via iostat (nothing seen), no io waits with top,
looked on network, but max 5Mbit/s is used,
I listen with strace on slapd and I see, that slapd is reading from
Network and wrinting it to id2entiry.bdb.
Before each Test, I deleted complete ldap db (except DB_CONFIG) and
shared memory ipcrm -m
Are there similar limitations, that will trigger slow replication like
BDB_IDL_LOGN?
How can I accelerate this Replication.
I'm of the opinion that it was significantly faster with a smaller database.
Thanks and kindly regards Meike
Configuration:
--------------------
Configuration is only a test configuration, some values differs,
some are commented out because of playing with them.
# Master (Provider)
==========================================================
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/yast.schema
include /etc/openldap/schema/rfc2307bis.schema
pidfile /var/run/slapd/slapd.pid
argsfile /var/run/slapd/slapd.args
modulepath /usr/lib/ldap
moduleload back_bdb
moduleload syncprov
sizelimit -1
timelimit 300
tool-threads 8
threads 8
serverID 001
########################################
database bdb
suffix "ou=root"
rootdn "cn=admin,ou=root"
#loglevel stats sync
loglevel 0
rootpw <password>
directory /DATA/ldap
#cachesize 500000
#dncachesize 500000
#idlcachesize 150000
cachefree 500
dirtyread
dbnosync
shm_key 7
checkpoint 4096 15
index objectClass,entryUUID,entryCSN eq
index cn eq,sub
index ownattributes ....
overlay syncprov
syncprov-checkpoint 100 5
# Consumer
==========================================================
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/yast.schema
include /etc/openldap/schema/rfc2307bis.schema
pidfile /var/run/slapd/slapd.pid
argsfile /var/run/slapd/slapd.args
modulepath /usr/lib/ldap
moduleload back_bdb
moduleload syncprov
sizelimit -1
timelimit 300
serverID 002
#loglevel stats sync
loglevel 0
########################################
database bdb
suffix "ou=root"
rootdn "cn=admin,ou=root"
checkpoint 4096 15
rootpw <password>
directory /DATA/ldap
dbnosync
shm_key 7
checkpoint 4096 15
#cachesize 100000
#dncachesize 100000
#idlcachesize 150000
#cachefree 500
#dirtyread
syncrepl rid=020
provider=ldap://192.168.1.10
type=refreshAndPersist
retry="5 5 300 +"
searchbase="ou=root"
attrs="*,+"
bindmethod=simple
binddn="cn=admin,ou=root"
credentials=<password>
index entryUUID,entryCSN eq
#index cn eq,sub
mirrormode FALSE