On 11-06-07 3:37 PM, Howard Chu wrote:
Daniel Qian wrote:
On 11-06-07 1:40 PM, Aaron Richton wrote:
On Tue, 7 Jun 2011, Daniel Qian wrote:
Can anyone point out to me how I can add the module required to do replication on the provider side? I will make a document if I am able to set it up eventually.
You can find examples of using olcModuleLoad to instruct back-config to load the module in the OpenLDAP 2.4 Administrator's Guide. While the directive is not overlay-specific, there is an example that uses syncprov in section 18.3.3, as well as code examples in the "tests" directory.
If you're writing a document, it might be good to write back-config examples suitable for some other section(s) of the Admin Guide (perhaps, if you don't choose n-way multimaster, you can contribute whatever you use for your installation)?
I think I know what I need to get done based on the info I gathered on some Ubuntu websites. I just have no idea how those settings fit into Redhat layout. Correct me if I am wrong. Basically I need to load the module with something like this :
dn: cn=module{0},cn=config objectClass: olcModuleList cn: module{0} olcModuleLoad: {0}back_bdb *olcModuleLoad*: {1}*syncprov* olcModulePath: /usr/lib64/openldap
and then use the overlay with something like this:
dn: olcOverlay={0}syncprov,*olcDatabase={1}bdb,cn=config* objectClass: olcOverlayConfig objectClass: olcConfig objectClass: top objectClass: olcSyncProvConfig olcOverlay: {0}syncprov olcSpCheckpoint: 100 10 olcSpSessionlog: 100
But the question is in what files/folders I should put these settings? Fedora has a few database ldif files whose settings get loaded into openldap upon restart. Can I do the same with these settings as well?
On Ubuntu you would leave slapd running and just do this (as root):
# ldapmodify -H ldapi:// -Y EXTERNAL <<EOF dn: cn=module{0},cn=config changetype: modify add: olcModuleLoad olcModuleLoad: syncprov.la
dn: olcOverlay=syncprov,olcDatabase={1}bdb,cn=config changetype: add objectClass: olcSyncProvConfig olcOverlay: {0}syncprov olcSpCheckpoint: 100 10 olcSpSessionlog: 100
EOF
Looks like I don't even have a module{0} in my setup. Here is all the DNs from " ldapsearch -LLL -b cn=config -D cn=admin,cn=config -W dn"
dn: cn=config dn: cn=schema,cn=config dn: cn={0}corba,cn=schema,cn=config dn: cn={1}core,cn=schema,cn=config dn: cn={2}cosine,cn=schema,cn=config dn: cn={3}duaconf,cn=schema,cn=config dn: cn={4}dyngroup,cn=schema,cn=config dn: cn={5}inetorgperson,cn=schema,cn=config dn: cn={6}java,cn=schema,cn=config dn: cn={7}misc,cn=schema,cn=config dn: cn={8}nis,cn=schema,cn=config dn: cn={9}openldap,cn=schema,cn=config dn: cn={10}ppolicy,cn=schema,cn=config dn: cn={11}collective,cn=schema,cn=config dn: olcDatabase={-1}frontend,cn=config dn: olcDatabase={0}config,cn=config dn: olcDatabase={1}bdb,cn=config dn: olcDatabase={2}monitor,cn=config
Thanks, Daniel