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

master for one part, slave for another part of the tree



I was wondering if the scenario below is a smart thing to do with openldap:

openldap server, main site, master & slave
+-------------------------------------+
|          dc=domain,dc=com           |slapd.conf:
|           /      \                  |(...)
|          /        \                 |database bdb
|         /          \ slave part     |suffix dc=domain,dc=com
|   ou=people        +-------------+  |(...)
|    - uid=john      | ou=branch1  |  |
|    - uid=martha    |    /        |  |database bdb
|    ...             |   /         |  |suffix ou=branch1,dc=domain,dc=com
|                    | ou=people   |  |uptatedn cn=replicator,ou=branch1,dc=domain,dc=com
|                    | - uid=smith |  |(...)
|                    | - uid=stuart|  |
|                    | ...         |  |
|                    +-------------+  |
+-------------------------------------+
                            \                           \
                             \                          |
                              \  /\ WAN link            |
                               \/  \                    |
                                    \                   |
                                     \                  |
                       openldap, remote site, master    + x 100 times
                       +---------------------------+    |(i.e., 100 remote
                       | ou=people,dc=domain,dc=com|    | sites)
                       | - uid=smith               |    |
                       | - uid=stuart              |    |
                       | ...                       |    |
                       +---------------------------+    /

The thing is, I want the openldap server at the main site to be a master
for a branch of the tree and a slave for another branch. I guess this could
be done with two suffixes/databases, right?

There would be about 100 remote sites, and I need the whole tree available
locally at the main site. First I thought about storing everything in the
main site and using 100 slave servers, one at each remote site, but I'm not 
sure that's feasable. A change in all branches would start 100 slurpd threads
at once. On the other hand, with the above config I would need 100 database/suffix 
entries in slapd.conf. A big change in all branches would update the slave
branch at the main site, but it would be like having 100 clients connecting. I'm
not sure if there's a difference in terms of perfomance.

Any hints are greatly appreciated. Thanks.