6 Managing Discoverer in a Multi-Machine or Multi-Instance Environment

This chapter applies to Discoverer Plus, Discoverer Viewer, Discoverer Portlet Provider, and Discoverer Web Services. For information about configuring Discoverer Plus OLAP, see Chapter 5, "Configuring the Discoverer Catalog and Discoverer Plus OLAP".

This chapter explains how to configure Oracle BI Discoverer in a multiple-machine or multiple-instance environment, and contains the following topics:

Before you can deploy Discoverer on multiple machines or multiple instances, you need a basic understanding of Discoverer installations and topologies.

If you are familiar with Discoverer topologies, then go directly to Section 6.3, "What are the prerequisites for using Oracle Web Cache to provide load balancing for Oracle BI Discoverer?"

For information about Discoverer installations, see Section 1.3, "About Oracle BI Discoverer installations."

6.1 About Discoverer topologies

This section provides general information about Discoverer topologies and contains the following topics:

6.1.1 Discoverer topology with a single instance

When you install Discoverer, you create a Discoverer topology within a single instance, as shown in Figure 6-1. After installation, you can configure other types of topologies for Discoverer.

If Oracle Web Cache is present then it communicates with the Oracle HTTP Server, which handles requests from Web browsers. The Oracle HTTP Server communicates with the WebLogic Managed Server, WLS_DISCO. The Discoverer Java EE application is deployed to WLS_DISCO. The WLS_DISCO component is related to the Oracle Internet Directory and the Discoverer schemas (for installations that are not standalone). The WLS_DISCO component communicates with the Preference Server, which stores and maintains Discoverer preferences.

Figure 6-1 Discoverer topology for a single instance

Description of Figure 6-1 follows
Description of "Figure 6-1 Discoverer topology for a single instance"

6.1.2 Discoverer topology with multiple instances

You can create a Discoverer topology with multiple instances, in which all instances communicate with a single Preference Server in one of the instances, as shown in Figure 6-2.

In a multiple-instance environment, during installation, you must add managed servers for each Discoverer instance using the Expand Cluster option. All managed servers where Discoverer applications are deployed must be in the same cluster. For more information about installation, see Oracle Fusion Middleware Installation Guide for Oracle Portal, Forms, Reports and Discoverer.

The topology in Figure 6-2 includes two instances in one cluster. For load balancing between multiple instances, either all or none of the instances must be associated with the Oracle Internet Directory and the Discoverer schemas. The managed server component in each instance communicates with the single Preference Server. Therefore, the same set of preferences are applied to the Discoverer component in each instance. The instances can exist on the same machine or on two different machines.

For more information about WebLogic Server clusters, see Oracle Fusion Middleware Using Clusters for Oracle WebLogic Server.

Figure 6-2 Discoverer topology for a multiple-instance environment

Description of Figure 6-2 follows
Description of "Figure 6-2 Discoverer topology for a multiple-instance environment"

6.2 About Discoverer topologies in a multiple-machine or multiple-instance environment

A multiple-machine Discoverer environment is a deployment that contains two or more machines running a Discoverer installation.

A multiple-instance Discoverer environment is a deployment that contains two or more instances on one or more machines running a Discoverer installation.

6.2.1 About providing load balancing

A typical multiple-machine Discoverer environment uses a standard commercial hardware router to distribute Discoverer Web traffic to multiple Discoverer middle tier machines. This is commonly known as load balancing.

However, you can also provide load balancing using Oracle Web Cache as a proxy server to distribute Discoverer Web traffic to instances on the same machine or on other Discoverer middle tier machines. Load balancing improves Discoverer's performance, scalability, and availability.

For example, consider the topology in Figure 6-2. In that environment, requests are sent from a Web browser that is running a Discoverer client application to Oracle Web Cache. Oracle Web Cache can distribute the requests to the Oracle HTTP Servers in each of the two instances. Those two instances can be running either on the same machine or on two different machines. In other words, you can have a single Discoverer URL for multiple Discoverer middle tier instances.

For more information about using Oracle Web Cache to load balance, see Section 6.5.1, "How to configure Oracle Web Cache for load balancing".

Notes

  • You can also use the following types of multiple-machine and multiple-instance environments:

    • Software load balancer with high availability: This configuration provides load balancing with additional support for failure detection and failover of Oracle Web Cache servers. For more information about implementing high availability, see Oracle Fusion Middleware Administrator's Guide for Oracle Web Cache.

    • Non-load balanced: This configuration is essentially several unconnected Discoverer middle-tier machines that operate independently. In other words, you have a different Discoverer URL for each machine. When you deploy Discoverer, you cannot configure components separately (Discoverer Plus, Viewer, and Portlet Provider). You must configure all the components, but you can choose to disable certain components. For example, you might enable Discoverer Plus only on one machine and Discoverer Viewer only on another machine.

    • Hardware load balancer: This configuration distributes Discoverer Web traffic to multiple Discoverer middle tier machines.

  • When you configure Discoverer across multiple machines or multiple instances with load balancing, you also provide load balancing for other Oracle Fusion Middleware components on those machines or instances. For example, you can also configure Oracle Portal with load balancing.

  • To provide a consistent Discoverer interface to end users, when you configure Discoverer across multiple machines or multiple instances with load balancing, ensure that each machine has the same configuration settings (for example, user interface customizations and timeouts).

6.2.2 About using Fusion Middleware Control to manage multiple machines

When you install Discoverer on more than one machine, you can link instances together in a domain.

Consider a scenario in which you have installed the following:

  • Oracle Internet Directory, and the PStore and Portlet Provider database schemas on host 1 (for example, in d:\classicdisc1\asinst_disc18)

  • Standalone installation on host 1 (for example, in d:\classicdisc1\asinst_19)

  • Oracle Internet Directory and the PStore and Portlet Provider database schemas on host 2 (for example, in d:\classicdisc2\asinst_19a)

You can manage the above scenario by using Fusion Middleware Control. Each machine would be represented as an instance in Fusion Middleware Control, displayed in the WebLogic Domain folder.

Surrounding text describes cluster2.gif.

Notes

6.3 What are the prerequisites for using Oracle Web Cache to provide load balancing for Oracle BI Discoverer?

Before you can configure Oracle BI Discoverer for load balancing using Oracle Web Cache, you must have the following installed:

  • Two or more Discoverer installations on multiple machines or in multiple instances

  • Oracle Web Cache installed in at least one instance

    Note: Oracle Web Cache is included in both a Discoverer installation and an Oracle Java EE and Web Cache type installation.

Notes

  • Include the Discoverer installations to load balance in the same domain.

  • When load balancing between multiple installations, either all or none of the installations must be associated with the Oracle Internet Directory. Also note that multiple installations can be on the same machine or on different machines.

6.4 About using Oracle Web Cache to configure load balancing for Discoverer

You can use Oracle Web Cache to configure load balancing for Oracle BI Discoverer across multiple machines.

Configuring Oracle Web Cache for load balancing involves the following tasks:

  • Choose which machine you want to specify as the proxy machine and start Oracle Web Cache on that machine.

  • Define the Oracle BI Discoverer middle-tier machines to use to provide load balancing (using the Origin Servers page in Oracle Web Cache).

  • Define the load balancing relationship between Oracle Web Cache and the Oracle BI Discoverer installations (using the Sites page in Oracle Web Cache).

  • Enable the Default Session Binding option (using the Session Configuration page in Oracle Web Cache).

  • Restart Oracle Web Cache (using the Cache Operations page in Oracle Web Cache).

For more information about using Oracle Web Cache to provide load balancing with Oracle BI Discoverer, see Section 6.5.1, "How to configure Oracle Web Cache for load balancing".

6.5 How to configure Discoverer with load balancing using Oracle Web Cache

You configure Oracle BI Discoverer with load balancing to increase the number of supported Discoverer end users and improve Discoverer performance.

To configure Oracle BI Discoverer with load balancing using Oracle Web Cache, do the following:

  1. If you have not created an Oracle Farm, use Fusion Middleware Control to create a farm (for more information, see Fusion Middleware Control Help).

  2. Use Fusion Middleware Control to add Oracle BI Discoverer installations to the farm (for more information, see Fusion Middleware Control Help).

    Tip: Ensure that you can run Discoverer directly from a machine before trying to load balance to that machine. For example, if you want to load balance Oracle BI Discoverer installed on machine_b, start a Web browser and enter the Discoverer URL for that machine (for example, http://machine_b:80/discoverer/viewer) to ensure that Discoverer works correctly.

  3. Configure Oracle Web Cache to direct Discoverer Web server requests to other Discoverer middle tier machines (for more information, see Section 6.5.1, "How to configure Oracle Web Cache for load balancing").

  4. Confirm that Discoverer Web traffic is being routed correctly (for more information, see Section 6.5.2, "How to verify that Oracle Web Cache is configured correctly for load balancing").

  5. (optional) You might want to deploy a single centralized Discoverer Preferences component (for more information, see Section 6.6, "About the Discoverer Preferences component in a multiple-machine environment").

  6. (optional) You might need to ensure that the tnsnames.ora file on each machine contains the same database names and aliases information (for more information, see Section 6.7, "About configuring the tnsnames.ora file in a multiple-machine environment").

6.5.1 How to configure Oracle Web Cache for load balancing

You can use Oracle Web Cache page in Fusion Middleware Control to configure load balancing for Web applications such as Oracle BI Discoverer.

Note: Before you start, make sure you have the necessary components installed (for more information, see Section 6.3, "What are the prerequisites for using Oracle Web Cache to provide load balancing for Oracle BI Discoverer?").

To configure Oracle Web Cache for load balancing:

  1. Specify the origin servers (for more information, see "Specify Origin Server Settings" in Oracle Fusion Middleware Administrator's Guide for Oracle Web Cache).

  2. Specify the site to server mapping (for more information, see "Map Site Definitions to Origin Servers" in Oracle Fusion Middleware Administrator's Guide for Oracle Web Cache ).

  3. Specify the session binding value (for more information, see "Configuring Session Binding" in Oracle Fusion Middleware Administrator's Guide for Oracle Web Cache).

Note

  • The recommended values for some of the Origin Server settings are as follows:

    • Capacity: 100

    • Failover Threshold: 5

    • Ping URL: /

    • Ping Frequency (seconds): 10

6.5.2 How to verify that Oracle Web Cache is configured correctly for load balancing

You can verify that Oracle Web Cache is configured correctly for load balancing by confirming that Oracle BI Discoverer Web traffic is being routed to the correct machines.

For example, you might want to confirm that Discoverer browser sessions connecting to:

http://machine_a.company.com:80/discoverer/viewer

are routed to:

http://machine_b.company.com:80/discoverer/viewer

or:

http://machine_c.company.com:80/discoverer/viewer

To verify that Oracle Web Cache is configured correctly for load balancing:

  1. Start Oracle Web Cache (for more information, see Section 6.5.1, "How to configure Oracle Web Cache for load balancing").

  2. From the Web Cache menu, click Administration, and Origin Server to display the Origin Server page.

  3. Verify the status of the Oracle BI Discoverer middle tier machines to which you are distributing Discoverer Web traffic by confirming that:

    • The Origin Server Statistics table contains a row for each Oracle BI Discoverer middle tier machine

      For example, if you have Discoverer sessions running on machine_a and machine_b, the Origin Server Statistics contain a row for machine_a and a row for machine_b.

    • The application server port number is correct in the hostname column

    • The up/down setting in the Up/Down Time column setting is UP

    • The Active Sessions values should correctly reflect the number of Oracle BI Discoverer sessions running on each machine

      For example, if you have ten Discoverer sessions running on machine_a and machine_b, the Active Sessions-now column might contain the value 6 for machine_a and the value 4 for machine_b (that is, ten sessions in total).

    • The Active Sessions values should indicate an even distribution of server requests between the Oracle BI Discoverer middle tier machines (that is, according to how you have configured each machine in the Origin Servers page)

      For example, if you have 100 Discoverer sessions running on machine_a and machine_b, the Active Sessions-now column might should reflect a similar number of sessions for each machine.

Notes

  • For more information about using the Origin Server Statistics page, see Oracle Web Cache Manager Help.

  • You can also select the Health Monitor link in the Monitoring area of the Navigator Pane to see a summary of server requests served by the Oracle BI Discoverer middle tier machines. If Oracle Web Cache is configured correctly for load balancing, server requests are distributed evenly across the Discoverer middle-tier machines.

6.6 About the Discoverer Preferences component in a multiple-machine environment

Each Discoverer installation includes a Discoverer Preferences component. The Discoverer Preferences component stores preference settings (for example, worksheet axis style, default EUL, auto-query enable) for Oracle BI Discoverer users accessing that Discoverer installation. For more information, see Section 1.9.2.2, "What is the Discoverer Preferences server component?".

In a multiple-machine environment, you might want to store all Discoverer end user preferences in a single location. In other words, you want each Discoverer installation to use the same Discoverer Preferences component. To store all Discoverer end user preferences in a single location, you specify a centralized Discoverer Preferences component. For more information, see Section 6.6.1, "How to specify a centralized Discoverer Preferences component."

6.6.1 How to specify a centralized Discoverer Preferences component

If you want to store all Discoverer end user preferences in a single location, you configure each Discoverer installation to use the Preferences component running on the Preferences server machine, instead of running their own Preferences component. The diagram below shows how additional Discoverer middle-tier machines reference the preferences on the Preferences server machine.

Surrounding text describes mm1.gif.

To specify a centralized Discoverer Preferences component, you must perform the following tasks:

6.6.2 How to find out the host name and port number of the Preferences server machine

To find out the host name and port number of the machine to run the Preferences component (that is, the machine you want to designate as the Discoverer Preferences server machine), perform the following steps:

  1. To find out the host name,

    1. Open a command prompt on the Discoverer Preferences server machine.

    2. Type hostname and note the value displayed.

  2. To find out the port number of the Discoverer Preferences server machine,

    1. Open the opmn.xml file in a text editor (or XML editor).

      For more information about the location of the opmn.xml file, see Section A.1, "List of Discoverer file locations".

    2. Locate the PREFERENCE_PORT variable ID and note the value.

      For example, in the Discoverer area of the file, you might see the following line of text:

      <variable id = "PREFERENCE_PORT" value = "16001">

    3. Close the opmn.xml file.

You must now change the opmn.xml file on other machines to use the Discoverer Preferences server machine, as described in Section 6.6.3, "How to specify a Discoverer Preferences Server on other machines."

6.6.3 How to specify a Discoverer Preferences Server on other machines

Having identified the host name and port number of the machine that is going to run the Preferences component (that is, the Discoverer Preferences server machine), you must now ensure that other machines use the Preferences component on the Discoverer Preferences server machine.

To modify the opmn.xml file of other machines to use the Discoverer Preferences server machine, perform the following steps on every other machine in the installation.

  1. On each machine except the Preferences server machine, open the opmn.xml file in a text editor (or XML editor).

    For more information about the location of the opmn.xml file, see Section A.1, "List of Discoverer file locations".

  2. Locate the PREFERENCE_HOST variable, and change its value to the host name of the Discoverer Preferences server machine, as follows:

    <variable id="PREFERENCE_HOST" value="hostname">

  3. Locate the PREFERENCE_PORT variable, and change its value to the port number of the Discoverer Preferences server machine, as follows:

    <variable id="PREFERENCE_PORT" value="port">

  4. Locate the PreferenceServer process type, and change its status to disabled, as follows:

    <process-type id="PreferenceServer" module-id="Disco_PreferenceServer" working-dir="$DC_LOG_DIR" status="disabled">

  5. Save the opmn.xml file.

  6. Stop the Discoverer Service on that machine, as described in Section 4.3, "How to start, stop, and restart the Discoverer preferences server component using opmnctl."

  7. Start the Discoverer Service on that machine, as described in Section 4.3, "How to start, stop, and restart the Discoverer preferences server component using opmnctl."

6.7 About configuring the tnsnames.ora file in a multiple-machine environment

The tnsnames.ora file contains the names and aliases of all the databases that users can access using Oracle BI Discoverer.

Each machine in a multiple-machine Discoverer installation must have the same tnsnames.ora file or must point to a centralized tnsnames.ora file (to find out the location of this file, see Section A.1, "List of Discoverer file locations").

To ensure that the tnsnames.ora files on the different machines are the same, do one of the following:

  • Copy the tnsnames.ora file from one Oracle Business Intelligence middle tier machine to the same location on all of the other Oracle Business Intelligence middle tier machines, replacing the existing file

  • Edit the tnsnames.ora file on each Oracle Business Intelligence middle tier machine so that they all contain the same database names and aliases

Tip: Several versions of the tnsnames.ora file might exist on a machine. Ensure that you use the tnsnames.ora file in the location listed in Section A.1, "List of Discoverer file locations".