You are on page 1of 26

Installing AIA Foundation Pack on Oracle SOA Suite

Cluster Deployments
Applicable to Foundation Pack Releases - versions 2.1 and 2.2
Applicable to SOA Suite 10.1.3.3 and above running on Oracle Application Server 10gR3 (OC4J)
(Oracle Metalink Note: 731120.1)

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
1. INTRODUCTION ............................................................................................................................. 3
2. SOFTWARE PRE-REQUISITES ................................................................................................... 5
3. TOPOLOGIES .................................................................................................................................. 6
3.1 TOPOLOGY A ............................................................................................................................... 6
3.2 TOPOLOGY B ............................................................................................................................... 9
3.3 ORACLE SERVICE REGISTRY TOPOLOGY CONSIDERATIONS ........................................................ 9
3.4 ENSURING THAT THE SOA CLUSTER IS SETUP CORRECTLY ........................................................ 10
3.5 DOCUMENT REFERENCES .......................................................................................................... 12
4. PRINCIPLES BEHIND INSTALLATION OF AIA ARTIFACTS ON SOA CLUSTER ....... 13
5. INSTALLATION STEPS ............................................................................................................... 15
5.1 PRE-INSTALL ACTIONS .............................................................................................................. 15
5.2 ON APPHOST2 ........................................................................................................................ 16
5.3 ON APPHOST1 ........................................................................................................................ 19
5.4 ON WEBHOST1, 2 (ONLY IN THE CASE OF TOPOLOGY A) ........................................................ 21
5.5 POST INSTALL ACTIONS ............................................................................................................ 22

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
1. Introduction

Oracle Application Integration Architecture (AIA) Foundation Pack is a comprehensive SOA based integration
product from Oracle that not only provides an architecture blue print for true SOA based integration of
enterprise applications, but also pre-built standards-based content required for integration and Programming
Models to achieve superior performance, scalability, extensibility, security etc.
In addition, AIA Foundation Pack (AIA FP) contains inbuilt tools for SOA governance, Integration validation,
error handling etc making it a comprehensive Integration Product for enterprises to jump start on Integration
initiatives. AIA FP runs on Oracle Fusion Middleware (FMW)
AIA Process Integration Packs (AIA PIPs) are pre-built end-to-end integrations built on AIA Foundation Pack.
PIPs are products that implement a specific set of business process between a specific set of Applications
(Oracle E-Business Suite, Siebel, SAP etc). Besides providing immediate value, PIPs derive all the principles
and infrastructure from FP, there by delivering a complete SOA implementation along with superior ownership
experience.

Figure1: AIA products and their relationships

Deploying AIA to a highly available enterprise deployment provides the following distinct advantages.
Because AIA integrates business-critical Enterprise software, it is important to ensure that there is no
single point of failure and that system maintenance and failure recovery can happen without
impacting the business.
Workload can be distributed effectively to multiple nodes allowing for optimal usage of resources.
New resources can be added or removed easily. For example, an Order to Cash Integration could
need more resources during a specific season of the year

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
Specific process flows can be provisioned more resources than other based on the kind of operation
it performs and the frequency of use.
High availability is ensured at all levels (web tier, application tier and database tier). Application and
data tiers are also secured as they lie within firewalls.

This document will detail how to install AIA Foundation Pack on a Highly Available SOA deployment (SOA
Cluster)
As mentioned earlier, AIA FP runs completely on Oracle SOA Suite and the underlying FMW
infrastructure. For this reason, AIA FP High Availability is directly derived from the underlying
enterprise deployment topology implemented for SOA Suite and the data tier.
Please refer Oracle Application Server 10gR3 Enterprise Deployment Guide to learn more.

AIA FP is composed of several BPEL/ESB processes, configurations, WSDLs/XSDs, queues, database


objects, J2EE applications etc. all of which are artifacts created or configured on FMW.
Since these artifacts are large in number and have dependencies, AIA provides a wizard-based Installer that
collects the software information and kicks off several install scripts and tools to deploy and configure all
these artifacts automatically, thereby providing an out-of-the-box experience for customers.
The installer is however built for single server installations. Therefore, to deploy AIA FP to Highly Available
topologies, the underlying install scripts need to be executed manually.
There are some special considerations when deploying AIA to the SOA HA deployment. These are explained
in section 3 and section 4 of this document
This document provides step-by-step instructions to manually deploy AIA FP on a given HA deployment of
SOA Suite. When providing the steps we will constantly refer to the topology and AIA considerations sections
there by allowing users to extrapolate the instructions if they have a different topology.
Note: Instructions for Installing a PIP on a Highly Available Foundation Pack installation is available on
Metalink and must be performed after completing the steps in this document.

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
2. Software pre-requisites

The following are the basic Software applications required for an AIA Installation.
Oracle SOA Suite10gR3 (10.1.3.x) Oracle SOA Suite, J2EE server, HTTP Server
Oracle Database (10.2.0.1) Refer Application Server certification matrix to know all supported
database versions
Oracle Service Registry 10.1.3.0
The above information is dependent on the version on AIA Foundation Pack that is being installed. Refer AIA
Installation Guide on Oracle Metalink to know the exact software requirements
Please review Chapter 1 and Chapter 2 of the AIA Installation Guide to understand the basics of AIA
Installation.
It is required that you have set up the SOA Suite Cluster as per the Enterprise Deployment Guide before
attempting the steps provided in this document. Alternatively you can set up a simpler topology as mentioned
in the Topology section of this document.

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
3. Topologies

The Enterprise Deployment Guide provides a reference topology that ensures that the SOA deployment is
highly available at all tiers (Web tier, Application Server Tier, Data tier and Security tier).
As the EDG rightly points out there are several variations possible to the proposed topology depending upon
user requirement.
For the purpose of this document, we would provide 2 variations
Topology A High Availability at all tiers (reference topology used in EDG)
Topology B Highly available only at Application tier (Simpler to implement)
This document would provide steps for both topologies. Once you choose your topology, follow the
appropriate sections in this document
For any other topology apart from the above, you can easily extrapolate the required steps based on the
explanation.

3.1 Topology A
In this topology the load balancer accepts external requests and in turn redirects requests to Oracle HTTP
servers (Apache Servers). These HTTP servers in turn point to one of the Application Server nodes that host
BPEL/ESB and other J2EE applications. The Application Sever nodes in turn point to an Oracle RAC
database.
Please refer figure 2, to see a complete representation of this topology. In addition, the figure also provides
summary information of different AIA artifacts to be installed at each tier

Load Balancer Balances external requests to one of the Oracle HTTP Servers (WEBHOSTn).
There would be two virtual hosts one for external requests that use HTTPS: 443 called the
soa.mycompany.com and an internal virtual host soainternal.mycompany.com

WEBHOST1/WEBHOST2 Servers that run Oracle HTTP servers in their Oracle Homes. Requests
are redirected to the APPHOSTn
This is where AIA Enterprise object library artifacts like EBO, EBS etc.(which are XSDs and WSDLs)
reside

APPHOST1/APPHOST2 - Servers that host Oracle SOA Suite Applications and the underlying J2EE
server infrastructure.
In this document we will consider only BPEL and ESB applications of SOA Suite. For other
applications such as OWSM, there are no AIA artifacts to be deployed. So please refer the Enterprise
Deployment Guide directly and follow SOA Suite best practices.
This tier hosts AIA delivered BPEL/ESB processes, J2EE applications, datasource configurations etc.
AIA Home will be made available in each host. AIA Home is more of a design time repository of
contents that are deployed to the OracleAS Oracle Home (called SOA HOME here). There are some
run-time dependencies with AIA Home as well, making it necessary to be on each server.

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
DBHOST1/DBHOST2 Servers that host the instances of the RAC database. This is used as a
dehydration store for SOA. The same database can also store AIA specific data like XREF,
CAVS/BSR data, AIA Queues etc.
OID is not considered in this topology, as there are no AIA specific considerations. Please follow the
SOA Suite best practices.

DBHOST3/DBHOST4 It is not necessary to use the SOA database for AIA schema/data also.
Users can optionally choose to use another database to store AIA specific data like XREF,
CAVS/BSR data, AIA Queues etc.

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
Figure 2: Topology A for AIA Foundation Pack deployment

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
3.2 Topology B
In this topology the load balancer accepts external requests and in turn redirects requests to servers that host
both Oracle HTTP Server and BPEL/ESB applications in the same Oracle Home. The Application Sever
nodes in turn points to a single Oracle database that stores both AIA and SOA data. The Load balancer has
one virtual host to redirect incoming requests to one of the two servers

Figure 3: Topology B for AIA Foundation Pack deployment

3.3 Oracle Service Registry Topology Considerations


As a part of AIA Installation AIA services (EBO, EBS, ABCS etc) are published to BSR (Business Service
Repository) and OSR (Oracle Service Registry).
BSR is an AIA delivered repository and is AIAs key value proposition for SOA governance. BSR provides
both design time and run time information about services, and models their interdependencies to represent
AIA process flows and PIPs.

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
BSR infrastructure is composed of J2EE applications and Database artifacts. AIA Foundation Packs
EBO/EBS are represented in this infrastructure and PIPs will use BSR to publish metadata about PIP specific
services and their inter-dependencies.
Installation of BSR infrastructure is mandatory and is automatically installed with AIA Foundation Pack
installation.

OSR on the other hand is a separate Oracle product that is used to publish run-time information about raw
services that make up AIA. Services thus published can be discovered across the enterprise.
OSR will contain information of all EBS and ABCS service implementations.
OSR is deployed as an application in oracle SOA Suite.
Registry should be installed in the same Application Server that hosts AIA BPEL/ESB processes

Figure 4: OSR deployment in APPHOST

In addition, Oracle Service Registry product also provides ways to achieve clustered OSR implementations
thereby providing high availability for registry access. This is optional.
Note: AIA has no run-time dependency on OSR
More information is available at http://www.oracle.com/technology/tech/soa/uddi/osr_cluster_config.pdf

3.4 Ensuring that the SOA cluster is setup correctly

The following are basic verification steps (not comprehensive) to ensure that your SOA cluster is setup
correctly as per the EDG.
Navigating to the BPEL, ESB consoles successfully using the external Load Balancer URL as well as
each of the internal virtual host.
Ensuring that the EM console shows all participating nodes in active state. There must be only one
Active Design time.
Ensure that ESB Design-time is completely up and running by accessing the following URL
http://host:port/esb/dtStatus.jsp. This page should return a true

10

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
Deploying a sample BPEL process (shipped with BPEL) and a sample ESB process (again shipped
with ESB) and ensuring that it is successfully deployed on the SOA cluster (available on both
APPHOST1 and APPHOST2)
Create a sample system from ESB Console.

After you complete, remember to undeploy the samples and delete the previously created system.

Verify that you dont have any existing applications in your SOA cluster starting with default_
For example if you had deploy the LoanFlow demo, it wouldve created such applications. To check
this
Open the EM Console
Navigate to the container
In the Applications tab, drill down from BPEL>orabpel.
Select any application starting with default_ and undeploy

Use HTTP monitoring to ensure that both HTTP Servers serve requests
Accessing RAC database using a tool like TOAD to perform successful query, insert operations
(using individual DBHOST TNS entries as well as RAC TNS entry)
Ensure that all other configuration (like updating ESB metadata, Configuring slide repository etc) is
performed correctly as per the Enterprise Deployment Guide.
As per the Enterprise deployment guide ensure that the soapServerURL is set to internal virtual host
http://soainternal.mycompany.com and the soapCallbackUrl to external virtual host
http://soa.mycompany.com
If you are not using SSL for external access, both these properties should point to
http://soainternal.mycompany.com
Ensure that the cluster flag is set to true

Enable directory browsing in the Apache server of both WEBHOST1 and WEBHOST2 by editing the
httpd.conf file. This file is at <SOA_HOME>/Apache/Apache/conf/httpd.conf.

To edit the httpd.conf file:

Open the file using a text editor, such as vi.


Search for Options FollowSymLinks MultiViews. There are two occurrences.
Add the word Indexes to the end of Options FollowSymLinks MultiViews for the second
occurrence.
After adding it, the text looks like this: Options FollowSymLinks MultiViews Indexes
Restart the HTTP server

11

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
3.5 Document References
Oracle AIA Installation Guide: Available on Oracle Metalink
Oracle Application Server 10gR3: Enterprise Deployment Guide -
http://download.oracle.com/docs/cd/E10291_01/core.1013/e10294.pdf

This document does not address clustering at data-tier, Security considerations, disaster recovery etc.
This is because there are no AIA considerations or special recommendations required. More information
on these topics can be found at the respective product documentation locations:
a. Security in Clusters: http://download.oracle.com/docs/html/A96687_01/manage.htm
b. Database clustering:
http://www.oracle.com/technology/products/database/clustering/index.html
c. Disaster Recovery:
http://download.oracle.com/docs/cd/B14100_14/install.1012/install/ha_dr.htm

12

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
4. Principles behind Installation of AIA artifacts on SOA Cluster

As mentioned in the beginning of this document, AIA is collection or pre-orchestrated SOA artifacts like
BPEL/ESB processes, queues, J2EE applications, relevant configurations etc.
Clustering each of these components is well defined in SOA Clustering documentation. However there are some
special considerations that need to be taken when attempting to install these components to form a complete AIA
installation.
This section provides information on the consideration for each AIA artifact type. These are the principles that are
used to derive the manual installation steps in the rest of this document. We would continue to refer points A to E
listed below in later sections of the guide. Understanding this well, will allow you to extrapolate the steps of any
SOA topology that you could employ.

At a high-level installation of AIA can be split into the following categories. The requirement of AIA installation and
the consideration that must be made for cluster installation is also mentioned for each of these categories.

A. Creating the AIA Home AIA Home holds all the content that Oracle ships for a specific AIA product. It
is primarily a design time store but has minor runtime dependencies. Users choose this directory during
AIA installation using the UI.
AIA Requirement Content from this folder is deployed to SOA Home as a part of a typical AIA
installation.
Cluster Considerations Because of run-time dependencies (and other considerations), it is
currently required that all nodes of the cluster must have an AIA Home. This folder also holds the
installation scripts that we will manually edit in the later steps of this document.
B. EOL (Enterprise Object Library) content This is the set of schema and wsdl files that forms the core
of AIA. All BPEL/ESB processes access these objects
AIA Requirement The objects have to be installed in the webserver of each node. They will be
accessed using the URL as http://host:port/AIAComponents/
Cluster Consideration The EOL content should be physically copied to each HTTP server
(http://webhostn.mycompany.com)
The URL used by AIA processes to access the EOL content must be the internal virtual host of
the load balancer (http://soainternal.mycompany.com) and not the URL of the individual HTTP
servers

C. Database operations This includes creation of the AIA Schema and relevant tables like XREF,
CAVS/BSR tables etc.
AIA Requirement Each node will access the same database (or RAC) and the same set of
tables
Cluster Consideration When installing AIA on each node, we must attempt this set of actions
only once. If this is done again, errors will occur since the schema and its user and roles have
already been created.
D. BPEL/ESB process These services together form an end-to-end integration, In addition to that we
have BPEL/ESB processes as a part of AIA Foundation Pack that are related to Error Handling etc.

13

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
AIA Requirement These services must be made available in each node. However the endpoint
location used to accesses these services should use the loadbalancer URL. This way,
invocations to this service and invocations from this service will always be load balanced.
Cluster Consideration BPEL/ESB Clustering mechanism in SOA Suite version 10.1.3.3 provides
the feature that allows deploying BPEL/ESB to only one node of the cluster will propagate the
processes to all other active nodes. When nodes that are down are brought alive the processes
are also deployed onto them automatically.
So from an AIA installation perspective it is sufficient to deploy BPEL/ESB processes to one node
of the cluster.
Note: BPEL/ESB process will call other BPEL/ESB processes using the LoadBalancer URL.
However during the execution of a single flow, BPEL services (if developed following the AIA
Integration Developers Guide) will not call the subsequent services on other nodes because they
would be configured to make native calls although they refer services using the Load Balancer
URL
E. Other AIA artifacts This is the set of Queues/ MDBs/ Data Sources/ J2EE applications etc
AIA Requirement Each node of the cluster most posses these artifacts
Cluster Consideration Clustering in SOA Suite version 10.1.3.3 provides JGroups that allows
the creation of all these artifacts on all active nodes when attempting to install in one node (using
Cluster URI). However, because the current AIA installer scripts do not support direct cluster
deployment of J2EE artifacts, we would be creating these artifacts on each node separately.

14

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
5. Installation Steps

The following is the high level steps that we will be performing to complete installation and is applicable to
both Topology A and B
Perform Pre-install steps
On APPHOST2, we would execute the installation scripts manually. The scripts we execute would
correspond to steps A, B and E of section 4.
On APPHOST1, we would use the AIA Installer to cover all steps (A, B, C, D and E) mentioned in
section 4.
On WEBHOST2 and WEBHOST1 we would copy the required HTTP content into these hosts,
covering step B of section 4 in each node.

This step is required only in the case of Topology A

Perform Post install steps

The above order is important for successful installation

Important: In the case of Topology A it is required that HTTP Server actually be present in
APPHOST1. We will use it only during installation.
Later when we move to WEBHOST1, we would disable this HTTP Server so that the HTTP
Server in WEBHOST is used at runtime

5.1 Pre-Install Actions

1. AIA Installer tries to configure its ErrorHandlingMDB to listen to AS JMS (in-memory). When performing a
cluster-install of SOA Suite as per instructions in the Enterprise Deployment Guide, the ESB_ERROR
topic will be hosted by AQ, and the resource adapter will be OracleOJMS, so that both nodes use a
common version. However, by design AIA Installer looks only for the in-memory OracleASjms
To work around this known issue, a dummy error topic is created so that the AIA Installation goes through
and once the installation is complete, the MDB will be configured to use the AQ based JMS instead of this
dummy topic.
Follow the following steps to create the dummyerror topic.
In the Enterprise manager, click on the oc4j_soa >administration>JMS Destinations.
In the JMS Destinations screen, click the create button.
Choose Type as Topic
For Destination Name, enter ESB_ERROR_DUMMY
For JNDI entry, enter jms/topic/ESB_ERROR
Click on OK
2. Perform the above step on both nodes.
15

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
5.2 On APPHOST2

1. Keep both the nodes up and running. Make sure that the ESBDT container is down on APPHOST2 and
alive in APPHOST1. All other containers have to be alive (including http server on each node). For this
execute the following command from the folder <soahome>/opmn/bin (assuming linux server)
./opmnctl @cluster status

2. Create a directory for AIA_HOME and navigate into the directory. Execute the following command. This
should provide you the raw AIA_HOME containing scripts we would modify.
For linux: jar xvf
<AIA_INSTALL_IMAGE>/Disk1/stage/Components/oracle.aia.fp/2.1.0.0.0/1/DataFiles/filegroup1.jar

For Windows: Use unjar utilities to unjar


<AIA_INSTALL_IMAGE>\Disk1\stage\Components\oracle.aia.fp\2.1.0.0.0\1\DataFiles\filegroup1.jar into the desired
AIA_HOME
The text in bold in the path above will vary depending on the version of Foundation Pack that you are
using. For example in the case of Foundation Pack 2.2 it would be oracle.aia.fp.base\2.2.0.0.0
3. From metalink note# 731120.1copy the deploy.properties_FP_version file template applicable to your
version of AIA. Copy this file to the location, AIA_HOME/config and rename the file as deploy.properties
4. In the deploy.properties file, make sure you set http.host name/port to the virtual host details
(soainternal.mycompany.com)
For the http.host/http.port provide the internal virtual host details
(soainternal.mycompany.com)

16

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
For the database provide the details of the Database that you want to host AIA artifacts. This
can be the same as SOA database or a separate database as mentioned in the Topologies
Section of this document.
If you are using RAC provide the information of one of the instances that is a part of the RAC.
For example in deploy.properties of APPHOST1 use DBHOST1 SID and for APPHOST2 use
DBHOST2. Later we will modify references of data-sources and connection pools to point to
RAC

The port information should be available from the runtime port information on em console

Use oc4j_soa for the instance name. (Note: This must be the instance running BPEL)
For the service registry details, provide the information of the container where service registry
is installed.
5. In the ant-orabpel.properties file (found in the directory <SOA_HOME>/bpel/utilities) ensure that:

hostname=soainternal.mycompany.com

http.port=7777 (internal LBR port)

cluster= false

oc4jinstancename = the OC4J instance where BPEL is installed. Example oc4j_soa for this
topology. This should NOT be the soa_group OC4J container of the cluster

j2ee.hostname= The host name of APPHOST2

asinstancename= (this setting should not have a value. It should be blank.)

17

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
6. Ensure that the soapServerURL and the soapCallbackUrl point to the same value as the load balancer
internal URL (http://soainternal.mycompany.com) using the BPEL Admin Console.
The BPEL Admin can be accessed using http://apphost2.mycompany.com:7777/BPELAdmin

7. Complete the following


Open the file aiaenv.sh (aiaenv.bat in the case of Windows) under AIA_HOME/bin.
Set the values for all properties like aia_home, ant_home, oracle_home, java_home,
oracle_registry_home, aia_instance (<oracle_home>/j2ee/<container where BPEL is
located>/applications)
Execute the following command
source aiaenv.sh (linux)
aiaenv.bat (windows)
cd ANT_HOME/bin
chmod 775 *

8. Execute the following scripts one after the other, while being in the
AIA_Home/Insfrastructure/install/scripts directory.
ant --noconfig -buildfile FPCommonConfig.xml replaceFPInstallProperties
ant --noconfig -buildfile FPConfiguration.xml CommonConfigurations

9. This will complete the file copy into Oracle Home as well as to the webserver Apache/htdocs. This
completes step A and B of section 4.
10. Set the httphost name/port in the ant-orabpel.properties file to apphost2.mycompany.com/port. Retain
other values as is.
11. Set the httphost name/port in the file deploy.properties (under AIA_Home/Config folder) to
apphost2.mycompany.com/port. Retain other values as is.
12. Now we need to create/deploy Datasources, Connection pools, AIA j2ee application/servlet and
Errorhandling MDB.
13. Execute the following scripts one after the other, while being in the
AIA_Home/Insfrastructure/install/scripts directory
ant --noconfig -buildfile FPCommonConfig.xml replaceFPInstallProperties
ant --noconfig -buildfile FPCommonConfig.xml CreateCommonDatasources
18

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
ant --noconfig -buildfile FPCAVSInstall.xml createSchedulerDataSource
ant --noconfig -buildfile FPErrorHandlingInstall.xml DeployESBErrorListenerMDB
ant --noconfig -buildfile FPCAVSInstall.xml DeployAIAUI

14. You should see connection Pools, data sources, MDB etc

15. This completes step E of section 4.


16. On APPHOST1, when you check the EM console, no configurations (connection pools, datasources,
MDB etc.) should have been created.
17. In case you see any of them, manually undeploy them using the undeploy actions on EM.
18. Now bring down APPHOST2 (including http server) by executing the following command:
<soa_home>/opmn/bin/opmnctl stopall

5.3 On APPHOST1

1. Ensure APPHOST2 is down by executing the following command


./opmnctl @cluster status from the folder <soahome>/opmn/bin
2. On APPHOST1, ensure that the ant-orabpel.properties mentions http host name/port as APPHOST1 and
have the cluster set to false.

hostname= The host name of APPHOST1

http.port=port of APPHOST1

cluster= false

oc4jinstancename = the OC4J instance where BPEL is installed. Example oc4j_soa for this
topology. This should NOT be the soa_group OC4J container of the cluster

j2ee.hostname= The host name of APPHOST1

19

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
asinstancename= (this setting should not have a value. It should be blank.)
3. In the BPEL Admin Console, make sure that the SoapServerURI and SoapCallBackURI are set to
APPHOST1 and enableCluster as false. Note that in APPHOST2, the load balancer URL was used for
the SoapServerURI and SoapCallBackURI.

4. In APPHOST1 create an empty file called httpd.conf in the folder <SOA_HOME>/Apache/Apache/htdocs

This step is required only in the case of Topology A

5. Now, use the AIA Installer and install Foundation Pack in an AIA_HOME of your choice. We would
recommend you to have a symmetric folder structure across the nodes.
Important: Please refer the AIA Installation Guide for information on the pre-requisites steps and
instructions to complete the installation
6. Launch the OUI installer. On the installer use APPHOST1 details for the host name and port. Use
oc4j_soa for the instance name. (or the name of your instance running BPEL)
7. For the database information provide the information of DBHOST
8. In the service registry screen provide the information of the Service registry. We would be performing
publish only from this node.
9. Once the installation is complete, verify if all AIA processes were deployed as per installation guide
verification chapters. Verify if AIA Connection pools and AIA data sources are created.
10. You need to redeploy using the following MDB. The MDB patch is available on metalink (Patch number
8331119)
11. Once you apply the patch, From AIA_HOME/bin directory run the following command.
source aiaenv.sh
12. Execute the following command, being in the AIA_Home/Insfrastructure/install/scripts directory
ant --noconfig -buildfile FPErrorHandlingInstall.xml DeployESBErrorListenerMDB
13. Undeploy the BPEL processes (we need to redeploy them with LBR details)
ant --noconfig -buildfile FPDiagnosticsUninstall.xml undeployDiagnosticsServices
ant --noconfig -buildfile FPCAVSInstall.xml undeployCAVSServices
ant --noconfig -buildfile FPErrorHandlingUninstall.xml undeployEH
14. Now, copy the contents of <SOA_HOME>/Apache/Apache/htdocs/AIAComponents recursively (include
all subfolders and their contents) from APPHOST2 (=WEBHOST2) to APPHOST1(=WEBHOST1). If
asked to overwrite any files on APPHOST1 choose the option to overwrite them all. This is done to
ensure that the EOL content reflects the load balancer URL and not the APPHOSTn URL.
15. Similarly, copy the contents of <SOA_HOME>/Apache/Apache/htdocs/AIAComponents recursively from
APPHOST2(=WEBHOST2) to the AIA_HOME/AIAComponents folder of APPHOST1
16. Now that the installation is complete, access the BPEL Admin Console, change back the SoapURI and
SoapCallBackURI to http://soainternal.mycompany.com and set the property:
enableCluster = true
20

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
17. Set back the httphost name/port in the ant-orabpel.properties file to soainternal.mycompany.com/port.
Retain other values as is.
18. Set back the httphost name/port in the file deploy.properties (under AIA_Home/Config folder) to
soainternal.mycompany.com/port.
Modify j2ee.hostname value from ${http.hostname} to APPHOST1.
Retain other values in the deploy.properties file as is.
19. Perform the following steps.
Navigate to the folder AIA_HOME/util/DeployTool/BpelCopy

Open the file build.xml and search for the string Process deployment targets. Remove ,
bsrpublish and save the file

Navigate to the folder AIA_HOME/util/DeployTool/ESBCopy


Perform the same operation of removing bsrPublish from list of targets in the build.xml file
In the AIA_HOME/util/DeployTool/ directory, open the file Tokenizer.properties if your installation
is AIA FP 2.2 (AIABuild.properties for AIA FP 2.1)
In this file, provide the values for the following three properties and save
o aia.home= <your AIA_HOME>/Infrastructure
o ESB_COPY_FOLDER = <your AIA_HOME>/util/DeployTool/EsbCopy
o BPEL_COPY_PATH= <your AIA_HOME>/util/DeployTool/BpelCopy
Run the following commands one after the other
ant --noconfig runesb
ant noconfig runbpel
20. Navigate to the folder AIA_Home/Insfrastructure/install/scripts. Deploy the BPEL processes using the
following commands
ant --noconfig -buildfile FPDiagnosticsInstall.xml deployDiagnosticServices
ant --noconfig -buildfile FPCAVSInstall.xml deployCAVSServices
ant --noconfig -buildfile FPErrorHandlingInstall.xml deployEHServices

21. Restart APPHOST1 after making the above changes


22. Now bring up APPHOST2. This should propagate all BPEL process to APPHOST2.
23. Verify that the AIA datasource, and AIA connectionpool exist on APPHOST2.

5.4 On WEBHOST1, 2 (only in the case of Topology A)

We will copy the HTTP content created in the Apache folder on APPHOST2 , to the real Apache folders on
WEBHOST1 and WEBHOST2.
21

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
1. From the directory <SOA_HOME>/Apache/Apache/htdocs on APPHOST2, copy recursively (include all
subfolders and their contents) to the same directory structure under WEBHOST1. If asked to overwrite
any files choose the option to overwrite.

2. Similarly, from APPHOST2, copy the contents from the directory <SOA_HOME>/Apache/Apache/htdocs
recursively (include all subfolders and their contents) to the same directory structure under WEBHOST2.
If asked to overwrite any files choose the option to overwrite.
3. Restart the HTTP server of both WEBHOST1 and WEBHOST2

5.5 Post Install Actions

1. In APPHOST2s EM console, if you drill down into the oc4j_soa container, you would NOT find the
Taskforms deployed.

2. Now on APPHOST2, execute the following command from AIA_HOME/bin directory


source aiaenv.sh
3. Open the AIAErrorTaskAdminstrationProcess folder under AIA_HOME/Infrastructure/ErrorHandling
folder.
4. Execute from the same folder
ant noconfig deploytaskform
5. This should deploy two task form processes on APPHOST2.
6. You need to redeploy using the following MDB on APPHOST2. To do this,
Copy the file ESBErrorListenerMDB.ear from the folder AIA_HOME/Infrastructure/install/applications
on APPHOST1 to the same folder on
7. Execute the following command,
Being in the AIA_HOME/bin directory
source aiaenv.sh
Being in the AIA_HOME/Insfrastructure/install/scripts directory
ant --noconfig -buildfile FPErrorHandlingInstall.xml DeployESBErrorListenerMDB
8. On APPHOST1, navigate to the AIAReadJMSNotification process folder under
AIA_HOME/Infrastructure/ErrorHandling
9. In the bpel folder open the consumeFaultMsg.wsdl
22

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
10. Add the following tag
DurableSubscriber="AIAReadJMSNotificationAgent"
after DestinationName="java:comp/resource/AIA_ERROR_JMS/Topics/AIA.AIA_ERROR_TOPIC"
11. Open the file, AIA_HOME/Infrastructure/Errorhnadling/AIAReadJMSNotificationProcess/bpel/bpel.xml
Add the bolded line in the activationAgents existing snippet. The string for clusterGroupId can be
anything
<activationAgents>
<activationAgent className="oracle.tip.adapter.fw.agent.jca.JCAActivationAgent"
partnerLink="consumeFaultMsg">
<property name="portType">Consume_Message_ptt</property>
<property name="clusterGroupId">MyCluster</property>
</activationAgent>
</activationAgents>
12. Repeat steps 8 to 11 on APPHOST2
13. Open the ESB Console and verify the details of each of the systems (AIASystem, DefaultSystem and
BPELSystem).
The Values must be as follows. If not, please change as follows and press Apply
Cluster Name: The value defined for Cluster Name in
<SOA_HOME>/integration/esb/config/esb_config.ini or the value in
<SOA_HOME>/j2ee/<container>/applications/esb-rt/META-INF/orion-application.xml
Virtual Host: Load Balancer URL
Port: Load Balancer Port number

Topic Location and Connection Factory Location: The value for JMS Topic should be the
same as the one that is set as DEFERRED_TOPIC in ESB_PARAMETER table
DT_OC4J_HOST.
Normally, these values would be ESBTopics/Topics/ESB_JAVA_DEFERRED and the factory is
OracleOJMS/XATCF
Number of Listeners: The value would be 1

14. Unjar the ESBErrorListenerMDB.ear from the folder AIA_HOME/Infrastructure/install/applications.


jar xvf ESBErrorListenerMDB.ear
15. Update the ejb-jar.xml as follows
<activation-config-property>
<activation-config-property-name>SubscriptionDurability</activation-config-property-name>
<activation-config-property-value>Durable</activation-config-property-value>
</activation-config-property>
<activation-config-property>
<activation-config-property-name>ClientId</activation-config-property-name>
23

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
<activation-config-property-value>AIAESBErrorListenerMDB</activation-config-property-value>
</activation-config-property>
<activation-config-property>
<activation-config-property-name>SubscriptionName</activation-config-property-name>
<activation-config-property-value>AIAESBErrorListenerMDB</activation-config-property-value>
</activation-config-property>

16. jar the ear again after this change


jar cvf ESBErrorListenerMDB.ear

17. Deploy ESBErrorListenerMDB.ear using the following command from


AIA_Home/Insfrastructure/install/scripts
ant --noconfig -buildfile FPErrorHandlingInstall.xml DeployESBErrorListenerMDB

18. On both APPHOST1 and APPHOST2, change the MDB to point to the AQ based ERROR TOPIC
rather than the dummy TOPIC.
In the enterprise manager click oc4j_soa container.
Click on Applications > Middleware Services>BPEL>orabpel>ESBErrorListenerMDB
In the Modules section, click on the EJB module ESBErrorListenerMDB
Under Message Driven Beans, click on thestop button.
Click on the configure message listener properties button.
Enter ConnectionFactoryJndiName = OracleOJMS/TCF
Enter DestinationName = java:comp/resource/esbRP/Topics/ESB_ERROR
If the MDB is not already started click on Start

19. If you were using RAC database, then you need to ensure that AIA related datasources and
connection pools point to the RAC URL
On the EM console, navigate to the JDBC resources of the oc4j_soa container and modify
AIAConnection pool information as follows.
Change the JDBC URL to RAC format. Typically this would be of the format
jdbc:oracle:thin:@(DESCRIPTION=
(LOAD_BALANCE=on) (ADDRESS=(PROTOCOL=TCP)(HOST=host1) (PORT=1521))
(ADDRESS=(PROTOCOL=TCP)(HOST=host2)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=service_name)))
Ensure that these are the values in both APPHOSTs
Additionally, in the AIAConfigurationProperties.xml file) found in AIA_HOME/config) make sure that
the EH.AQ.DB.XX details are set as the individual nodes of the RAC.
So in APPHOST1 set it to one node of the RAC. In the same file in APPHOST2 set the properties to
the other node of the RAC.

20. In both APPHOST1 and APPHOST2, verify the following values

24

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
In the ant-orabpel.properties file (found in the directory <SOA_HOME>/bpel/utilities) ensure
that:
o hostname=soainternal.mycompany.com

o http.port=7777 (internal LBR port)


o cluster= false

o local.oc4jinstancename= the OC4J instance where BPEL is installed. Example


oc4j_soa for this topology. This should NOT be the soa_group OC4J container of
the cluster
Note: This property should be manually added
o oc4jinstancename = This should be the soa_group OC4J container of the cluster

o j2ee.hostname= The host name of APPHOST1 OR APPHOST2


o asinstancename= (this setting should not have a value. It should be blank.)

In deploy.properties file (found in the directory <AIA_HOME>/config) ensure that:


o hostname=soainternal.mycompany.com
o http.port=7777 (internal LBR port)
o j2ee.hostname= APPHOST1 OR APPHOST2

21. Ensure that the soapServerURL is set to internal virtual host http://soainternal.mycompany.com and
the soapCallbackUrl to external virtual host http://soa.mycompany.com in both APPHOST1 and
APPHOST2
If you are not using SSL for external access, both these properties should point to
http://soainternal.mycompany.com
Ensure that the cluster flag is set to true

22. On APPHOST2, Open the EM Console, click on the oc4j instance where the AIA installation was
performed (oc4j_soa), click on the Administration tab and then click on the server properties button.
On the screen, under Command Line Options add a new row, with the following value
-Daia.home=<Complete path to your AIA_HOME>

25

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1
23. Copy the file AIAConfigurationProperties.xml from AIA_HOME/config file on APPHOST2 to the same
location on APPHOST1
24. Restart APPHOST1 and APPHOST2.
25. Verify that the esbdt container is down in one node and up in the other.

This completes the installation.

26

Installing AIA Foundation Pack on Oracle SOA Suite Cluster Deployments


Oracle Metalink note#731120.1