Thank you so much for everyone's help.

The fix for issue "read_config: no serverID / URL match found. Check slapd -h arguments" is the port number used in -h option.
Fixed: slapd -d -1 -h "ldap://apggd04dev.pg.dtveng.net"
Error: slapd -d -1 -h "ldap://apggd04dev.pg.dtveng.net:389"

Have a great day!
Joe


From: Brendan Kearney <bpk678@gmail.com>
To: Joe Phan <joeanhphan@yahoo.com>
Cc: OpenLDAP Forum <openldap-technical@openldap.org>
Sent: Thursday, April 18, 2013 6:27 PM
Subject: Re: slapd terminates with error "read_config: no serverID / URL match found. Check slapd -h arguments"

Oh, forgot to mention...  if you dont already have it setup, you need an
olcRootDN and olcRootPW in the config database that matches the binddn
and credentials directives for olcSyncRepl.  i happen to use cn=config
for the config database, and cn=Manager,dc=bpk2,dc=com for the DIT
binddn's.  credentials should be the password used for auth.  the
password can be different for the config database vs the DIT, but within
each they should match.

On Thu, 2013-04-18 at 21:10 -0400, Brendan Kearney wrote:
> i dont think you are loading the module correctly.  adjust the
> olcModulePath to your needs:
>
> dn: cn=module,cn=config
> changetype:add
> objectClass: olcModuleList
> cn: module
> olcModulePath: /usr/lib64/openldap
> olcModuleLoad: syncprov.la
>
> what i have used to get my n-way working for cn=config, adjust to your
> needs:
>
> dn: olcOverlay=syncprov,olcDatabase={0}config,cn=config
> changetype: add
> objectClass: olcOverlayConfig
> objectClass: olcSyncProvConfig
> olcOverlay: syncprov
>
> dn: olcDatabase={0}config,cn=config
> changetype: modify
> add: olcSyncRepl
> olcSyncRepl: rid=001 provider=ldap://ldap1.bpk2.com binddn="cn=config"
> bindmethod=simple credentials=secret searchbase="cn=config"
> type=refreshAndPersist retry="5 5 300 5" timeout=1
> olcSyncRepl: rid=002 provider=ldap://ldap2.bpk2.com binddn="cn=config"
> bindmethod=simple credentials=secret searchbase="cn=config"
> type=refreshAndPersist retry="5 5 300 5" timeout=1
> -
> add: olcMirrorMode
> olcMirrorMode: TRUE
>
> then for the DIT itself, adjust to your needs:
>
> dn: olcDatabase={2}hdb,cn=config
> changetype: modify
> add: olcLimits
> olcLimits: dn.exact="cn=Manager,dc=bpk2,dc=com" time.soft=unlimited
> time.hard=unlimited size.soft=unlimited size.hard=unlimited
> -
> add: olcSyncRepl
> olcSyncRepl: rid=001 provider=ldap://ldap1.bpk2.com
> binddn="cn=Manager,dc=bpk2,dc=com" bindmethod=simple credentials=secret
> searchbase="dc=bpk2,dc=com" scope=sub schemachecking=off
> type=refreshAndPersist interval=00:00:00:10 retry="5 5 300 5" timeout=1
> olcSyncRepl: rid=002 provider=ldap://ldap2.bpk2.com
> binddn="cn=Manager,dc=bpk2,dc=com" bindmethod=simple credentials=secret
> searchbase="dc=bpk2,dc=com" scope=sub schemachecking=off
> type=refreshAndPersist interval=00:00:00:10 retry="5 5 300 5" timeout=1
> -
> add: olcMirrorMode
> olcMirrorMode: TRUE
> -
> dn: olcOverlay=syncprov,olcDatabase={2}hdb,cn=config
> changetype: add
> objectClass: olcOverlayConfig
> objectClass: olcSyncProvConfig
> olcOverlay: syncprov
>
> you should turn up the sync log level to make sure you see the
> replication logs, too.  it has helped me.  i only turned on sync, you
> might want stats, stats2, etc:
>
> dn: cn=config
> changetype: modify
> replace: olcLogLevel
> olcLogLevel: sync
>
> hope that helps.
>
> On Thu, 2013-04-18 at 17:26 -0700, Joe Phan wrote:
> > Hi,
> >
> >
> > When I configure N-Way Multi-Master configuration with cn=config,
> > slapd terminates with the error: "module syncprov.la: null module
> > registered" and "read_config: no serverID / URL match found. Check
> > slapd -h arguments".
> > olcServerID IDs are already added and configured properly, but when
> > slapd starts with -h option, it always fails.
> >
> >
> > Please help if someone has gone through a similar issue.
> > Thanks,
> > Joe
> >
> >
> > Reference, Step 3-4:
> > http://niranjanmr.wordpress.com/2012/03/29/n-waymmr/
> > Is there an equivalent /etc/sysconfig/ldap file in Solaris 10?
> >
> >
> >
> > Platform: Sun Solaris10
> > OpenLDAP: openldap-2.4.32
> >
> >
> > Configuring for N-Way Multi-Master: adding olcServerID, olcOverlay:
> > syncprov, and olcSyncRepl:
> > apggd04dev# more config_repl.ldif
> > #Specify ServerID for both the masters
> > dn: cn=config
> > changetype: modify
> > add: olcServerID
> > olcServerID: 101 ldap://apggd06dev.pg.dtveng.net
> > olcServerID: 201 ldap://apggd04dev.pg.dtveng.net
> >
> > #Enable Syncprov Overlay for config database
> > dn: olcOverlay=syncprov,olcDatabase={0}config,cn=config
> > changetype: add
> > objectclass: olcOverlayConfig
> > objectclass: olcSyncProvConfig
> > olcOverlay: syncprov
> >
> > #Configure SyncRepl for config database
> > dn: olcDatabase={0}config,cn=config
> > changetype: modify
> > add: olcSyncRepl
> > olcSyncRepl: rid=001 provider=ldap://apggd06dev.pg.dtveng.net
> > binddn="cn=config" bindmethod=simple
> >  credentials=secret searchbase="cn=config" type=refreshAndPersist
> > retry="5 5 300 5" timeout=1
> > olcSyncRepl: rid=002 provider=ldap://apggd04dev.pg.dtveng.net
> > binddn="cn=config" bindmethod=simple
> >  credentials=secret searchbase="cn=config" type=refreshAndPersist
> > retry="5 5 300 5" timeout=1
> > -
> > add: olcMirrorMode
> > olcMirrorMode: TRUE
> >
> >
> >
> > apggd04dev# ldapmodify -x -D "cn=config" -w secret -f config_repl.ldif
> > -h apggd04dev.pg.dtveng.net  <== olcServerID IDs are already added
> > successfully to dn: cn=config.
> > modifying entry "cn=config"
> > adding new entry "olcOverlay=syncprov,olcDatabase={0}config,cn=config"
> > modifying entry "olcDatabase={0}config,cn=config"
> >
> >
> >
> > Restart slapd with -h option:
> > ====================
> > apggd04dev# /usr/local/libexec/slapd -d -1 -h
> > ldap://apggd04dev.pg.dtveng.net:389
> >
> > entryUUID: 05897b3c-3bd8-1032-8598-57af23b0cca0
> > creatorsName: cn=config
> > createTimestamp: 20130417182610Z
> > olcServerID: 101 ldap://apggd06dev.pg.dtveng.net
> > <=== olcServerID IDs are successfully loaded
> > olcServerID: 201 ldap://apggd04dev.pg.dtveng.net
> > <=== olcServerID IDs are successfully loaded
> > entryCSN: 20130418183118.510871Z#000000#000#000000
> > modifiersName: cn=config
> > modifyTimestamp: 20130418183118Z
> > contextCSN: 20130418183118.573577Z#000000#000#000000
> >
> > ...
> > olcModuleLoad: {0}syncprov.la
> > 51705faf loaded module syncprov.la
> > 51705faf module syncprov.la: null module registered
> > <=== ERROR for syncprov.la module
> > ...
> >
> > olcSyncrepl: {0}rid=001 provider=ldap://apggd06dev.pg.dtveng.net
> > binddn="cn=co    <=== olcSyncrepl is successfully loaded
> >  nfig" bindmethod=simple credentials=secret searchbase="cn=config"
> > type=refres
> >  hAndPersist retry="5 5 300 5" timeout=1
> > olcSyncrepl: {1}rid=002 provider=ldap://apggd04dev.pg.dtveng.net
> > binddn="cn=co
> >  nfig" bindmethod=simple credentials=secret searchbase="cn=config"
> > type=refres
> >  hAndPersist retry="5 5 300 5" timeout=1
> > olcMirrorMode: TRUE
> > ...
> > 5170847e index objectClass 0x0004
> > 5170847e index entryUUID 0x0006
> > 5170847e index entryCSN 0x0006
> > 5170847e send_ldap_result: conn=-1 op=0 p=0
> > 5170847e send_ldap_result: err=0 matched="" text=""
> > 5170655f read_config: no serverID / URL match found. Check slapd -h
> > arguments.        <=== ERROR for serverID
> > 5170655f slapd destroy: freeing system resources.
> > 5170655f syncinfo_free: rid=001
> > 5170655f slapd stopped.
> > <=== slapd terminates
> > 5170655f connections_destroy: nothing to destroy.
> >
> >
> >
>
>