Oracle® Fusion Applications Customer Relationship Management Enterprise Deployment Guide 11g Release 5 (11.1.5) Part Number E16684-13 |
|
|
PDF · Mobi · ePub |
This chapter describes how to scale out the Oracle Fusion Customer Relationship Management domain.
This chapter includes the following topics:
Section 8.1, "Overview of the Oracle Fusion Customer Relationship Management Domain"
Section 8.3, "Adding a New Machine in the Oracle WebLogic Server Console"
Section 8.4, "Packing and Unpacking the Managed Server Domain Home"
Section 8.5, "Cloning Managed Servers and Assigning Them to CRMHOST2"
Section 8.8, "Configuring Server Migration for the Managed Servers"
The Oracle Fusion Customer Relationship Management application is a very distributed and modularized one. Applications within Oracle Fusion Customer Relationship Management, which are deployed on the domain, are the following:
Marketing
Sales
Territory Management
Customer Management
Order Capture
Email Marketing
OutLook/Mobile
CRM Common
In addition to the applications, the Oracle Fusion Customer Relationship Management domain also contains Oracle Fusion Customer Relationship Management Analytics, which is the Oracle BI Enterprise Edition broker application that interfaces with Oracle Application Development Framework, Oracle BI Enterprise Edition, and Oracle Data Integrator agent for data import flow.
Figure 2-3 in Chapter 2, "Introduction to the Enterprise Deployment Reference Topologies," shows the topology for the Oracle Fusion Customer Relationship Management domain within the overall reference enterprise deployment topology.
Before you begin, ensure the following:
Node Manager has been started in the Secure Sockets Layer (SSL) mode by following the instructions in Chapter 7, "Setting Up Node Manager for an Enterprise Deployment"
You are starting with a clean machine if it is the first time it is being used for a scale out
The /etc/hosts
file has proper entries. To verify, ping this machine with the fully qualified name of the machine
The user created on CRMHOST2
should be the same as the user on CRMHOST1
The directory structure /u01/oracle
is mounted to same shared file system as CRMHOST1
The directory structure /u02/local/oracle/config
on CRMHOST2
has been created
The initial Oracle Fusion Customer Relationship Management deployment on CRMHOST1
has already been done and verified by provisioning
To add a new machine:
Log in to the Administration Server: http://
crminternal
.mycompany.com:7777/console
.
Navigate to CRMDomain > Environment > Machines.
LocalMachine is located in the right-hand pane.
In the left-hand pane, click Lock & Edit.
In the right-hand pane, first click New to add the remote machine, and then specify the following:
Name - enter CRMHOST2
Machine operating system - Unix
Click Next.
In the window that opens, set the following attributes:
Type - SSL
Listen Address - <CRMHOST2
>
Note:
The "localhost" default value here is wrong.
Listen port - 5556
Click Finish and activate the changes.
Note:
If you get an error when activating the changes, see Section 19.8.18, "Administration Console Redirects from Internal URL to Container URL after Activation" for the temporary solution.
Since the CRMHOST1
domain directory file system is also available from CRMHOST2
, both the pack
and unpack
commands can be executed from CRMHOST2
.
To pack and unpack the Managed Server domain home:
Change directory to ORACLE_BASE
/products/fusionapps/oracle_common/common/bin
.
Run the pack
command:
CRMHOST2> ./pack.sh -managed=true -domain=ORACLE_BASE/config/domains/ CRMHOST1/CRMDomain -template=ORACLE_BASE/user_templates/ CRMDomain_managed.jar -template_name="CRM_Managed_Server_Domain"
Ensure that /u02/local/oracle/config/domains/
CRMHOST2
/CRMDomain
is empty, and then run the unpack
command:
CRMHOST2> ./unpack.sh -domain=/u02/local/oracle/config/domains/ CRMHOST2/CRMDomain -template=ORACLE_BASE/user_templates/CRMDomain_managed.jar
Here, ORACLE_BASE
is shared, and /u02/local
is local to CRMHOST2
.
To add a Managed Server and assign it to CRMHOST2
:
Log in to the Administration Server: http://
crminternal
.mycompany.com:7777/console
.
Navigate to CRMDomain > Environment > Servers.
Switch to Lock & Edit mode.
Select the Managed_Server checkbox (for example, SalesServer_1) and then click Clone.
Specify the following server identity attributes:
Server Name - SalesServer_2
Note:
To ensure consistency in naming, copy the name of the server shown in Server Identity and paste it into the Server Name field. Then change the number to "_2".
Server Listen Address - <CRMHOST2
>
Server Listen Port - leave "as is"
Note:
For Oracle SOA Suite server, add a port value that is different than the soa_server1
server value. This will help in server migration.
Click OK.
You now should see the newly cloned sales server, SalesServer_2
.
Click SalesServer_2 and change the following attributes:
Machine - <CRMHOST2
>
Cluster Name - accept the default, SalesCluster
Note:
Ensure that this cluster name is the same as the cluster name of the original Managed Server.
Click Save and then Activate Changes.
Navigate to CRMDomain > Environment > Servers.
From the Name column, click the SalesServer_2 scaled-out server link.
Click Lock & Edit, and then select the Configuration tab.
Select the Keystores tab, and ensure that the keystores value is Custom Identity and Custom Trust.
Do the following:
Change the Custom Identity Keystore path to point to the ORACLE_BASE
/config/keystores/
CRMHOST2
_fusion_identity.jks
file.
Leave the Custom Identity Keystore type blank.
Change the Custom Identity Keystore Passphrase entry. This should be the same as the keystorepassword field described in the first bullet in Step 4 in Section 7.2, "Creating the Identity Keystore on CRMHOST2."
Re-enter the Confirm Custom Identity Keystore Passphrase.
Ensure that the Confirm Custom Trust Keystore path is pointing to the ORACLE_BASE
/config/keystores/fusion_trust.jks
file.
Leave the Custom Trust Keystore type blank.
Change the Custom Trust Keystore Passphrase entry. This should be the same as the keystorepassword field described in the first bullet in Step 4 in Section 7.2, "Creating the Identity Keystore on CRMHOST2."
Re-enter the Custom Trust Keystore Passphrase.
Click Save.
Select the SSL tab.
Make sure that Identity and Trust Locations is set to Keystores.
Change the Private Key Alias to CRMHOST2
_fusion
.
Change the Private Key Passphrase to the keypassword, as described in the second bullet in Step 4 in Section 7.2, "Creating the Identity Keystore on CRMHOST2."
Re-enter the keypassword from Step c for the Confirm Private Key Passphrase.
Click Save.
Select the Server Start tab.
Change the Arguments to reflect the name of your cloned Managed Server and make sure the server group is the correct cluster name. For example, you should see the following:
-DJDBCProgramName=DS/CRMDomain/SalesServer_2 -Dserver.group=SalesCluster
Click Save.
Select the Logging tab, and then select the HTTP tab.
Do the following:
Change the Log file name to logs/access.log.%yyyyMMdd%
.
Change the rotation type to By Time.
Leave the Limit number of retained files option unchecked.
Leave the Rotate log file on startup option unchecked.
Click Save.
Expand Advanced.
Change the format to Extended.
Change the extended logging format fields to the following:
date time time-taken cs-method cs-uri sc-status sc(X-ORACLE-DMS-ECID) cs(ECID-Context) cs(Proxy-Remote-User) cs(Proxy-Client-IP)
Click Save.
Click Activate Changes.
Repeat Steps 2 to 18 for all the Managed Servers on this domain.
Set the following environment variable on CRMHOST2
:
WLST_PROPERTIES="-Dweblogic.security.SSL.trustedCAKeyStore=ORACLE_BASE/
config/keystores/fusion_trust.jks"
Stop the domain's Administration Server:
CRMHOST1> ORACLE_BASE/config/domains/CRMHOST1/CRMDomain/bin/stopWebLogic.sh
Restart the domain's Administration Server:
CRMHOST2> ORACLE_BASE/products/fusionapps/wlserver_10.3/common/bin/wlst.sh CRMHOST2> nmConnect(username='username', password='password', domainName='CRMDomain', host='CRMHOST1',port='5556', nmType='ssl', domainDir='ORACLE_BASE/config/domains/CRMHOST1/CRMDomain') CRMHOST2> nmStart('AdminServer')
Note:
The username and password used in the nmConnect
are the Node Manager credentials (username and password) specified when creating the provisioning response file. This is shown in Figure 5-3 in "Using the Provisioning Process to Install Components for an Enterprise Deployment".
Run the newly created Managed Servers:
Log in to the Administration Server: http://
crminternal
.mycompany.com:7777/console
.
Navigate to CRMDomain > Environment > Servers > Control.
Select the newly created Managed Servers and click Start.
Navigate to CRMDomain > Environment > Servers and check the State to verify that the newly created Managed Servers are running.
Data Quality is an Informatica tool that provides the following:
A matching function, which allows you to search, match, and identify duplicate customer records based on key customer attributes such as name, address, date of birth, Social Security Number, or tax ID number. It also includes data quality connector, a generalized interface that is capable of making real-time and batch requests to an external data-cleansing engine.
An address-cleansing feature, which corrects and validates address data based on postal requirements.
Implementing Data Quality requires four steps:
Obtaining postal reference data and license keys.
Setting up the Data Quality Engine, also known as Informatica Identity Resolution (IIR).
Configuring Data Quality Connector and IIR in Oracle Fusion Functional Setup Manager.
Creating a second Data Quality server on CRMHOST2
.
Prior to configuring data quality for scale out, you must obtain postal reference data and license key files from AddressDoctor. For information about how to obtain these, see the licensing documentation.
To set up the data quality engine:
On CRMHOST1
, change directory to ORACLE_BASE
/products/InformaticaIR/bin
.
Run the following commands:
CRMHOST1> bash CRMHOST1> . ./setfusionEnv.sh CRMHOST1> ./liup CRMHOST1> ./idsup
Start the following:
./idsconc -a
On the launched console, select Rulebase Type=SSA and Alias=rtunitrb and click OK. Then click Yes to create a new rulebase.
In the IIR console, navigate to System > New > Create a system from SDF.
Enter the following system information:
System Name - FusionDQRealtime
System Definition File - ORACLE_BASE
/products/InformaticaIR/ids/FusionDQRealtime.sdf
DB Type - SSA
Alias - fusion_s01
Click OK, and then click Close to dismiss the Create/System window.
Navigate to System menu > Select > System Name: FusionDQRealtime and click OK.
Navigate to System menu > Load IDT to start loading the individual IDT tables, one by one, until the following IDTs are completed:
load_location load_organization load_org_address load_person load_per_address load_per_phone
Close the IIR Console started in Step 2 and run the following commands to stop the IIR server:
CRMHOST1> ORACLE_BASE/products/InformaticaIR/bin/idsdown CRMHOST1> ORACLE_BASE/products/InformaticaIR/bin/lidown
Assuming you have received the postal reference data and license key files from AddressDoctor (that you requested in Section 8.6.1), run the following commands:
CRMHOST1> cd ORACLE_BASE/products/InformaticaIR/ssaas/ad5/ad/db CRMHOST1> cp mylocation/key . CRMHOST1> cp mylocation/*.MD .
mylocation
is the directory where you copied the license key and the postal reference data.
*.MD
is the postal data reference file. key
is a text file that contains the AddressDoctor license.
AddressDoctor supports 248 countries. Each *.MD
file is per country or a group of countries. Each of these files should be copied to the *.MD
directory.
Run the following commands to start the IIR server:
CRMHOST1> ORACLE_BASE/products/InformaticaIR/bin/liup CRMHOST1> ORACLE_BASE/products/InformaticaIR/bin/idsup
From the IIR Console, do the following to start the UPD Synchronizer:
Run the following command:
CRMHOST1> ORACLE_BASE/products/InformaticaIR/bin/idsconc -a
On the launched console, select Rulebase Type=SSA and Alias=rtunitrb, and click OK to go the RuleBase.
In the IIR console, go to System > Select and select FusionDQRealtime.
Go to Tools > Synchronizer > Run Synchronizer and click OK to accept all the defaults shown in the Update Synchronizer popup window.
Note:
Ensure that the IDT Name=(all) option is selected.
To configure the data quality connector and IIR:
Log in to Oracle Fusion Functional Setup Manager as an administrator. For example, http://
commoninternal
.mycompany.com:7777/homePage/faces/AtkHomePageWelcome
.
Click Navigator > Setup and Maintenance.
Select the All tasks tab.
Select Input Name= manage server and then click Search.
The Manage Server Configurations task displays.
Click Go to Task to open the Manage Data Quality Server Configurations page, and then click Search to find all existing configurations.
Select Realtime and Batch Basic Server and do the following:
From the Manage Data Quality Server Configurations page, select Realtime Cleanse Server and do the following:
From the Manage Data Quality Server Configurations page, select Batch Cleanse Server and repeat Steps a through d from Step 7.
Search for the task "Manage Data Synchronization" and click Go to Task.
From Actions dropdown list, select Refresh Identity Table Information to refresh the IDT repository information.
Select Enable for Sync for each IDT and click Save.
Click Schedule Synchronization Process and then Advanced.
Select Using a schedule.
Select Hourly/Minute from the Frequency dropdown list. (This frequency should be determined by the business requirement.)
Enter "every 5 minutes" for this example. (This "every 5 minutes" sample should be determined by the business requirement.)
Select a "next few days" end date from the calender. (This "few days" sample should be determined by the business requirement.)
Click Submit to schedule the Sync ESS job.
To create a second data quality server:
Run the following command:
CRMHOST2> cd ORACLE_BASE/repository/installers/iir/fusion_iir
Edit the install.props
file to include the following values:
############################################## # USE ABSOLUTE PATHS FOR ALL ############################################## # These environment variables are required to be set for # IIR to be able to use the ORACLE DB CLIENT ############################################## ORACLE_HOME=ORACLE_BASE/products/dbclient TNS_ADMIN=ORACLE_BASE/products/dbclient/network/admin LD_LIBRARY_PATH=ORACLE_BASE/products/dbclient/lib ############################################## # These properties are required to be set for # IIR to be installed in the right directory ############################################## FUSION_STAGE_DIR=ORACLE_BASE/repository/installers/iir IIR_STAGE_DIR=ORACLE_BASE/repository/installers/iir IIR_VERSION=IIR_901sp1_linux_amd64 IIR_TOP=ORACLE_BASE/products/IIR2 ############################################## # These properties are required to be set for IIR to be # able to connect to the Oracle DB to install Schema Objects ############################################## IIR_DB_HOSTNAME=FUSIONDBHOST1 IIR_DB_PORT=1521 IIR_DB_SID=fusiondb1 IIR_DB_USER=fusion_dq IIR_DB_PASSWD=PASSWORD ################################################# # ALL THESE PROPERTIES ARE NEEDED BY THE INSTALLER # DO NOT MODIFY THESE UNLESS NECESSARY ################################################# IIR_INSTALL_LOG_LOC=ORACLE_BASE/repository/installers/iir/fusion_iir IIR_INSTALL_TYPE=all IIR_INCLUDE_DOC=yes ############################################## # Default is one Server Instance ############################################## IIR_INSTANCE_1_PORT=1601 ############################################## # Not Implemented yet ############################################## IIR_INSTANCE_2_PORT= ############################################## # This option is needed if you want Search to be accessible through a Browser ############################################## IIR_HTTP=Y ############################################## # This is for Installing the IIR Control and Sync Objects ( needed only for the #first time) ############################################## INSTALL_IIR_OBJECTS=N ############################################## # This is needed for OEM Key ############################################## SSALI_MZXPQRS=STANISLAUS
Run the following command:
./runInstaller.sh install.props > test_console
The installation is now complete.
Configure the data quality connector and IIR:
Perform Steps 1 through 6 in Section 8.6.3, "Configuring the Data Quality Connector and IIR."
Update the SecondaryServer1Address and SecondaryServer1Port values respectively for the host name and port of the Secondary Server CRMHOST2
. These parameters can be found in the Server Parameter Values section.
Select Enable High Availability for each server configuration.
Click Save and Close.
Start IIR on CRMHOST1
, first by starting the Rulebase server, and then by starting the Search server:
CRMHOST1> cd ORACLE_BASE/products/InformaticaIR/bin CRMHOST1> bash CRMHOST1> . ./setfusionEnv.sh CRMHOST1> . ../env/isss CRMHOST1> ./ssasrsv –m{RBPORT1} -gFusionRBSG,ssa:rtunitrb -w1 -1$SSATOP/iirlog/ priRB.log -2$SSATOP/iirlog/priRB.err -3$SSATOP/iirlog/priRB.dbg CRMHOST1> ./ssasrsv -n{SEPORT1} -gFusionRBSG,ssa:rtunitrb -1$SSATOP/iirlog/ priSE.log -2$SSATOP/iirlog/priSE.err -3$SSATOP/iirlog/priSE.dbg
Start IIR on CRMHOST2
, first by starting the Rulebase server, and then by starting the Search server:
CRMHOST2> cd ORACLE_BASE/products/IIR2/InformaticaIR/bin CRMHOST2> bash CRMHOST2> . ./setfusionEnv.sh CRMHOST2> . ../env/isss CRMHOST2> ./ssasrsv –m{RBPORT2} -gFusionRBSG,ssa:rtunitrb -w1 -1$SSATOP/iirlog/ secRB.log -2$SSATOP/iirlog/secRB.err -3$SSATOP/iirlog/secRB.dbg CRMHOST2> ./ssasrsv -n{SEPORT2} -gFusionRBSG,ssa:rtunitrb -1$SSATOP/iirlog/ secSE.log -2$SSATOP/iirlog/secSE.err -3$SSATOP/iirlog/secSE.dbg
Restart the Oracle Fusion Applications instances (which require DQ) so that the DQ Connector can do load balancing and failover.
Notes:
RBPORT1 is the port for the Rulebase server on IIR Host 1; RBPORT2 is the port for IIR Host 2. The values for these parameters should be the value of SSA_RBPORT in InformaticaIR/env/isss
on Hosts 1 and 2, respectively.
SEPORT1 is the port for the Search server on IIR Host 1; SEPORT2 is the port for IIR Host 2. The values for these parameters should be the value of SSA_SEPORT in InformaticaIR/env/isss
on Hosts 1 and 2, respectively.
For more information about data quality and IIR, see the following sections in the "Customer Relationship Management" chapter in the Oracle Fusion Applications Post-Installation Guide:
"Setting Up Informatica Identity Resolution"
"Informatica Identity Resolution Setup: Procedures"
To configure Oracle HTTP Server:
On WEBHOST1
:
Change directory to ORACLE_BASE
/config/CommonDomain_webtier/config/OHS/ohs1/moduleconf
.
Copy FusionVirtualHost_crm.conf
to FusionVirtualHost_crm.conf.org
.
Edit the FusionVirtualHost_crm.conf
file, adding the scaled-out host and port to all the WebLogic Application Clusters. Add this to both the Internal and External part of the FusionVirtualHost_crm.conf
file. Example 8-1 shows sample code for SalesServer.
Notes:
Do not add these values for Oracle Enterprise Manager, Oracle WebLogic Server Administration Console, or Oracle Authorization Policy Manager.
If the Managed Servers are running on VIPs, replace CRMHOST1
and CRMHOST2
with the VIP addresses in Example 8-1.
Repeat Step 2 for all applications.
Restart Oracle HTTP Server: cd
to ORACLE_BASE
/config/CommonDomain_webtier/bin
and enter the following:
WEBHOST1> ./opmnctl stopall WEBHOST1> ./opmnctl startall
Server migration is required for proper failover of Oracle Fusion Customer Relationship Management components in the event of failure in any of the CRMHOST1
and CRMHOST2
nodes. For more information, see Chapter 17, "Setting Up Server Migration for an Enterprise Deployment."
You should verify URLs to ensure that the appropriate routing and failover is working from Oracle HTTP Server to the SalesCluster.
To verify the URLs:
Log in to the CRMDomain
Oracle WebLogic Server Administration Console and stop all the Managed Servers on CRMHOST1
while the Managed Servers on CRMHOST2
are running.
Access the following URLs to verify that routing and failover are functioning properly. (Ensure the log in prompt is visible.)
https://crmexternal.mycompany.com/sales/faces/mooOpportunityHome
https://crmexternal.mycompany.com/crmPerformance/faces/TerritoriesMain
https://crmexternal.mycompany.com/contractManagement/faces/ContractsDashboard
https://crmexternal.mycompany.com/customer/faces/CustomerCtrWorkarea
https://crmexternal.mycompany.com/marketing/faces/LeadsDashboard
https://crmexternal.mycompany.com/orderCapture/faces/SalesCatalogAdmin
Log in to the CRMDomain
Oracle WebLogic Server Administration Console and stop all the Managed Servers on CRMHOST2
.
Start the Managed Servers on CRMHOST1
.
Repeat Step 2. (Ensure the log in prompt is visible.)
Start all the Managed Servers on CRMHOST2
and verify that they are running on CRMHOST1
and CRMHOST2
.