JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Oracle Fusion Middleware Deployment Planning Guide for Oracle Unified Directory 11g Release 1 (11.1.1)
search filter icon
search icon

Document Information

Preface

1.  Overview of Oracle Unified Directory

2.  Overview of the Directory Server

3.  Overview of the Proxy Server

4.  Overview of the Replication Gateway

5.  Building Blocks of the Proxy Server

6.  Example Deployments Using the Directory Server

7.  Example Deployments Using the Proxy Server

8.  Simple Proxy Deployments Using the Command Line Interface

Configuring Load Balancing With the Command Line Interface

To Configure Simple Load Balancing

Configuring Distribution With the Command Line Interface

To Configure Simple Distribution

Configuring Distribution and Load Balancing

To Configure Distribution with Load Balancing

9.  Deploying Advanced Proxy Architectures

Configuring Distribution and Load Balancing

This use case combines distribution with load balancing. As for all distribution deployments, you can add a global index, however, this is not included here. For information on creating a global index, see Configuring Global Indexes By Using the Command Line in Oracle Fusion Middleware Administration Guide for Oracle Unified Directory.

The following figure illustrates all the objects that need to be created to deploy a Oracle Unified Directory proxy using distribution with load balancing. The objects must be created in the order indicated.

This figure shows all the elements created using the CLI to generate a deployment using distribution with load balancing.

The following example presents a deployment with distribution over two partitions, with each partition load balanced onto two replicated LDAP servers. The distribution algorithm used to partition the data is numeric.

All the commands in this procedure specify the proxy hostname (-h), the proxy admin port (-p), the bind DN for the initial root user (-D) and the proxy password you want to configure (-w). You must also indicate the authentication; if none is indicated and the client and the server are running in the same instance, the local authentication configuration is used.

To Configure Distribution with Load Balancing

  1. Create the proxy LDAP server extensions:
    $ dsconfig -p 4444 -h localhost -D"cn=Directory Manager" -w password \
    create-extension \
    --extension-name proxy_extension1 \
    --type ldap-server \
    --set enabled:true \
    --set remote-ldap-server-address:DS1_hostname \
    --set remote-ldap-server-port:2389

    The LDAP server extension is a link to the remote LDAP server. For this use case, you will need four remote LDAP server instances. Go through this step once for each remote LDAP server, making sure to use a different LDAP hostname and port.

  2. Create a proxy workflow element for each LDAP server extension:
    $ dsconfig -p 4444 -h localhost -D"cn=Directory Manager" -w password \
    create-workflow-element \
    --element-name proxy-we1 \
    --type proxy-ldap\ 
    --set enabled:true \
    --set client-cred-mode:use-client-identity \
    --set ldap-server-extension:proxy_extension1

    For this use case, you will need four remote LDAP server instances. Go through this step once for each remote. The LDAP server extension name should be the same as those created in step 1.

    The property client-cred-mode indicates the type of authentication used between the proxy and remote LDAP server. The client credential mode can be: use-client-identity, use-specific-identity, or use-proxy-auth.

  3. Create a load balancing workflow element:
    $ dsconfig -p 4444 -h localhost -D"cn=Directory Manager" -w password \
    create-workflow-element \
    --element-name LB-we1 \
    --type load-balancing \
    --set enabled:true

    You only need one load balancing workflow element to route requests to either of the two remote LDAP servers. In this use case, since you are using two load balancers, you will need to create two load balancing workflow elements.

  4. Define the load balancing algorithm:
    $ dsconfig -p 4444 -h localhost -D"cn=Directory Manager" -w password \
    create-load-balancing-algorithm \
    --element-name LB-we1 \
    --type failover

    The type of load balancing algorithm can be proportional, optimal, saturation, searchfilter, or failover. The properties of the load balancing algorithm (weight, threshold, or priority) are defined with the load balancing routes, in the next step. For this use case, you will need two load balancing algorithms.

  5. Define the load balancing routes for each proxy:
    $ dsconfig -p 4444 -h localhost -D"cn=Directory Manager" -w password \
    create-load-balancing-route \
    --element-name LB-we1 \
    --route-name LB-route1 \
    --type failover \
    --set workflow-element:proxy-we1 \
    --set add-priority:1 \
    --set bind-priority:1 \
    --set compare-priority:1 \
    --set delete-priority:1 \
    --set extended-priority:1 \
    --set modify-priority:1 \
    --set modifydn-priority:1 \
    --set search-priority:1 

    For this use case, you will need four load balancing routes. Set two routes per load balancing workflow element (created in the previous step); for example, one route with priority 1 for all operations and the other route with priority 2 for all operations.


    Note - The properties in the example above set the priority for failover load balancing. If you use proportional or saturation load balancing, the properties will differ. For more information on the setting different load balancing types, see Modifying Load Balancing Properties in Oracle Fusion Middleware Administration Guide for Oracle Unified Directory.


  6. Set up distribution by creating a distribution workflow element:
    $ dsconfig -p 4444 -h localhost -D"cn=Directory Manager" -w password \
    create-workflow-element \
    --element-name distrib-we \
    --type distribution \ 
    --set base-dn:dc=example,dc=com \
    --set enabled:true 

    For this use case, you will need only one distribution workflow element, which will point to the distribution algorithm.

  7. Set the distribution algorithm:
    $ dsconfig -p 4444 -h localhost -D"cn=Directory Manager" -w password \
    create-distribution-algorithm \
    --element-name distrib-we \
    --type numeric \ 
    --set distribution-attribute:uid

    The type of distribution algorithm can be capacity, numeric, lexico, or dnpattern. The boundaries are defined when you create the distribution partitions, in the next step.

  8. Define the distribution partitions:
    $ dsconfig -p 4444 -h localhost -D"cn=Directory Manager" -w password \
    create-distribution-partition \
    --element-name distrib-we \
    --partition-name distrib-part1\
    --type numeric \ 
    --set lower-bound:0 \
    --set upper-bound:1000 \
    --set partition-id:1 \
    --set workflow-element:LB-we1

    For this use case, you will need to create two partitions. Make sure that the partition ID and the partition name are unique for each workflow element, and that each partition uses a different load balancing workflow element. You must specify the same type when defining the routes as you did when defining the load balancing algorithm.


    Note - The upper boundary indicated is exclusive. This means that if you indicate 1000 as the upper boundary, the partition will only include values from 0 to 999, inclusive.


  9. (Optional) If you created a capacity algorithm, you must create a global index:

    For lexico, numeric, and dnpattern, a global index is optional.

    1. Create a global index catalog:
      $ gicadm -p 4444 -h localhost -D"cn=Directory Manager" -w password \
      create-catalog \
      --catalogName gi-catalog
    2. Add a global index which indexes the dn attribute to the catalog:
      $ gicadm -p 4444 -h localhost -D"cn=Directory Manager" -w password \
      add-index \
      --catalogName gi-catalog \
      --attributeName dn 
    3. Associate the global index catalog to the distribution:
      $ gicadm -p 4444 -h localhost -D"cn=Directory Manager" -w password \
      associate \
      --catalogName gi-catalog \
      --distributionWorkflowElement distrib-we
  10. Create a workflow:

    This workflow associates the distribution workflow element with the base DN.

    $ dsconfig -p 4444 -h localhost -D"cn=Directory Manager" -w password \
    create-workflow \
    --workflow-name workflow \
    --set enabled:true \
    --set base-dn:dc=example,dc=com \
    --set workflow-element:distrib-we
  11. Create the network group:

    The network group handles all the requests between the client and the proxy.

    $ dsconfig -p 4444 -h localhost -D"cn=Directory Manager" -w password \
    create-network-group \
    --group-name network-group1 \
    --set enabled:true \
    --set workflow:workflow \
    --set priority:1