Thursday, July 8, 2021

Using Load Balancers with Oracle E-Business Suite Release 12.2 (Doc ID 1375686.1)

 

In This Document

Section 1: Introduction

This section examines the terminology used in load balancing, then describes the relevant Oracle E-Business Suite architecture and related network configuration strategies and options.

1.1: Terminology

Tier

A tier is a logical grouping of services, potentially spread across more than one physical machine.

Client Tier

The client interface is provided through HTML for the HTML-based applications, and via a Java applet in a Web browser for the traditional Forms-based interface. In Oracle E-Business Suite Release 12.2, each user logs in to the applications via the Oracle E-Business Suite Home Page on a desktop client web browser. The Oracle E-Business Suite Home Page provides a single point of access to HTML-based applications, Forms-based applications, and Business Intelligence applications.

Application Tier

The application tier hosts the various services that process the business logic and manage communication between the desktop tier and the database tier. This tier runs the web server and the associated processes, concurrent processing server, Interaction and Oracle fulfillment server.

Database Tier

The database tier contains the Oracle database server, which stores all the data maintained by Oracle E-Business Suite. This tier holds the Oracle E-Business Suite database executables, plus the Oracle data server files that store the tables, indexes, and other database objects.

OPMN

Oracle Process Manager and Notification Server (OPMN) is installed and configured on every tier designated to run the web application.  OPMN provides an integrated way to manage all Oracle Application Server components.  OPMN consists of two main pieces:  the Process Manager and the Notification Server. The Process manager (PM) is the centralized process management mechanism in Oracle Application Server and is used to manage all Oracle Application Server processes. The PM starts, restarts, stops, and monitors every process it manages. It also performs death-detection and automatic restart of the processes. Oracle Notification Server (ONS) is the transport mechanism for failure, recovery, startup, and other related notifications between components in Oracle Application Server.

OHS

Oracle HTTP Server (OHS) is installed and configured on every tier that is designated to run the web application . It provides the key infrastructure required for serving the static and dynamic content generated by Oracle E Business Suite products.

WebLogic Server

Oracle WebLogic Server is a scalable, enterprise-ready Java Platform, Enterprise Edition (Java EE) application server.

WebLogic Cluster

A WebLogic Server cluster consists of multiple WebLogic Server server instances running simultaneously and working together to provide increased scalability and reliability. A cluster appears to clients to be a single WebLogic Server instance. The server instances that constitute a cluster can run on the same machine, or be located on different machines..

WebLogic Proxy Plugin

The WebLogic proxy plug-in maintains a list of WebLogic Server instances that host a clustered servlet or JSP, and forwards HTTP requests to those instances on a round-robin basis.

WebLogic Domain

A WebLogic Server domain is a logically related group of WebLogic Server resources.

Administration Server

Every WebLogic domain has a server instance called the Administration Server. It is used to configure all other server instances and resources in the domain.

Managed Server

Managed Servers host the components and associated resources that constitute your applications — for example, JSPs and EJBs. When a Managed Server starts up, it connects to the domain's Administration Server to obtain configuration and deployment settings.

Node Manager

Node Manager is a Java utility that runs as separate process from WebLogic Server and allows you to perform common operations tasks for a Managed Server, regardless of its location with respect to its Administration Server.

Web Entry Point

Web Entry Point refers to the host name which is designated to be used by all users to access the Oracle E-Business Suite Release 12.2 system.  By default, the web entry point is set to the hostname of the application server where Oracle E-Business Suite is installed. In the case where a load balancer is used, the Web Entry Point becomes the load balancer's host name.

Session Persistence

Session Persistence is the act of keeping a specific user's traffic going to the same server that was initially hit when the site was contacted for the first HTTP transaction. This is especially important for Oracle E-Business Suite as various modules bundled with the suite need to maintain session state.  Session persistence is sometimes referred to as "server stickiness."

Server Load Balancer

Load balancing can be defined as the technology and associated processes that distribute a website's traffic among several machines in a cluster using a network-based device called a server load balancer. Cluster architectures allow all members of a group of machines to run the same web application, appearing to the outside world as a single machine.

A server load balancer intercepts traffic destined for a site, and redirects it to various machines in the cluster according to the particular load balancing method chosen.  This optimizes use of system resources, resulting in higher performance, availability and scalability.  Load balancers are recommended for mission-critical enterprise deployments of web-based applications such as Oracle E-Business Suite.

A typical load balanced architecture is shown in the diagram below:

To summarize, a server load balancer performs the following functions:

  • Intercepts network traffic destined for a site.
  • Splits the traffic into individual requests and decides which machines in the cluster are to receive these requests.
  • Maintains a watch on the available machines, ensuring that they are responding to the traffic; if they are not, they are taken out from the load balancing pool so that traffic can be routed to the machines that are available.
  • Provides redundancy by employing more than one machine for fail-over scenarios.
  • Provides context-aware load distribution, so that applications that need to maintain session-persistent connections do not fail. This feature of load balancer is very important for Oracle E-Business Suite as the various modules require session-persistent connections. To support this feature, the load balancer reads the cookies set on each request made by the client, and, based on the information in the cookie, it can rewrite the header information, then send the request to the appropriate machine in the cluster, where its session is maintained.

1.2: General Architecture of Oracle E-Business Suite Release 12.2

The Oracle E-Business Suite Release 12.2 architecture, as shown in the figure below, is a framework for multi-tiered, distributed computing that supports various Oracle Applications products. In this model, various servers are distributed among multiple levels, or tiers.

A server is a process or group of processes that runs on a single machine and provides a particular class of functionality, often referred to as a service. For example, the Oracle HTTP server is a process that listens for and processes HTTP requests; a Concurrent Processing server is a server that process batch jobs submitted through concurrent requests.

The three-tier architecture that comprises an Oracle E-Business Suite installation is made up of:

  1. The database tier, which supports and manages the Oracle database.
  2. The application tier, which supports and manages the various Applications components, and is sometimes known as the middle tier.
  3. The client tier, which provides the user interface via a supported web browser, either natively in HTML or via Forms running in the Sun Java Runtime Engine.

1.3: Network Configuration Requirements for Load Balancers

In a load balanced configuration, a load balancer device serves requests from clients and redirects them to multiple Oracle E-Business Suite application tier servers.  The load balancer acts as a single entry point to the Oracle E-Business Suite environment.

Two sets of major requirements must be met to ensure successful configuration of hardware-based load balancers with Oracle E-Business Suite:

  1. Load Balancer Hardware Requirements
  2. DNS Resolution Requirements

1. Load Balancer Hardware Requirements

Virtual Servers and Port Configuration

For product functionality and to meet high availability requirements, Oracle E-Business Suite code running on the application tier servers may need to establish a connection to itself, to external servers, or to the database server. This requires the load balancing device to accept connections from the application tier servers behind the device, and to route the request to the appropriate server. In certain network configurations, the load balancing device may not be support such connections, and the request may either hang or be dropped. Such a scenario requires contacting the hardware load balancer vendor, to discuss either the feasibility of either reconfiguring the load balancer device to accept the connections originating from the servers behind it, or, alternatively and preferably, upgrading to devices that can support these types of loopback connections.

Depending upon the networking device, it may be feasible to alias load balancer virtual host names directly to the IP addresses of specific application tier servers.  Such mappings may not be technically feasible in all configurations. Oracle does not certify or recommend such configurations, but will support them on a best-efforts basis, subject to available resources and expertise. Although machine mappings may be supported, technical limitations inherent in DNS layer devices may prevent port and protocol mappings.

For example, a load balancer with SSL acceleration capabilities may be configured to listen for HTTPS traffic on port 443, and forward unencrypted traffic to the pool of application tier servers listening for HTTP traffic on port 8000. Mapping HTTPS services to the application tier servers instead of the load balancer/SSL accelerator will result in failures, as the application tier servers are not configured to handle HTTPS traffic, and will reject traffic for port 443.

It is also possible to configure a single Oracle E-Business Suite environment to be accessed via multiple domain names, each with its own pool of application tier servers. For example:  A single Oracle E-Business Suite environment might have the following two domains: partners.example.com, and employees.example.com. The partners.example.com domain uses a pool of application servers (e.g. apptier1 and apptier 2) secured and used exclusively for external access by partners and supplies. The employees.example.com domain uses a different pool of application servers (e.g. apptier3 and apptier4) that may be used only by company employees. Both environments use the same Oracle E-Business Suite database.

Depending on the load balancer used, it is technically possible to use a single physical load balancer to handle client requests for both domains.  To support this configuration, the load balancer must:

  • Allow configuration of multiple virtual server names and multiple ports
  • Associate each virtual server name with its own IP address, each of which are accessible via your DNS
  • Allow clients to address the virtual server names, which the load balancer uses to redirect traffic to the appropriate pool of application tier servers
Resource Monitoring, Port Monitoring and Process Failure Detection

Oracle recommends that the load balancer should be configured to detect service and server failures, through heartbeat monitors, notification, or some other mechanism.  If a server in the pool fails, the load balancer must stop directing traffic to the failed Server.

Fail-Over Capabilities

It is possible to set up offsite fail-over environments that can be switched to if the primary environment fails.  For example, a load balancer may be configured to direct Oracle E-Business Suite traffic to a primary pool of application servers in Austin, Texas.  If that primary site fails for some reason, the load balancer should be able to detect the failure and redirect all traffic to identically-named application tier servers running in an offsite disaster recovery site.

Oracle recommends that load balancers should be configured to support fail-over configurations.

Returning Traffic on Failures

Oracle recommends configuring load balancers to return immediately to the calling client when the application server to which it forwards traffic is unavailable.  This is preferred over the client disconnecting on its own after a timeout based on the TCP/IP settings on the client machine.

The WebLogic Server requires a Hardware Load Balancer that must support a compatible passive or active cookie persistence mechanism, and SSL persistence.

  • Passive Cookie Persistence
  • Passive cookie persistence enables WebLogic Server to write a cookie containing session parameter information through the load balancer to the client. For information about the session cookie and how a load balancer uses session parameter data to maintain the relationship between the client and the primary WebLogic Server hosting a HTTP session state, see Load Balancers and the WebLogic Session Cookie.
  • Active Cookie Persistence
  • Certain active cookie persistence mechanisms can be used with WebLogic Server clusters, provided the load balancer does not modify the WebLogic Server cookie. WebLogic Server clusters do not support active cookie persistence mechanisms that overwrite or modify the WebLogic HTTP session cookie. If the load balancer's active cookie persistence mechanism works by adding its own cookie to the client session, no additional configuration is required to use the load balancer with a WebLogic Server cluster.
  • SSL Persistence
  • When SSL persistence is used, the load balancer performs all encryption and decryption of data between clients and the WebLogic Server cluster. The load balancer then uses the plain text cookie that WebLogic Server inserts on the client to maintain an association between the client and a particular server in the cluster.

2. DNS Resolution Requirements

All clients must be able to resolve the hostname of the load balancer.  In the case where a single load balancer hosts multiple virtual servers, clients must be able to resolve the hostname of each of the virtual server names.  Note that "clients" also include Oracle E-Business Suite application tier server, which perform loopback queries to the load balancer's virtual server name.

You can perform the following tests from desktop clients and each application tier server to ensure that DNS resolution is working:

  1. Use ping:
    ping <LbrDeviceHostname>.<domain>
    For example:
    ping employees.example.com
    If successful, this command will return the IP address of the load balancer, along with information about ping latency and response times.
     
  2. Use telnet:
    telnet <LbrDeviceHostname>.<domain> [http/https port]
    For example:
    telnet employees.example.com 443
    $ GET /OA_HTML/AppsLocalLogin.jsp
    If successful, this command will connect to the load balancer using the specified port and will return the HTML output from AppsLocalLogin.jsp.

Section 2: Planning Deployment Options

The Release 12.2 Rapid Install utility can be used to Install a new, fully configured Oracle E-Business Suite system, including the latest certified Oracle E-Business Suite technology stack and all patches, product family release update packs, release update packs, and other updates available at the time of this Oracle E-Business Suite release. Rapid Install employs a wizard that guides you through the screens used to carry out the selected task. On the wizard screens, you enter configuration values for your system.

The Rapid Install utility support different types of installations, namely a single-node installation (where the database and the application tier are installed and configured on one node) and a multi-tier installation (where the database and the application tier are spread across different nodes). For more information, see the Oracle E-Business Suite Release 12.2 Installation Guide.

In this document, we will describe a two-node installation scenario where the database tier is installed on node 1 and the application tier is installed on node 2. We will be addressing these nodes as the primary database tier node and primary application tier node respectively. Follow the steps given below in sequence to complete the installation.

Note: It is recommended that you stage the installation CDs on a remote file system that can be mounted and accessed from the different nodes on where we are going to perform the installation.

Install the Database Tier on Node 1

Start the Rapid Install utility on node 1. The first screen lists the components that are included in, or supported by, this release of Oracle E-Business Suite. You can see from this list that a new installation includes a fresh Oracle 11g Release 2 (11gR2) database. Enter the appropriate values as prompted by the Installler for the Database and the Application Tier node and complete the Database tier installation.

Note: When entering the location of the install directories for the application tier install, you can either enter the location of a local drive on that machine or an NFS location that is accessible from that primary application tier node. The recommendation is to install the application tier file system on to a remote file system that can be mounted across various application tier nodes. For details, refer to My Oracle Support Knowledge Document 1375769.1Sharing The Application Tier File System in Oracle E-Business Suite Release 12.2.

Install the Primary Application Tier on Node 2

Start the Rapid Install utility on node 2. The database and the associated processes need to be up and running on the database tier to successfully complete this installation. The first screen lists the components that are included in, or supported by, this release of Oracle E-Business Suite. You can see from this list that a new installation of the application tier includes Oracle Fusion Middleware Stack that includes the WebLogic Server and the Web Tier. The Oracle Application Server stack that includes the forms and reports and the Oracle E-Business Suite application tier code.

A successful completion of the application tier installation on to node 2 configures the following services:

  • Root Service, comprising the Node Manager.
  • Web Administration Service, comprising the WebLogic Administration Server and the TNS Listener for FNDFS.
  • Web Entry Point Services, comprising the Oracle Process Notification Server (OPMN) and the Oracle HTTP Server ( OHS).
  • Web Application Services, comprising the Managed Servers oacore, forms, oafm and form-c4ws.
  • Batch Processing Services, comprising the Concurrent Processing services, ICSM and JTF Fullfillment Server.
  • Other Services, comprising the Forms Server and the Mobile Web Application Server.

Execute adpreclone Utility on the Run and Patch File System

The adpreclone utility shipped with Oracle E-Business Suite packages the required application tier components to a staging directory for subsequent clone and add node operations. You must run this utility before proceeding to Section 4 of this document.

The adpreclone utility requires the application tier processes to be running from the file system where the utility is run. This is required to package the Oracle Fusion Middleware components and its configuration. Perform the commands shown below on both the run and patch file systems:

On the run file system:

$ cd <inst-top-run-fs>/admin/scripts
$ ./adstrtal.sh <apps-user-name>/<apps-password>

$ ./adpreclone.pl appsTier
Once the utility completes, shut down the application tier processes:
$ ./adstpall.sh <apps-user-name>/<apps-password>

On the patch file system:

$ cd <inst-top-patch-fs>/admin/scripts
$ ./adstrtal.sh <apps-user-name>/<apps-password>

$ ./adpreclone.pl appsTier
Once the utility completes, shut down the application tier processes.
$ ./adstpall.sh <apps-user-name>/<apps-password>

To add additional nodes, follow the instructions given in the following guide:

  • If planning to use shared file system, follow Section 4 of Sharing the Application Tier File System in Oracle E-Business Suite Release 12.2Document 1375769.1.
  • If planning to use non-shared file system, follow the instructions in Cloning Oracle E-Business Suite Release 12.2 with Rapid CloneDocument 1383621.1.

2.1: Using Hardware Load Balancers with Single Web Entry Point

The diagram shown below represents a hardware load balancer configuration with a single entry point to load balance the web application running on application servers 1 and 2. In this configuration, all users access Oracle E-Business Suite applications through a single URL.

The steps described in this section assume that you already have a multi-node Oracle E-Business Suite Release 12.2 installation.  Application Servers 1 and 2 must be configured to run the web application behind a hardware-based load balancer. This configuration assume there are multiple instances of Oracle HTTP Server and Managed Servers configured on each node.

2.1.1: Configuration Changes on the Application Tier

2.1.1.1: Update Applications Context File

Use the AutoConfig Context Editor to set the appropriate configuration values in the applications context file on servers 1 and 2. See Customizing AutoConfig-Managed ConfigurationsOracle E-Business Suite Setup Guide.

The table below shows how the context value should be changed when a load balancer is configured in front of application servers. For example:

  • Load Balancer Entry Point: store.example.com
  • Application Server 1: appstier1.example.com
  • Application Server 2: appstier2.example.com
  • Web Entry protocol: https
  • Application Tier Web Protocol: http
  • Application Tier Web Port: 8050
  • Active Web Port: 443

Context Variable NameContext Variable DescriptionOld Context ValueNew Context Value
s_webentryurlprotocolProtocol that desktop clients use to communicate with the web entry point serverhttphttps
s_webentryhostName of the host that receives the first HTTP request from the desktop client

appstier1 on Application Server 1

appstier2 on Application Server 2

store
s_webentrydomainDomain name of the host that receives the first HTTP request from the desktop clientexample.comexample.com
s_active_webportPort on the web server or load balancer that listens for HTTP requests8050443
s_login_pageURL used to access the Applications logon page

http://appstier1.example.com:8050/OA_HTML/AppsLogin on Application Server 1

http://appstier2.example.com:8050/OA_HTML/AppsLogin on Application Server 2

https://store.example.com/OA_HTML/AppsLogin
s_external_urlURL that third party tools use to connect to the Oracle E-Business Suite System. This is used only by the Oracle Web Services product.

http://appstier1.example.com:8050/ on Application Server 1

http://appstier2.example.com:8050/ on Application Server 2

https://store.example.com

The values listed for the context variables in the table above should only be used as a reference to change your applications context file. It is possible that system administrators may have changed the default values to perform other advanced configurations.

After completing the changes shown above, do the following:

  1. Run the AutoConfig utility on all the application tier servers.
  2. Restart application server processes.
  3. Test sign on from the load balancer entry point.

If you are using your load balancer for SSL termination/acceleration, follow the instructions in My Oracle Support Knowledge Document 1367293.1Enabling TLS in Oracle E-Business Suite Release 12.2.

2.1.2: Configuration Changes on the Load Balancer

The Hardware Load Balancer must be configured for session persistence: various modules shipped with Oracle E-Business Suite need to maintain session state.  If this property is not set, the loss of transaction state may result in users experiencing unpredictable errors.

Oracle supports session persistence technology that is transparent to the Oracle E-Business Suite; that is, session persistence approaches which do not require additional programmatic changes to the underlying Oracle E-Business Suite modules. For successful integration of your load balancer with Oracle E-Business Suite application tiers, refer to your load balancer's documentation for details on how to configure the load balancing pool, virtual host configuration, and session persistence parameters. Networking hardware vendors offer products with a range of technical solutions for session persistence, but it is beyond the scope of this document to make comparative assessments of the various approaches.

As an example, the following table summarizes the key parameters that Oracle Development uses for its standardized load balancer configuration tests:

Load Balancer ParameterValue
Load Balancing MethodPredictive Node Address
Persistence TypeActive HTTP Cookie with Method Insert and Cookie Expiration 12 hrs

2.2: Using Hardware Load Balancers with Multiple Web Entry Points

The diagram shown below represents a hardware load balancer configuration with multiple entry points to load balance the web application running on application server 1, 2, 3 and 4.  In this configuration, users access Oracle E-Business Suite application with two different URLs. This configuration assumes there are multiple instances of Oracle HTTP Server and Managed Servers configured on each node.

2.2.1: Configuration Changes on Application Tier

2.2.1.1: Update Oracle E-Business Suite Profile Options Hierarchy Type

A number of user profiles are used to construct various URLs in an Oracle E-Business Suite Release 12 environment, as shown in the following table.

Table 1

User Profile Name
Internal Name
1. Applications Web AgentAPPS_WEB_AGENT
2. Applications Servlet AgentAPPS_SERVLET_AGENT
3. Applications JSP AgentAPPS_JSP_AGENT
4. Applications Framework AgentAPPS_FRAMEWORK_AGENT
5. ICX:Forms LauncherICX_FORMS_LAUNCHER
6. ICX: Oracle Discoverer LauncherICX_DISCOVERER_LAUNCHER
7. ICX: Oracle Discoverer Viewer LauncherICX_DISCOVERER_VIEWER_LAUNCHER
8. Applications Help Web AgentHELP_WEB_AGENT
9. Applications PortalAPPS_PORTAL
10. BOM:Configurator URL of UI ManagerCZ_UIMGR_URL
11. QP: Pricing Engine URLQP_PRICING_ENGINE_URL
12. TCF:HOSTTCF:HOST

The default hierarchy type value for the above profile options is of Security type as shown in the sample diagram below:

Configuration of the Oracle E-Business Suite environment for access from multiple entry point requires the profile options hierarchy type to be changed to SERVRESP. To change the profile options hierarchy type values to SERVRESP, execute the SQL script shown below:

sqlplus <apps-schema-name>/<apps-passwd> @<FND_TOP>/patch/115/sql/txkChangeProfH.sql SERVRESP

After running the script, verify that the hierarchy type for the profile options was successfully changed to SERVRESP.  For example, see the screenshot below:

2.2.1.2: Update Applications Context File

Use the AutoConfig Context Editor to set the appropriate configuration values in the applications context file on servers 1, 2, 3 and 4. See Customizing AutoConfig-Managed ConfigurationsOracle E-Business Suite Setup Guide.

The table below shows how the context value should be changed when a load balancer is configured in front of application servers. For example:

  • Load Balancer Entry Point 1: store.example.com
  • Application Server 1: appstier1.example.com
  • Application Server 2: appstier2.example.com
  • Web Entry protocol: https
  • Application Tier Web Protocol: http
  • Application Tier Web Port: 8050
  • Active Web Port:443
  • Load Balancer Entry Point 2: recruitment.example.com
  • Application Server 3: appstier3.example.com
  • Application Server 4: appstier4.example.com
  • Web Entry protocol: http
  • Application Tier Web Protocol: http
  • Application Tier Web Port: 8060
  • Active Web Port:80

Context Variable NameContext Variable DescriptionOld Context ValueNew Context Value
s_webentryurlprotocolProtocol that desktop clients use to communicate with the entry point serverhttp

https for store.example.com

http for recruitment.example.com

s_webentryhostName of the host that receives the first HTTP request from the desktop client

appstier1 on Application Server 1
appstier2 on Application Server 2

appstier3 on Application Server 3
appstier4 on Application Server 4

store as the entry web entry host for
appstier1 and appstier2

recruitment as the web entry host for
appstier3 and appstier4

s_webentrydomainDomain name of the host that receives the first HTTP request from the desktop clientexample.comexample.com
s_active_webportPort on the web server or load balancer that listens for HTTP requests

8050 on appstier1 and appstier2

8060 on appstier3 and appstier4

443 for store.example.com

80 for recruitment.example.com

s_login_pageURL used to access the Applications logon page

http://appstier1.example.com:8050/OA_HTML/AppsLogin on appstier1

http://appstier2.example.com:8050/OA_HTML/AppsLogin on appstier2

http://appstier3.example.com:8060/OA_HTML/AppsLogin on appstier3

http://appstier4.example.com:8060/OA_HTML/AppsLogin on appstier4

https://store.example.com/OA_HTML/AppsLogin as the login page for appstier1 and appstier2

http://recruitment.example.com/OA_HTML/AppsLogin as the login page for appstier3 and appstier4

s_external_urlURL that third party tools use to connect to the Oracle E-Business Suite System. This is used only by the Oracle Web Services product.

http://appstier1.example.com:8050/ on appstier1

http://appstier2.example.com:8050/ on appstier2

http://appstier3.example.com:8060/ on appstier3

http://appstier4.example.com:8060/ on appstier4

https://store.example.com for store.example.com

http://recruitment.example.com for recruitment.example.com

The values listed for the context variables in the table above should only be used as a reference to change your applications context file. It is possible that system administrators may have changed the default values to perform other advanced configurations.

After completing the changes shown above, do the following:

  1. Run the AutoConfig utility on all the application tier servers.
  2. Restart application server processes.
  3. Test sign on from different entry points.

If you are using your load balancer for SSL termination/acceleration, follow the instructions in My Oracle Support Knowledge Document 1367293.1Enabling TLS in Oracle E-Business Suite Release 12.2.

2.2.2: Configuration Changes on the Load Balancer

The Hardware Load Balancer must be configured for session persistence: various modules shipped with Oracle E-Business Suite need to maintain session state.  If this property is not set, the loss of transaction state may result in users experiencing unpredictable errors.

Oracle supports session persistence technology that is transparent to the Oracle E-Business Suite: that is, session persistence approaches which do not require additional programmatic changes to the underlying Oracle E-Business Suite modules. For successful integration of your load balancer with Oracle E-Business Suite application tiers, refer to your load balancer's documentation for details on how to configure the load balancing pool, virtual host configuration, and session persistence parameters. Networking hardware vendors offer products with a range of technical solutions for session persistence, but it is beyond the scope of this document to make comparative assessments of the various approaches.

As an example, the following table summarizes the key parameters that Oracle Development uses for its standardized load balancer configuration tests:

Load Balancer ParameterValue
Load Balancing MethodPredictive Node Address
Persistence TypeActive HTTP Cookie with Method Insert and Cookie Expiration 12 hrs

2.3: Using Hardware Load Balancers with Functional Redirection

In this configuration there is a primary web entry point URL. Users are directed to different servers based on the functional responsibilities that they choose after signing on.

In this configuration, users access the Oracle E-Business Suite using the primary entry point URL https://ebiz.example.com and depending on the responsibility they choose — either manufacturing vs hrms — they are redirected to the https://mfg.example.com or https://hrms.example.com pool of servers.

2.3.1: Configuration Changes on the Application Tier

2.3.1.1: Update Oracle E-Business Suite Profile Options Hierarchy Type

Please follow the instructions provided in Table 1 to set the profile hierarchy type to SERVRESP.

2.3.1.2: Update Applications Context File

Use the AutoConfig Context Editor to set the appropriate configuration values in the applications context file on servers ebiz1, ebiz2 , mfg1, mfg2 and hrms. See Customizing AutoConfig-Managed ConfigurationsOracle E-Business Suite Setup Guide.

The table below describe how the context value should be changed when a load balancer is configured in front of application servers.  For example:

  • Load Balancer Entry Point 1: ebiz.example.com
  • Application Server 1: appstier1.example.com
  • Application Server 2: appstier2.example.com
  • Web Entry protocol: https
  • Application Tier Web Protocol: http
  • Application Tier Web Port: 8050
  • Active Web Port:443
  • Load Balancer Entry Point 2: mfg.example.com
  • Application Server 1: appstier3.example.com
  • Application Server 2: appstier4.example.com
  • Web Entry protocol: https
  • Application Tier Web Protocol: http
  • Application Tier Web Port: 8060
  • Active Web Port:443
  • Load Balancer Entry Point 3: hrms.example.com
  • Application Server 1: appstier5.example.com
  • Web Entry protocol: https
  • Application Tier Web Protocol: https
  • Application Tier Web Port: 8070
  • Active Web Port:443
Context Variable NameContext Variable DescriptionOld Context ValueNew Context Value
s_webentryurlprotocolProtocol that desktop clients use to communicate with the web entry point serverhttp

https

s_webentryhostName of the host that receives the first HTTP request from the desktop client

appstier1 on Application Server 1
appstier2 on Application Server 2

appstier3 on Application Server 3
appstier4 on Application Server 4

appstier5 on Application Server 5

ebiz as the web entry host for appstier1.example.com and and appstier2.example.com

mfg as the web entry host for appstier3.example.com and appstier4.example.com

hrms as the web entry host appstier5.example.com

s_webentrydomainDomain name of the host that receives the first HTTP request from the desktop clientexample.comexample.com
s_active_webportPort on the web server or load balancer that listens for HTTP requests

8050 on appstier1.example.com and appstier2.example.com

8060 on appstier3.example.com and
appstier4.example.com

8070 on appstier5.example.com

443 for all web entry points

s_login_pageURL used to access the Oracle E-Business Suite logon page

http://appstier1.example.com:8050/OA_HTML/AppsLogin on appstier1.example.com

http://appstier2.example.com:8050/OA_HTML/AppsLogin on appstier2.example.com

http://appstier3.example.com:8060/OA_HTML/AppsLogin on appstier3.example.com

http://appstier4.example.com:8060/OA_HTML/AppsLogin on appstier4.example.com

http://appstier5.example.com:8070/OA_HTML/AppsLogin on appstier5.example.com

https://ebiz.example.com/OA_HTML/AppsLogin as the login page for appstier1.example.com and appstier2.example.com

https://mfg.example.com/OA_HTML/AppsLogin as the login page for appstier3.example.com and appstier4.example.com

https://hrms.example.com/OA_HTML/AppsLogin as the login page for appstier5.example.com

s_external_url

URL third party tools use to connect to the Oracle E-Business Suite system.

This is used only by the Oracle Web Services product.

http://appstier1.example.com:8050/ on appstier1.example.com

http://appstier2.example.com:8050/ on appstier2.example.com

http://appstier3.example.com:8060/ on appstier3.example.com

http://appstier4.example.com:8060/ on appstier4.example.com

http://appstier5.example.com:8070/ on appstier5.example.com

https://ebiz.example.com for ebiz.example.com

https://mfg.example.com for mfg.example.com

https://hrms.example.com for hrms.example.com

The values listed for the context variables in the table above should only be used as a reference to change your applications context file. It is possible that system administrators may have changed the default values to perform other advanced configurations.

After completing the changes shown above, do the following:

  1. Run the AutoConfig utility on all the application tier servers.
  2. Restart application server processes.
  3. Test sign on from different entry points.

If you are using your load balancer for SSL termination/acceleration, follow the instructions in My Oracle Support Knowledge Document 1367293.1Enabling TLS in Oracle E-Business Suite Release 12.2.

2.3.2: Configuration Changes on the Load Balancer

The Hardware Load Balancer must be configured for session persistence: various modules shipped with Oracle E-Business Suite need to maintain session state.  If this property is not set, the loss of transaction state may result in users experiencing unpredictable errors.

Oracle supports session persistence technology that is transparent to the Oracle E-Business Suite; that is, session persistence approaches which do not require additional programmatic changes to the underlying Oracle E-Business Suite modules. For successful integration of your load balancer with Oracle E-Business Suite application tiers, refer to your load balancer's documentation for details on how to configure the load balancing pool, virtual host configuration, and session persistence parameters. Networking hardware vendors offer products with a range of technical solutions for session persistence, but it is beyond the scope of this document to make comparative assessments of the various approaches.

As an example, the following table summarizes the key parameters that Oracle Development uses for its standardized load balancer configuration tests:

Load Balancer ParameterValue
Load Balancing MethodPredictive Node Address
Persistence TypeActive HTTP Cookie with Method Insert and Cookie Expiration 12 hrs

2.3.3: Set Profile Option Values at Responsibility Level

Follow the instructions given below to set profile option values for the required responsibilities at the responsibility level. These values have to be set for all the profile options mentioned in Table 1.

2.3.3.1: Using the Forms Interface

For example, to change the value for responsibility Manufacturing and Distribution Manager, perform the following steps:

  1. Login to Oracle E-Business Suite as sysadmin user using the main web entry point URL.
  2. Select the System Administrator Responsibility.
  3. Select Profile > System.
  4. From the 'Find system profile option Values' window, select the responsibility.
  5. To change values for all agent profile options, Query for %AGENT% and set the appropriate value to redirect the user to the manufacturing pool of servers.  Refer to the example shown below:

2.3.3.2: Using the Command Line Interface

To change the value for a responsibility , perform the following steps:

  1. Execute the SQL script afservrespval.sql
    $ sqlplus <apps-schema-name>/<apps-passwd> @<FND_TOP>/patch/115/sql/afservrespval.sql
  2. The script will prompt for the following values:
    • prof_name: profile option name (the value of PROFILE_OPTION_NAME column in the fnd_profile_options table)
    • resp_key: responsibility key (value of RESPONSIBILITY_KEY column in fnd_responsibility table)
    • appl_short_name: application short name (value of APPLICATION_SHORT_NAME column in fnd_application table)
    • node_name: node name (value of NODE_NAME column in fnd_nodes table)
    • prof_level_value: profile option value to be set

After completing the changes shown above, do the following:

  1. Run the AutoConfig utility on all the application tier servers.
  2. Restart application server processes.
  3. Test sign on from different entry points.

2.4: Using Domain Name Server (DNS) Load Balancing with Single Web Entry Point

The diagram shown below represents a DNS load balancing configuration with a single entry point to load balance the web application running on application tier servers appstier1.example.com and appstier2.example.com. In this configuration, all users access Oracle E-Business Suite applications via a single URL.

This configuration employs a load balancing process known as DNS round-robin, which utilizes a DNS function that allows more than one Internet Protocol (IP) address to be associated with a hostname. This will distribute traffic across the list of IP addresses associated with that hostname. For example, you could set up two application tier servers, appserver1 and appserver2, to share the load for the site dnslbr.example.com, where dnslbr is the name of the combined DNS server and load balancer, and example.com is the domain name.

After you have performed the necessary setup steps (a description of which is outside the scope of this document), you can verify the configuration of your DNS server by running the dig (DNS lookup utility) as shown in the following example:

dig dnslbr.example.com
;; QUESTION SECTION:
;dnslbr.example.com. IN A
;; ANSWER SECTION:
dnslbr.example.com. 10800 IN A <appserver1 IP address>
dnslbr.example.com. 10800 IN A <appserver2 IP address>

You can also use the nslookup command to check your DNS server setup:

nslookup dnslbr.example.com
Name: dnslbr.example.com Address: <appserver1 IP address>
Name: dnslbr.example.com Address: <appserver2 IP address>

To verify that DNS is routing requests correctly, enter the following commands in the sequence shown:

telnet dnslbr.example.com
Trying <appserver1 IP address>...
Connected to dnslbr.example.com.

telnet dnslbr.example.com
Trying <appserver2 IP address>...
Connected to dnslbr.example.com

From the above output, you can see that the first request was routed to appserver1's IP address, and the second request went to appserver2's IP address.

Note: Although DNS round-robin load balancing is a simple way to distribute traffic among several servers, it has several limitations. These restrictions include unpredictable load distribution; DNS caching issues by the browser; lack of fault tolerance; and local DNS servers not conforming to the standards and ignoring Time to Live values specified by the authoritative DNS servers.

The steps described in this section assume that you already have a multi-node Oracle E-Business Suite Release 12 installation.  Application Servers 1 and 2 will be configured to run the web application behind a DNS based load balancer.

2.4.1: Configuration Changes on the Application Tier

2.4.1.1: Update Applications Context File

Use the AutoConfig Context Editor to set the appropriate configuration values in the applications context file on servers 1 and 2. See Customizing AutoConfig-Managed ConfigurationsOracle E-Business Suite Setup Guide.

The table below describe how the context value should be changed when a load balancer is configured in front of application servers. For example:

  • Load Balancer Entry Point: dnslbr.example.com
  • Application Server 1: appstier1.example.com
  • Application Server 2: appstier2.example.com
  • Web Entry protocol: https
  • Application Tier Web Protocol: https
  • Application Tier Web Port: 443
  • Active Web Port:443
Context Variable NameContext Variable DescriptionOld Context ValueNew Context Value
s_webentryurlprotocolProtocol that desktop clients use to communicate with the web entry point serverhttphttps
s_webentryhostName of the host that receives the first HTTP request from the desktop client

appstier1 on Application Server 1

appstier2 on Application Server 2

dnslbr
s_webentrydomainDomain name of the host that receives the first HTTP request from the desktop clientexample.comexample.com
s_active_webportPort on the web server or load balancer that listens for HTTP requests443443
s_login_pageURL used to access the Applications logon page

http://appstier1.example.com:8050/OA_HTML/AppsLogin on Application Server 1

http://appstier2.example.com:8050/OA_HTML/AppsLogin on Application Server 2

https://dnslbr.example.com/OA_HTML/AppsLogin
s_external_urlURL that third party tools use to connect to the E-Business Suite System. This is used only by the Oracle Web Services product.

http://appstier1.example.com:8050/ on Application Server 1

http://appstier2.example.com:8050/ on Application Server 2

https://dnslbr.example.com/

The values listed for the context variables in the table above should only be used as a reference to change your applications context file. It is possible that system administrators may have changed the default values to perform other advanced configurations.

Note: DNS Load Balancing configuration requires Oracle HTTP Server to be configured on all nodes to avoid transaction state context loss (session loss) errors.

After completing the changes shown above, do the following:

  1. Run the AutoConfig utility on all the application tier servers.
  2. Restart application server processes.
  3. Test sign on from the web entry point.

Section 3: Configuring WebLogic Clusters

A WebLogic Server cluster consists of multiple WebLogic Server server instances running simultaneously and working together to provide increased scalability and reliability. A cluster appears to clients to be a single WebLogic Server instance. The server instances that constitute a cluster can run on the same machine, or be located on different machines. You can increase a cluster’s capacity by adding additional server instances to the cluster on an existing machine, or you can add machines to the cluster to host the incremental server instances. Each server instance in a cluster must run the same version of WebLogic Server.

A WebLogic Server cluster provides the following benefits:

  • Scalability — The capacity of an application deployed on a WebLogic Server cluster can be increased dynamically to meet demand. You can add server instances to a cluster without interruption of service, as the application continues to run without impact to clients and end users.

  • High Availability — In a WebLogic Server cluster, application processing can continue when a server instance fails. You “cluster” application components by deploying them on multiple server instances in the cluster. If a server instance on which a component is running fails, another server instance on which that component is deployed can continue application processing.

Oracle E-Business Suite Release 12.2 includes a restricted use license for WebLogic Server Basic. This is a license-constrained version of WebLogic Server that is available in licenses for certain Oracle products.

WebLogic Server is used in Oracle E-Business Suite Release 12.2 to support the following features:

  • WLS Clusters. Specifically, one WLS cluster per EBS domain.

  • Hardware-based load balancers in front of a WLS cluster in an EBS domain.

  • Use of the WLS proxy on an OHS server, directing load to one or more WLS instances on one or more managed servers in a WLS Cluster. The cluster is defined by AutoConfig via the configuration file deployed on the OHS server.

  • Session re-instantiation from one managed server to another managed server within the same cluster. Although transactions in progress during failure of one managed server will be lost, the user's session will be re-established and migrated to another managed server in the cluster.

3.1: Deployment Option with Single Web Entry Point and Multiple Managed Servers

3.1.1: Deployment Option with OHS Configured on Primary Node and  Managed Servers On Different Application Tier Servers

The diagram shown below represents a deployment model with a single web entry point for all  applications. The OPMN and OHS are configured on the Web Entry Point Server and the Managed Server and the associated processes are configured to run on the other application tier servers.The request from the client is received first by the Oracle HTTP Server and the weblogic proxy plugin module that runs inside the HTTP server routes the request to the available managed servers in a round robin fashion.

Note: When adding a node for this configuration, the pairs file used must contain the following:
s_web_applications_status=enabled
s_web_entry_status=enabled
s_apcstatus=disabled
s_root_status=enabled
s_batch_status=disabled
s_other_service_group_status=disabled
s_adminserverstatus=disabled

3.1.2: Deployment Option with OHS Configured on Multiple Nodes and Managed Servers On Different Application Tier Servers

The diagram shown below represents a deployment model with a single web entry point for all  applications. The OPMN, OHS and WebLogic servers  are configured to run on all the application tier servers.The request from the client is received first by a Load Balancing Router, and the requests are then routed to the Oracle HTTP Server based on the load balancing algorithm used by the load balancing router.

Note: When adding a node for this configuration, the pairs file used must contain the following:
s_web_applications_status=enabled
s_web_entry_status=enabled
s_apcstatus=disabled
s_root_status=enabled
s_batch_status=disabled
s_other_service_group_status=disabled
s_adminserverstatus=disabled

You can also choose to split the Managed Servers namely oacore, forms, oafm and forms-c4ws onto different application tier nodes as shown below:

Appendix A: Related Documentation

No comments:

Post a Comment

Oracle E-Business Suite Release 12.2 System Schema Migration

In This Document Section 1: Overview of the EBS System Schema Section 2: Requirements for Using the EBS System Schema Section 3: Migrating t...