Oracle® Fusion Middleware: Enterprise Deployment Guide For Oracle SOA Suite 11g Release 1 (11.1.1)
Oracle® Fusion Middleware: Enterprise Deployment Guide For Oracle SOA Suite 11g Release 1 (11.1.1)
Oracle® Fusion Middleware: Enterprise Deployment Guide For Oracle SOA Suite 11g Release 1 (11.1.1)
Enterprise Deployment Guide for Oracle SOA Suite 11g Release 1 (11.1.1)
E12036-04
May 2010
Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite, 11g Release 1 (11.1.1) E12036-04 Copyright 2010, Oracle and/or its affiliates. All rights reserved. Primary Author: Joe Paul Contributing Author: Fermin Castro Alonso Contributor: Janga Aliminati, Pradeep Bhat, Kevin Cluggage, Richard Delval, Jordan Douglas, Eileen He, Rahul Menezes, Ranjit Mulye, Bharath Reddy, Michael Rhys, Praveen Sampath, Dhaval Shah, Sunita Sharma, Herb Stiel, Jianliang Yi, Zhiming Zhu This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited. The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing. If this software or related documentation is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable: U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007). Oracle USA, Inc., 500 Oracle Parkway, Redwood City, CA 94065. This software is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications which may create a risk of personal injury. If you use this software in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure the safe use of this software. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software in dangerous applications. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. This software and documentation may provide access to or information on content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services.
Contents
Preface ............................................................................................................................................................... xiii
Audience..................................................................................................................................................... Documentation Accessibility ................................................................................................................... Related Documents ................................................................................................................................... Conventions ............................................................................................................................................... xiii xiii xiv xiv
2.2 Network........................................................................................................................................ 2-6 2.2.1 Virtual Server Names .......................................................................................................... 2-6 2.2.1.1 soa.mycompany.com .................................................................................................. 2-6 2.2.1.2 admin.mycompany.com .............................................................................................. 2-6 2.2.1.3 soainternal.mycompany.com...................................................................................... 2-7 2.2.2 Load Balancers ..................................................................................................................... 2-7 2.2.2.1 Configuring the Load Balancer .................................................................................. 2-7 2.2.3 IPs and Virtual IPs ............................................................................................................... 2-8 2.2.4 Firewalls and Ports ........................................................................................................... 2-10 2.3 Shared Storage and Recommended Directory Structure ................................................... 2-12 2.3.1 Terminology for Directories and Directory Environment Variables ........................ 2-12 2.3.2 Recommended Locations for the Different Directories............................................... 2-13 2.3.3 Shared Storage Configuration......................................................................................... 2-18 2.4 LDAP as Credential and Policy Store ................................................................................... 2-19
4 Creating a Domain
4.1 4.1.1 4.1.2 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 4.13 4.14 4.15 4.16 4.17 4.18 4.19 4.20 Installing Oracle Fusion Middleware Home .......................................................................... 4-2 Installing Oracle WebLogic Server.................................................................................... 4-2 Installing Oracle Fusion Middleware for SOA................................................................ 4-3 Backing Up the Installation ....................................................................................................... 4-4 Enabling VIP1 in SOAHOST1 ................................................................................................... 4-4 Running the Configuration Wizard on SOAHOST1 to Create a Domain .......................... 4-5 Creating boot.properties for the Administration Server on SOAHOST1........................... 4-9 Starting Node Manager on SOAHOST1............................................................................... 4-10 Starting the Administration Server on SOAHOST1 ........................................................... 4-10 Validating the Administration Server................................................................................... 4-11 Creating a Separate Domain Directory for Managed Servers in the Same Node as the Administration Server 4-11 Applying the Java Required Files (JRF) Template to the WSM-PM_Cluster.................. 4-12 Disabling Host Name Verification for the Oracle WebLogic Administration Server and the WLS_WSM1 Managed Server 4-12 Starting and Validating the WLS_WSM1 Managed Server ............................................... 4-13 Propagating the Domain Configuration to SOAHOST2 Using the unpack Utility ....... 4-13 Disabling Host Name Verification for the WLS_WSM2 Managed Server ...................... 4-14 Starting Node Manager on SOAHOST2............................................................................... 4-14 Starting and Validating the WLS_WSM2 Managed Server ............................................... 4-15 Configuring the Java Object Cache for Oracle WSM.......................................................... 4-15 Configuring Oracle HTTP Server for the Administration Server and the WLS_WSM-PMn Managed Servers 4-17 Registering Oracle HTTP Server With WebLogic Server................................................... 4-18 Setting the Frontend URL for the Administration Console and Setting Redirection Preferences 4-18
vi
Validating Access Through Oracle HTTP Server................................................................ Manually Failing Over the Administration Server to SOAHOST2 .................................. Validating Access to SOAHOST2 Through Oracle HTTP Server..................................... Failing the Administration Server Back to SOAHOST1..................................................... Backing Up the Installation ....................................................................................................
vii
Starting and Validating the WLS_SOA2 Managed Server ......................................... 6-12 Configuring Oracle HTTP Server for WLS_SOAn Managed Servers ....................... 6-13 Validating Access Through Oracle HTTP Server......................................................... 6-15 Setting the Frontend HTTP Host and Port.................................................................... 6-16 Setting the WLS Cluster address for Direct Binding/RMI invocations to composites ..... 6-17 6.1.16 Configuring a Shared JMS Persistence Store ................................................................ 6-18 6.1.17 Configuring a Default Persistence Store for Transaction Recovery .......................... 6-18 6.1.18 Enabling High Availability for Oracle File and FTP Adapters .................................. 6-19 6.1.18.1 Using the Database Mutex Locking Operation ..................................................... 6-19 6.1.19 Scaling the Oracle Database Adapter ............................................................................ 6-22 6.1.20 Backing Up the Installation ............................................................................................. 6-22 6.2 OPTION 2: Extending a SOA Domain to Include Oracle BPM......................................... 6-23 6.2.1 Backing Up the Existing Installation.............................................................................. 6-24 6.2.2 Running the Configuration Wizard on SOAHOST1 to Extend a SOA Domain to Include BPM 6-24 6.2.3 Configuring a JMS Persistence Store for BPM JMS...................................................... 6-25 6.2.4 Propagating the Domain Configuration to the managed server directory in SOAHOST1 and to SOAHOST2 6-26 6.2.5 Starting the BPM Suite Components ............................................................................. 6-27 6.2.6 Validating the BPM Suite Components in WLS_SOA1 and WLS_SOA2................. 6-27 6.2.7 Configuring Oracle HTTP Server for the WLS_SOAn Managed Servers ................ 6-28 6.2.8 Validating Access Through Oracle HTTP Server......................................................... 6-29 6.2.9 Backing Up the Installation ............................................................................................. 6-29 6.1.11 6.1.12 6.1.13 6.1.14 6.1.15
Overview of Adding BAM to a Domain.................................................................................. 7-1 Enabling VIP4 in BAMHOST1 .................................................................................................. 7-2 Extending the Domain to Include BAM .................................................................................. 7-2 Restarting the Administration Server............................................................................... 7-7 Configuring a JMS Persistence Store for BAM UMS ............................................................. 7-7 Configuring a Default Persistence Store for Transaction Recovery .................................... 7-8 Untargeting the BAM Server System from WLS_BAM2 ...................................................... 7-9 Propagating the Domain Configuration to BAMHOST1 and BAMHOST2 Using the pack/unpack Utility 7-10 Disabling Host Name Verification for the WLS_BAMn Managed Servers..................... 7-10 Starting Node Manager on BAMHOST1 and BAMHOST2............................................... 7-11 Starting the BAM System........................................................................................................ 7-11 Configuring the BAM Web Applications to Use the BAM Server in BAMHOST1........ 7-12 Configuring the ADCServer to Use the Appropriate BAMServer Address ................... 7-13 Configuring Oracle HTTP Server for the WLS_BAMn Managed Servers....................... 7-13 Validating Access Through Oracle HTTP Server................................................................ 7-14 Configuring Server Migration for the WLS_BAM1 Server................................................ 7-14 Setting Up the User and Tablespace for the Server Migration Leasing Table ......... 7-15 Creating a Multi-Data Source from the WebLogic Server Administration Console ......... 7-15 Editing the Node Managers Properties File................................................................. 7-16 Set Environment and Superuser Privileges for the wlsifconfig.sh Script................. 7-17
Enabling Host Name Verification Certificates Between Node Manager in the BAMHOSTn Nodes and the Administration Server 7-17 7.15.6 Configure Server Migration Targets .............................................................................. 7.15.7 Test Server Migration....................................................................................................... 7.16 Configuration Changes Applied to BAM components in an EDG Topology................. 7.17 Backing Up the Installation .................................................................................................... 7.15.5
9 Server Migration
9.1 9.2 9.3 9.4 9.5 9.6 9.7 Setting Up a User and Tablespace for the Server Migration Leasing Table....................... 9-1 Creating a Multi-Data Source Using the Oracle WebLogic Server Administration Console .. 9-2 Enabling Host Name Verification Certificates between SOAHOST1 and SOAHOST2 and the Administration Server 9-3 Editing the Node Managers Properties File........................................................................... 9-3 Setting Environment and Superuser Privileges for the wlsifconfig.sh Script.................... 9-5 Configuring Server Migration Targets .................................................................................... 9-5 Testing the Server Migration..................................................................................................... 9-6
ix
10.6.3 10.6.4
Error While Retrieving Oracle B2B Document Definitions ...................................... 10-16 Soa-infra Application Fails to Start Due to Deployment Framework Issues (Coherence) 10-17 10.6.5 Incomplete Policy Migration After Failed Restart of SOA Server........................... 10-17 10.6.6 SOA, BAM, or WMS Servers Fail to Start Due to Maximum Number of Processes Available in Database 10-18 10.6.7 Administration Server Fails to Start After a Manual Failover ................................. 10-19 10.6.8 Error While Activating Changes in Administration Console .................................. 10-19 10.6.9 SOA/BAM Server Not Failed Over After Server Migration.................................... 10-19 10.6.10 SOA/BAM Server Not Reachable From Browser After Server Migration ............ 10-19 10.6.11 SOA Server Stops Responding after Being Active and Stressed for a Period of Time ...... 10-20 10.6.12 Exceptions While Performing Deploy/Purge/Import Operations in the B2B Console ... 10-20 10.6.13 OAM Configuration Tool Does Not Remove URLs .................................................. 10-20 10.6.14 Redirecting of Users to Login Screen After Activating Changes in Administration Console 10-21 10.6.15 Redirecting of Users to Administration Console's Home Page After Activating Changes to OAM 10-21 10.6.16 Configured JOC Port Already in Use .......................................................................... 10-21 10.6.17 SOA or BAM Server Fails to Start ................................................................................ 10-21 10.7 Best Practices .......................................................................................................................... 10-22 10.7.1 Preventing Timeouts for SQLNet Connections ......................................................... 10-22 10.7.2 Auditing ........................................................................................................................... 10-22
11-1 11-1 11-2 11-2 11-3 11-3 11-4 11-5 11-6 11-6 11-6 11-7 11-7 11-8 11-8 11-9 11-10 11-10 11-10 11-11 11-11 11-12
11.2.3.4 Updating the Host Identifier.................................................................................. 11.2.3.5 Updating the WebGate Profile .............................................................................. 11.2.3.6 Adding Additional Access Servers ....................................................................... 11.2.3.7 Configuring Delegated Form Authentication ..................................................... 11.2.4 Installing and Configuring WebGate........................................................................... 11.2.5 Changing the CacheControl Headers in the SOA_EDG_AG for Oracle BAM...... 11.2.6 Configuring IP Validation for the Webgate................................................................ 11.2.7 Setting Up WebLogic Authenticators .......................................................................... 11.2.7.1 Back Up Configuration Files .................................................................................. 11.2.7.2 Setting Up the OAM ID Asserter .......................................................................... 11.2.7.3 Setting the Order of Providers............................................................................... 11.3 Backing Up the Installation ..................................................................................................
11-13 11-13 11-14 11-14 11-15 11-19 11-19 11-20 11-20 11-20 11-20 11-21
12 Miscellaneous
12.1 12.2 12.3 12.4 12.5 Recovering Failed BPEL and Mediator Instances ............................................................... 12-1 Configuring Web Services to Prevent Denial of Service and Recursive Node Attacks. 12-2 Running the SOA Fusion Order Demo Application in an EDG Environment ............... 12-3 Oracle Business Activity Monitoring (BAM) Configuration Properties.......................... 12-3 Using Shared Storage for Deployment Plans and SOA Infrastructure Applications Updates 12-3
xi
xii
Preface
This preface describes the audience, contents and conventions used in the Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite.
Audience
This guide is intended for system administrators who are responsible for installing and configuring Oracle Fusion Middleware enterprise deployments.
Documentation Accessibility
Our goal is to make Oracle products, services, and supporting documentation accessible to all users, including users that are disabled. To that end, our documentation includes features that make information available to users of assistive technology. This documentation is available in HTML format, and contains markup to facilitate access by the disabled community. Accessibility standards will continue to evolve over time, and Oracle is actively engaged with other market-leading technology vendors to address technical obstacles so that our documentation can be accessible to all of our customers. For more information, visit the Oracle Accessibility Program Web site at http://www.oracle.com/accessibility/. Accessibility of Code Examples in Documentation Screen readers may not always correctly read the code examples in this document. The conventions for writing code require that closing braces should appear on an otherwise empty line; however, some screen readers may not always read a line of text that consists solely of a bracket or brace. Accessibility of Links to External Web Sites in Documentation This documentation may contain links to Web sites of other companies or organizations that Oracle does not own or control. Oracle neither evaluates nor makes any representations regarding the accessibility of these Web sites. Access to Oracle Support Oracle customers have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/support/contact.html or visit http://www.oracle.com/accessibility/support.html if you are hearing impaired.
xiii
Related Documents
The following manuals in the Oracle Fusion Middleware documentation library provide additional information on the process of installing and configuring the Enterprise Deployment architectures:
Oracle Fusion Middleware Administrator's Guide Oracle Fusion Middleware Administrator's Guide for Oracle Virtual Directory Oracle Fusion Middleware Administrator's Guide for Oracle Internet Directory
Conventions
The following text conventions are used in this document:
Convention boldface italic monospace Meaning Boldface type indicates graphical user interface elements associated with an action, or terms defined in text or the glossary. Italic type indicates book titles, emphasis, or placeholder variables for which you supply particular values. Monospace type indicates commands within a paragraph, URLs, code in examples, text that appears on the screen, or text that you enter.
xiv
1
1
This chapter provides an overview of the enterprise topology for Oracle SOA Suite. It contains the following sections:
Section 1.1, "What is an Enterprise Deployment?" Section 1.2, "Terminology" Section 1.3, "Benefits of Oracle Recommendations" Section 1.4, "Hardware Requirements" Section 1.5, "Enterprise Deployment Reference Topology" Section 1.6, "How to Use This Guide"
considers various business service level agreements (SLA) to make high-availability best practices as widely applicable as possible leverages database grid servers and storage grid with low-cost storage to provide highly resilient, lower cost infrastructure uses results from extensive performance impact studies for different configurations to ensure that the high-availability architecture is optimally configured to perform and scale to business needs enables control over the length of time to recover from an outage and the amount of acceptable data loss from a natural disaster uses Oracle best practices and recommended architecture, which are independent of hardware and operating systems.
Terminology
Note:
This document focuses on enterprise deployments in Linux environments, but enterprise deployments can also be implemented in UNIX and Windows environments.
1.2 Terminology
This section identifies terms used to describe components in prior releases, and the terms to which they correlate in 11g Release 1 (11.1.1).
Oracle home: An Oracle home contains installed files necessary to host a specific product. For example, the SOA Oracle home contains a directory that contains binary and library files for Oracle SOA Suite. An Oracle home resides within the directory structure of the Middleware home. Each Oracle home can be associated with multiple Oracle instances or Oracle WebLogic Server domains. ORACLE_COMMON_HOME: This environment variable and related directory path refers to the Oracle home that contains the binary and library files required for the Oracle Enterprise Manager Fusion Middleware Control and Java Required Files (JRF). WebLogic Server home: A WebLogic Server home contains installed files necessary to host a WebLogic Server. The WebLogic Server home directory is a peer of Oracle home directories and resides within the directory structure of the Middleware home. Middleware home: A Middleware home consists of the Oracle WebLogic Server home, and, optionally, one or more Oracle homes. A Middleware home can reside on a local file system or on a remote shared disk that is accessible through NFS. Oracle instance: An Oracle instance contains one or more active middleware system components, for example Oracle Web Cache, Oracle HTTP Server, or Oracle Internet Directory. You determine which components are part of an instance, either at install time or by creating and configuring an instance at a later time. An Oracle instance contains files that can be updated, such as configuration files, log files, temporary files. failover: When a member of a high availability system fails unexpectedly (unplanned downtime), in order to continue offering services to its consumers, the system undergoes a failover operation. If the system is an active-passive system, the passive member is activated during the failover operation and consumers are directed to it instead of the failed member. The failover process can be performed manually, or it can be automated by setting up hardware cluster services to detect failures and move cluster resources from the failed node to the standby node. If the system is an active-active system, the failover is performed by the load balancer entity serving requests to the active members. If an active member fails, the load balancer detects the failure and automatically redirects requests for the failed member to the surviving active members. See Oracle Fusion Middleware High Availability Guide for information on active-active and active-passive systems. failback: After a system undergoes a successful failover operation, the original failed member can be repaired over time and be re-introduced into the system as a standby member. If desired, a failback process can be initiated to activate this member and deactivate the other. This process reverts the system back to its pre-failure configuration. hardware cluster: A hardware cluster is a collection of computers that provides a single view of network services (for example: an IP address) or application services (for example: databases, Web servers) to clients of these services. Each
1-2 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Terminology
node in a hardware cluster is a standalone server that runs its own processes. These processes can communicate with one another to form what looks like a single system that cooperatively provides applications, system resources, and data to users. A hardware cluster achieves high availability and scalability through the use of specialized hardware (cluster interconnect, shared storage) and software (health monitors, resource monitors). (The cluster interconnect is a private link used by the hardware cluster for heartbeat information to detect node death.) Due to the need for specialized hardware and software, hardware clusters are commonly provided by hardware vendors such as Sun, HP, IBM, and Dell. While the number of nodes that can be configured in a hardware cluster is vendor dependent, for the purpose of Oracle Fusion Middleware high availability, only two nodes are required. Hence, this document assumes a two-node hardware cluster for high availability solutions employing a hardware cluster.
cluster agent: The software that runs on a node member of a hardware cluster that coordinates availability and performance operations with other nodes. Clusterware provides resource grouping, monitoring, and the ability to move services. A cluster agent can automate the service failover. clusterware: A software that manages the operations of the members of a cluster as a system. It allows one to define a set of resources and services to monitor via a heartbeat mechanism between cluster members and to move these resources and services to a different member in the cluster as efficiently and transparently as possible. shared storage: Shared storage is the storage subsystem that is accessible by all the machines in the EDG domain. Among other things, the following is located on the shared disk: Middleware Home software AdminServer Domain Home JMS Tlogs (where applicable)
Managed Server homes can also be optionally located in the shared disk. The shared storage can be a Network Attached Storage (NAS), a Storage Area Network (SAN) or any other storage system that multiple nodes can access simultaneously and can read-write.
primary node: The node that is actively running an Oracle Fusion Middleware instance at any given time and has been configured to have a backup/secondary node. If the primary node fails, Oracle Fusion Middleware instance is failed over to the secondary node. This failover can be manual or automated using the Clusterware for Administration Server. For a server migration based scenario, WebLogic Whole Server Migration is used for automated failover. secondary node: The node that is the backup node for an Oracle Fusion Middleware instance. This is where the active instance fails over when the primary node is no longer available. See the definition for primary node in this section. network host name: Network host name is a name assigned to an IP address either through the /etc/hosts file or through DNS resolution. This name is visible in the network that the machine to which it refers to is connected. Often, the network host name and physical host name are identical. However, each machine has only one physical host name but may have multiple network host
Terminology
names. Thus, a machines network host name may not always be its physical host name.
physical host name: This guide differentiates between the terms physical host name and network host name. This guide uses physical host name to refer to the "internal name" of the current machine. On UNIX, this is the name returned by the hostname command. Physical host name is used by Oracle Fusion Middleware to reference the local host. During installation, the installer automatically retrieves the physical host name from the current machine and stores it in the Oracle Fusion Middleware configuration metadata on disk.
physical IP: Physical IP refers to the IP of a machine on the network. In almost all cases, it is normally associated with the physical host name of the machine (see the definition of the physical host name). In contrast to a virtual IP, it is always associated with the same machine when on a network. switchover: During normal operation, active members of a system may require maintenance or upgrading. A switchover process can be initiated to allow a substitute member to take over the workload performed by the member that requires maintenance or upgrading, which undergoes planned downtime. The switchover operation ensures continued service to consumers of the system. switchback: When a switchover operation is performed, a member of the system is deactivated for maintenance or upgrading. When the maintenance or upgrading is completed, the system can undergo a switchback operation to activate the upgraded member and bring the system back to the pre-switchover configuration. virtual host name: Virtual host name is a network addressable host name that maps to one or more physical machines via a load balancer or a hardware cluster. For load balancers, the name "virtual server name" is used interchangeably with virtual host name in this book. A load balancer can hold a virtual host name on behalf of a set of servers, and clients communicate indirectly with the machines using the virtual host name. A virtual host name in a hardware cluster is a network host name assigned to a cluster virtual IP. Because the cluster virtual IP is not permanently attached to any particular node of a cluster, the virtual host name is not permanently attached to any particular node either.
Note:
Whenever the term "virtual host name" is used in this document, it is assumed to be associated with a virtual IP address. In cases where just the IP address is needed or used, it will be explicitly stated.
virtual IP: Also, cluster virtual IP and load balancer virtual IP. Generally, a virtual IP can be assigned to a hardware cluster or load balancer. To present a single system view of a cluster to network clients, a virtual IP serves as an entry point IP address to the group of servers which are members of the cluster. A virtual IP can be assigned to a server load balancer or a hardware cluster. A hardware cluster uses a cluster virtual IP to present to the outside world the entry point into the cluster (it can also be set up on a standalone machine). The hardware clusters software manages the movement of this IP address between the two physical nodes of the cluster while clients connect to this IP address without the need to know which physical node this IP address is currently active on. In a typical two-node hardware cluster configuration, each machine has its own physical IP address and physical host name, while there could be several cluster IP
1-4 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
addresses. These cluster IP addresses float or migrate between the two nodes. The node with current ownership of a cluster IP address is active for that address. A load balancer also uses a virtual IP as the entry point to a set of servers. These servers tend to be active at the same time. This virtual IP address is not assigned to any individual server but to the load balancer which acts as a proxy between servers and their clients.
The security and high availability benefits of the Oracle Fusion Middleware configurations are realized through isolation in firewall zones and replication of software components.
Configure external load balancers to redirect all external communication received on port 80 to port 443.
Note:
The Oracle Technology Network (http://www.oracle.com/technology/index.html) provides a list of validated load balancers and their configuration at http://www.oracle.com/technology/products/ias/hi_ av/Tested_LBR_FW_SSLAccel.html.
Communication from external clients does not go beyond the Load Balancing Router level. No direct communication from the Load Balancing Router to the data tier is allowed. Components are separated in different protection zones: the web tier, application tier, and the data tier. Direct communication between two firewalls at any one time is prohibited. If a communication begins in one firewall zone, it must end in the next firewall zone. Oracle Internet Directory is isolated in the data tier. Identity Management components are in a separate subnet. All communication between components across protection zones is restricted by port and protocol, according to firewall rules.
Hardware Requirements
4 or more X Pentium, nXm 1.5 GHz or greater n = number of disks, at least 4 (striped as one disk) m = size of the disk (minimum of 30 GB)
WEBHOSTn SOAHOSTn
2 or more X Pentium, 10 GB 1.5 GHz or greater 2 or more X Pentium, 10 GB1 1.5 GHz or greater
4 GB 4 GB 4 GB
For a shared storage MW_HOME configuration, two installations suffice by making a total of 20 GB independently of the number of slots. BAM can reuse MW_HOME binaries from the SOA installation in shared storage.
Note:
You must perform the appropriate capacity planning to determine the number of nodes, CPU, and memory requirements for each node depending on the specific systems load as well as the throughput and response requirements. These will vary for each application or custom SOA system being used.
1-6 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Workstation Firewall DMZ (Public Zone) Web Tier LBR HTTP IDM Domain WEBHOST2 OHS WebGate Mod_WL_OHS HTTPS: 443 VIP: soa.mycompany.com soainternal.mycompany.com 7777 WEBHOST1 OHS WebGate Mod_WL_OHS Firewall DMZ (Secure Zone) Application Tier OAP HTTP OIP
OAMHOST2 OAM
Workstation HTTPS: 443 xxx.yyy.zzz.220 admin.mycompany.com 7777 WEBHOST2 OHS with all Virtual URLs, FTP site, and Proxy OHS WebGate Mod_WL_OHS FW1 Ports Open: HTTP, OAP, opmn, Mbean Proxy HTTP NATd Intranet URLs FW0 Ports Open: 443, 80
HTTP OAP
SOAHOST1 Admin Server WLS_WSM1 Admin Console EM JRF/OPSS JRF/OPSS WSM-PM WLS_SOA1 SOA UMS B2B JRF/OPSS Admin Console EM JRF/OPSS
SOAHOST2 Admin Server WLS_WSM2 WSM-PM WLS_SOA2 SOA UMS B2B JRF/OPSS JRF/OPSS
1521
389/636 (OPSS Auth) 1521 1521 LBR 389/636 (OPSS Auth) RAC CUSTDBHOST1 CUSTDBHOST2
vip: oid. mycompany .com:389/636 OIDHOST2 OID_ INSTANCE2 OID RAC NODE2 INFRADBHOST2
Figure 12 MySOACompany Topology with Oracle Access Manager and Business Activity Monitoring
Internet
Workstation Firewall DMZ (Public Zone) Web Tier LBR HTTP IDM Domain WEBHOST2 OHS WebGate Mod_WL_OHS HTTPS: 443 VIP: bam.mycompany.com soainternal.mycompany.com 7777 WEBHOST1 OHS WebGate Mod_WL_OHS Firewall DMZ (Secure Zone) Application Tier HTTP OAP OIP
OAMHOST2 OAM Admin Console EM JRF/OPSS JRF/OPSS
Workstation HTTPS: 443 xxx.yyy.zzz.220 admin.mycompany.com 7777 WEBHOST2 OHS with all Virtual URLs, FTP site, and Proxy OHS WebGate Mod_WL_OHS FW1 HTTP Ports Open: HTTP, OAP, OPMN, Mbean Proxy
SOAHOST2 Admin Server WLS_WSM2 Admin Console EM JRF/OPSS JRF/OPSS WSM-PM WLS_SOA2 SOA UMS B2B JRF/OPSS Migrated Server (WLS_BAM1)
HTTP OAP
SOAHOST1 Admin Server WLS_WSM1 WSM-PM WLS_SOA1 SOA UMS B2B JRF/OPSS
BAMHOST1(VIP) WLS_BAM1 Server Web App ODI IH1 Web App UMS
BAMHOST2 WLS_BAM2 ODI IH2 WLS_BAM1 Server Web App UMS JRF/OPSS JRF/OPSS
1521
UMS JRF/OPSS
1521
vip: oid. mycompany .com:389/636 OIDHOST2 OID_ INSTANCE2 OID RAC NODE2 INFRADBHOST2
1-8 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Workstation Firewall DMZ (Public Zone) Web Tier LBR HTTP NATd Intranet URLs HTTPS: 443 VIP: soa.mycompany.com soainternal.mycompany.com 7777 WEBHOST1 OHS WebGate Mod_WL_OHS Firewall DMZ Secure Zone (App Tier) NAP HTTP NIP
OAMHOST2 OAM SOAHOST1 Admin Server WLS_WSM1 Admin Console EM WSM-PM WLS_SOA1 UMS B2B
Workstation HTTPS: 443 xxx.yyy.zzz.220 admin.mycompany.com 7777 WEBHOST2 OHS with all Virtual URLs, FTP site, and Proxy OHS WebGate Mod_WL_OHS FW1 Ports Open: HTTP, NAP, opmn, Mbean Proxy HTTP HTTP
SOAHOST2 Admin Server WLS_WSM2 Admin Console EM WSM-PM WLS_SOA2 UMS B2B
HTTP NAP
JRF/OPSS
JRF/OPSS
JRF/OPSS
JRF/OPSS
JRF/OPSS
JRF/OPSS
1521
vip1: oid. mycompany .com:389/636 OID_ INSTANCE2 OID OIDHOST2 RAC NODE2 INFRADBHOST2
CUSTDBHOST1
RAC
CUSTDBHOST2
Section 1.5.1, "Oracle Identity Management" Section 1.5.2, "Web Tier" Section 1.5.3, "Application Tier" Section 1.5.4, "Data Tier" Section 1.5.5, "What to Install" Section 1.5.6, "Unicast Requirement"
Ability to load-balance traffic to a pool of real servers through a virtual host name: Clients access services using the virtual host name (instead of using actual host names). The load balancer can then load balance requests to the servers in the pool.
1-10 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Port translation configuration should be possible so that incoming requests on the virtual host name and port are directed to a different port on the backend servers. Monitoring of ports on the servers in the pool to determine availability of a service. Virtual servers and port configuration: Ability to configure virtual server names and ports on your external load balancer, and the virtual server names and ports must meet the following requirements: The load balancer should allow configuration of multiple virtual servers. For each virtual server, the load balancer should allow configuration of traffic management on more than one port. For example, for Oracle HTTP Server in the web tier, the load balancer needs to be configured with a virtual server and ports for HTTP and HTTPS traffic. The virtual server names must be associated with IP addresses and be part of your DNS. Clients must be able to access the external load balancer through the virtual server names.
Ability to detect node failures and immediately stop routing traffic to the failed node. Fault-tolerant mode: It is highly recommended that you configure the load balancer to be in fault-tolerant mode. It is highly recommended that you configure the load balancer virtual server to return immediately to the calling client when the backend services to which it forwards traffic are unavailable. This is preferred over the client disconnecting on its own after a timeout based on the TCP/IP settings on the client machine. Sticky routing capability: Ability to maintain sticky connections to components. Examples of this include cookie-based persistence, IP-based persistence, and so on. The load balancer should be able to terminate SSL requests at the load balancer and forward traffic to the backend real servers using the equivalent non-SSL protocol (for example, HTTPS to HTTP). Typically, this feature is called SSL acceleration and it is required for this EDG.
On the firewall protecting the application tier, the HTTP ports, OAP port, and proxy port are open. The OAP port is for the WebGate module running in Oracle HTTP Server in the web tier to communicate with Oracle Access Manager. Applications requiring external HTTP access use Oracle HTTP Server as the proxy. (The proxy on the Oracle HTTP Server must be enabled to allow this access.)
All members of a WebLogic cluster must use the same message type. Mixing between multicast and unicast messaging is not allowed. Individual cluster members cannot override the cluster messaging type. The entire cluster must be shut down and restarted to change the message modes (from unicast to multicast or from multicast to unicast).
1-12 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
JMS topics configured for multicasting can access WebLogic clusters configured for unicast because a JMS topic publishes messages on its own multicast address that is independent of the cluster address. However, the following considerations apply: The router hardware configurations that allow unicast clusters may not allow JMS multicast subscribers to work. JMS multicast subscribers need to be in a network hardware configuration that allows multicast accessibility. (That is, JMS subscribers must be in a muticast-enabled network to access multicast topics.)
Notes: In unicast messaging mode, the default listening port of the server is used if no channel is configured.
Cluster members communicate to the group leader when they need to send a broadcast message which is usually the heartbeat message. When the cluster members detect the failure of a group leader, the next oldest member becomes the group leader. The frequency of communication in unicast mode is similar to the frequency of sending messages on multicast port.
Section 1.6.1, "Installation and Configuration Procedure" Section 1.6.2, "Overview of Installation Strategies"
This document focuses on enterprise deployments in Linux environments, but enterprise deployments can also be implemented in UNIX and Windows environments.
Table 13
SOA Installation Procedures To Configure a domain with Admin Server, WSM-PM, and extend it with a SOA/BPM cluster Yes To Configure a domain with Admin Server, WSM-PM, SOA and extend it to a BPM cluster Yes To configure a domain with Admin Server, WSM-PM, and BAM cluster (without SOA) Yes To configure a domain with Admin Server, WSM-PM, SOA/BPM cluster, and BAM cluster Yes
Perform the steps in... Chapter 2, "Database and Environment Preconfiguration" Chapter 3, "Installing Oracle HTTP Server" Chapter 4, "Creating a Domain" Chapter 5, "Extending the Domain for SOA Components" Chapter 6, "Extending the Domain to Include Oracle BPM" Chapter 7, "Extending the Domain to Include BAM"
To configure a domain with Admin Server, WSM-PM, and extend it with a SOA cluster Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
No
Yes
No
Yes
No
No
No
No
No
No
No)
Yes)
Chapter 8, "Setting Recommende Up Node Manager" d (optional depending on the type of security required for the application tier) Chapter 9, "Server Migration" No
Recommended (optional depending on the type of security required for the application tier)
Recommende d (optional depending on the type of security required for the application tier)
Recommende d (optional depending on the type of security required for the application tier)
Recommend ed (optional depending on the type of security required for the application tier)
Recommend ed (optional depending on the type of security required for the application tier) Yes
1-14 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
verify the installation of the servers and perform specific validations after each pass of the Configuration Wizard. In general, Oracle recommends the following approach:
1. 2. 3.
Run a first pass of the Configuration Wizard to install the Administration Server, Enterprise Manager, and WSM-PM (described in Chapter 4, "Creating a Domain"). Run a second pass of the Configuration Wizard to install the SOA components (described in Chapter 5, "Extending the Domain for SOA Components"). Optionally, run a third pass to install the BAM components (described in Chapter 7, "Extending the Domain to Include BAM").
Oracle recommends this modular approach in order to facilitate the verification of individual components one by one. This building block approach simplifies the troubleshooting during the setup process and facilitates the configuration in smaller steps. Some variation from the above topology is possible. For example, if a deployment chooses to install BAM alone, then only sections applicable extend with BAM need to be followed. Also, in this case, it is expected that the Adminserver will exist on BAMHOST1 instead and the instructions on creating the domain should be modified appropriately. Additionally, Oracle Fusion Middleware 11g R1 11.1.1.3 (PS2) introduces Oracle BPM as a superset of the service engines that existed in previous Oracle Fusion Middleware 11g SOA Suite releases. You can enable Oracle BPM Suite in their systems in different ways. Using the Configuration Wizard to extend an exiting SOA domain, or using the Configuration Wizard to extend an Admin+WSM domain with both SOA and BPM components. Both options are explained in Chapter 6, "Extending the Domain to Include Oracle BPM."
1-16 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
2
2
Section 2.1, "Database" Section 2.2, "Network" Section 2.3, "Shared Storage and Recommended Directory Structure" Section 2.4, "LDAP as Credential and Policy Store"
2.1 Database
For the SOA enterprise topology, the database contains the Oracle Fusion Middleware Repository, which is a collection of schemas used by various Oracle Fusion Middleware components, such as the SOA components, BAM, and UMS. This database is separate from the Identity Management database, which is used in Identity Management EDG by components such as Oracle Internet Directory, DIP, and so on. You must install the Oracle Fusion Middleware Repository before you can configure the Oracle Fusion Middleware components. You install the Oracle Fusion Middleware metadata repository into an existing database using the Repository Creation Utility (RCU), which is available from the RCU DVD or from the location listed in Table 12. For the enterprise topology, a Real Application Clusters (RAC) database is highly recommended. When you configure the SOA components, the configuration wizard will prompt you to enter the information for connecting to the database that contains the metadata repository. This section covers the following topics:
Section 2.1.1, "Setting Up the Database" Section 2.1.2, "Loading the Oracle Fusion Metadata Repository in the Oracle RAC Database" Section 2.1.4, "Backing Up the Database"
Section 2.1.1.1, "Database Host Requirements" Section 2.1.1.2, "Supported Database Versions"
Database
Oracle Clusterware For 11g Release 1 (11.1) for Linux, refer to the Oracle Clusterware Installation Guide for Linux.
Oracle Real Application Clusters For 11g Release 1 (11.1) for Linux, refer to the Oracle Real Application Clusters Installation Guide for Linux. For 10g Release 2 (10.2) for Linux, refer to Oracle Database Oracle Clusterware and Oracle Real Application Clusters Installation Guide.
Automatic Storage Management (optional) ASM gets installed for the node as a whole. It is recommended that you install it in a separate Oracle Home from the Database Oracle Home. This option comes in at runInstaller. In the Select Configuration page, select the Configure Automatic Storage Management option to create a separate ASM home.
To check if your database is certified or to see all certified databases, refer to the "Certified Databases" section in the Certification Document:
http://www.oracle.com/technology/software/products/ias/files/fusion _certification.html
To check the release of your database, you can query the PRODUCT_COMPONENT_ VERSION view as follows: SQL> SELECT VERSION FROM SYS.PRODUCT_COMPONENT_VERSION WHERE PRODUCT LIKE 'Oracle%';
Note:
Oracle SOA Suite requires the database be used to store its metadata (either 10g or 11g) supports the AL32UTF8 character set. Check the database documentation for information on choosing a character set for the database.
2-2 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Database
To check the value of the initialization parameter using SQL*Plus, you can use the SHOW PARAMETER command. As the SYS user, issue the SHOW PARAMETER command as follows: SQL> SHOW PARAMETER processes Set the initialization parameter using the following command:
SQL> ALTER SYSTEM SET processes=300 SCOPE=SPFILE;
The method that you use to change a parameter's value depends on whether the parameter is static or dynamic, and on whether your database uses a parameter file or a server parameter file. See the Oracle Database Administrator's Guide for details on parameter files, server parameter files, and how to change parameter values.
Use the CREATE_SERVICE subprogram to create the soaedg.mycompany.com database service. Log on to SQL*Plus as the sysdba user and run the following command:
SQL> EXECUTE DBMS_SERVICE.CREATE_SERVICE (SERVICE_NAME => 'soaedg.mycompany.com', NETWORK_NAME => 'soaedg.mycompany.com', );
2.
Add the service to the database and assign it to the instances using srvctl:
prompt> srvctl add service -d soadb -s soaedg -r soadb1,soadb2
3.
Note:
For more information about the SRVCTL command, see the Oracle Real Application Clusters Administration and Deployment Guide.
Oracle recommends that a specific database service be used for a product suite, even when they share the same database. It is also recommended that the database service used is different than the default database service. In this case, the database is soadb.mycompany.com and the default service is one with the same name. The SOA install is configured to use the service soaedg.mycompany.com. It is recommended that a service named bamedg.mycompany.com is used for BAM.
Database
2.1.2 Loading the Oracle Fusion Metadata Repository in the Oracle RAC Database
To load the Oracle Fusion Middleware Repository into a database, complete these steps:
1.
Start Repository Creation Utility (RCU), which is available from the RCU DVD or from the location listed in Table 12, by first inserting the RCU DVD.
Note:
The RCU used to seed the database must match the patch set level of the SOA Suite installation. For example, if you install SOA Suite PS1 EDG you use RCU PS1. If you install SOA Suite PS2 EDG, you must use PS2 RCU.
2.
3. 4. 5.
In the Welcome screen, click Next. In the Create Repository screen, select Create to load component schemas into a database. Click Next. In the Database Connection Details screen, enter connect information for your database:
Database Type: select Oracle Database. Host Name: Enter the name of the node that is running the database. For the Oracle RAC database, specify the VIP name or one of the node names as the host name: CUSTDBHOST1-VIP. Port: Enter the port number for the database: 1521. Service Name: Enter the service name of the database: soaedg.mycompany.com Username: SYS Password: Enter the password for the SYS user. Role: SYSDBA
Click Next.
6.
If you get this warning message: The database you are connecting is with non-UTF8 charset, if you are going to use this database for multilingual support, you may have data loss. If you are not using for multilingual support you can continue, otherwise we strongly recommend using UTF-8 database. Click Ignore or Stop.
7.
Select Create a New Prefix, and enter a prefix to use for the database schemas. Example: DEV or PROD. Prefixes are used to create logical groupings of multiple repositories in a database. For more information, see Oracle Fusion Middleware Repository Creation Utility User's Guide.
Tip: Note the name of the schema because the upcoming steps require this information.
2-4 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Database
SOA Infrastructure: - SOA and BPM Infrastructure - User Messaging Service - Business Activity Monitoring
Note:
Business Activity Monitoring (BAM) is only required for BAM installations as described in Chapter 7, "Extending the Domain to Include BAM."
Click Next.
8. 9.
In the Schema Passwords screen, enter passwords for the main and additional (auxiliary) schema users, and click Next. In the Map Tablespaces screen, choose the tablespaces for the selected components, and click Next.
10. In the Summary screen, click Create. 11. In the Completion Summary screen, click Close.
Note:
Oracle recommends using the identity management database (see Chapter 11, "Integration With Oracle Identity Management") to store the Oracle WSM policies. It is therefore expected to use the IM database connection information for the OWSM MDS schemas, which is different from the one used for the rest of SOA schemas. To create the required schemas in the database, repeat the steps above (run RCU again) using the IM database information, but select only AS Common Schemas: Metadata Services in the Select Components screen (step 5).
2.
Network
SQL>
Note:
These privileges should be granted to the owner of the soainfra schema, as determined by the RCU operations.
2.2 Network
This section covers the following topics:
Section 2.2.1, "Virtual Server Names" Section 2.2.2, "Load Balancers" Section 2.2.3, "IPs and Virtual IPs" Section 2.2.4, "Firewalls and Ports"
Ensure that the virtual server names are associated with IP addresses and are part of your DNS. The nodes running Oracle Fusion Middleware must be able to resolve these virtual server names.
2.2.1.1 soa.mycompany.com
soa.mycompany.com is a virtual server name that acts as the access point for all HTTP traffic to the runtime SOA components, such as soa-infra, workflow, and B2B. Traffic to SSL is configured. Clients access this service using the address soa.mycompany.com:443. This virtual server is defined on the load balancer.
2.2.1.2 admin.mycompany.com
admin.mycompany.com is a virtual server name that acts as the access point for all internal HTTP traffic that is directed to administration services such as WebLogic Administration Server Console and Oracle Enterprise Manager.
2-6 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Network
The incoming traffic from clients is not SSL-enabled. Clients access this service using the address admin.mycompany.com:80 and the requests are forwarded to port 7777 on WEBHOST1 and WEBHOST2. This virtual server is defined on the load balancer.
2.2.1.3 soainternal.mycompany.com
soainternal.mycompany.com is a virtual server name used for internal invocations of SOA services. This url is not exposed to the internet and is only accessible from the intranet. (For SOA systems, users can set this while modeling composites or at runtime with the appropriate EM/MBeans, as the url to be used for internal services invocations.) The incoming traffic from clients is not SSL-enabled. Clients access this service using the address soainternal.mycompany.com:80 and the requests are forwarded to port 7777 on WEBHOST1 and WEBHOST2. This virtual server is defined on the load balancer.
The Oracle Technology Network (http://www.oracle.com/technology/index.html) provides a list of validated load balancers and their configuration at http://www.oracle.com/technology/products/ias/hi_ av/Tested_LBR_FW_SSLAccel.html.
Create a pool of servers. You will assign this pool to virtual servers. Add the addresses of the Oracle HTTP Server hosts to the pool. For example:
WEBHOST1:7777 WEBHOST2:7777
3.
For this virtual server, use your systems frontend address as the virtual server address (for example, soa.mycompany.com). The frontend address is the externally facing host name used by your system and that will be exposed in the Internet. Configure this virtual server with port 80 and port 443. Any request that goes to port 80 should be redirected to port 443. Specify ANY as the protocol (non-HTTP protocols are required for B2B). Enable address and port translation. Enable reset of connections when services and/or nodes are down. Assign the pool created in step 1 to the virtual server. Create rules to filter out access to /console and /em on this virtual server.
Network
4.
For this virtual server, use your internal administration address as the virtual server address (for example, admin.mycompany.com). This address is typically not externalized. Specify HTTP as the protocol. Enable address and port translation. Enable reset of connections when services and/or nodes are down. Assign the pool created in step 1 to the virtual server.
5.
For this virtual server, use your internal administration address as the virtual server address (for example, soainternal.mycompany.com). This address is typically not externalized. Specify HTTP as the protocol. Enable address and port translation. Enable reset of connections when services and/or nodes are down. Assign the pool created in step 1 to the virtual server. Optionally, create rules to filter out access to /console and /em on this virtual server.
6.
Configure monitors for the Oracle HTTP Server nodes to detect failures in these nodes.
Use GET /\n\n instead if the Oracle HTTP Servers document root does not include index.htm and Oracle WebLogic Server returns a 404 error for "/".
For the ping interval, specify a value that does not overload your system. You can try 5 seconds as a starting point. For the timeout period, specify a value that can account for the longest time response that you can expect from your SOA system, that is, specify a value greater than the longest period of time any of your requests to HTTP servers can take.
2-8 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Network
the physical IP of BAMHOST2 and is used as the listen address by the WLS_BAM2 Server.
Figure 21 IPs and VIPs Mapped to Administration Server and Managed Servers
VIP2
SOAHOST1VHN1
VIP3
SOAHOST2VHN1
VIP4
BAMHOST1VHN1
Network
FW0 refers to the outermost firewall. FW1 refers to the firewall between the web tier and the application tier. FW2 refers to the firewall between the application tier and the data tier.
Table 23
Ports Used Port and Port Protocol / Range Application 80 HTTP / Load Balancer Inbound / Outbound Inbound Other Considerations and Timeout Guidelines Timeout depends on all HTML content and the type of process model used for SOA. Timeout depends on all HTML content and the type of process model used for SOA. See Section 2.2.2.1, "Configuring the Load Balancer." Set the timeout to a short period (5-10 seconds). Set the timeout to a short period (5-10 seconds). Set the timeout to 60 seconds.
Firewall FW0
Browser request
FW0
443
Inbound
Load balancer to Oracle HTTP Server OHS registration with Administration Server OHS management by Administration Server
n/a
7777
HTTP
n/a
FW1
7001
HTTP/t3
Inbound
FW1
OPMN port (6701) and OHS Admin Port (7779) 7010 Range: 7010 7999
Outbound
WSM-PM access
FW1
Inbound
FW1
Timeout varies based on the type of process model used for SOA. Connections to BAM WebApps are kept open until the report/browser is closed, so set the timeout as high as the longest expected user session.
BAM access
FW1
Inbound
2-10 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Network
Table 23 (Cont.) Ports Used Port and Port Protocol / Range Application 8001 TCP/IP Unicast Inbound / Outbound n/a Other Considerations and Timeout Guidelines By default, this communication uses the same port as the servers listen address. By default, this communication uses the same port as the servers listen address. By default, this communication uses the same port as the servers listen address. You should tune this timeout based on the type of access to the admin console (whether it is planned to use the Oracle WebLogic Server Administration Console from application tier clients or clients external to the application tier). n/a For actual values, see "Firewalls and Ports" in Oracle Fusion Middleware Enterprise Deployment Guide for Oracle Identity Management. Access Server access FW1 6021 OAP Inbound For actual values, see "Firewalls and Ports" in Oracle Fusion Middleware Enterprise Deployment Guide for Oracle Identity Management.
Type Communication between SOA Cluster members Communication between WSM Cluster members Session replication within a WebLogic Server cluster Administration Console access
Firewall n/a
n/a
7010
TCP/IP Unicast
n/a
n/a
n/a
n/a
n/a
FW1
7001
Both
Node Manager
n/a
5556
TCP/IP
n/a
FW1 FW2
6022 1521
OAP SQL*Net
Inbound Both Timeout depends on all database content and on the type of process model used for SOA. n/a
n/a
n/a
2-11
Table 23 (Cont.) Ports Used Port and Port Protocol / Range Application 389 LDAP Inbound / Outbound Inbound Other Considerations and Timeout Guidelines You should tune the directory servers parameters based on load balancer, and not the other way around. You should tune the directory servers parameters based on load balancer, and not the other way around. n/a
Firewall FW2
FW2
636
LDAP SSL
Inbound
n/a
9991
TCP/IP
n/a
Note:
The TCP/IP port for B2B is a user-configured port and is not predefined. Similarly, the firewall ports depend on the definition of TCP/IP ports.
Section 2.3.1, "Terminology for Directories and Directory Environment Variables" Section 2.3.2, "Recommended Locations for the Different Directories" Section 2.3.3, "Shared Storage Configuration"
ORACLE_BASE: This environment variable and related directory path refers to the base directory under which Oracle products are installed. MW_HOME: This environment variable and related directory path refers to the location where Fusion Middleware (FMW) resides. WL_HOME: This environment variable and related directory path contains installed files necessary to host a WebLogic Server. ORACLE_HOME: This environment variable and related directory path refers to the location where Oracle FMW SOA Suite is installed. ORACLE_COMMON_HOME: This environment variable and related directory path refers to the Oracle home that contains the binary and library files required for the Oracle Enterprise Manager Fusion Middleware Control and Java Required Files (JRF). DOMAIN Directory: This directory path refers to the location where the Oracle WebLogic Domain information (configuration artifacts) is stored. Different WLS
2-12 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Servers can use different domain directories even when in the same node as described below.
ORACLE_INSTANCE: An Oracle instance contains one or more system components, such as Oracle Web Cache, Oracle HTTP Server, or Oracle Internet Directory. An Oracle instance directory contains updateable files, such as configuration files, log files, and temporary files.
2-13
JMS file stores and JTA transaction logs need to be placed on a shared storage in order to ensure that they are available from multiple boxes for recovery in the case of a server failure or migration. Based on the above assumptions, the following paragraphs describe the directories recommended. Wherever a shared storage location is directly specified, it is implied that shared storage is required for that directory. When using local disk or shared storage is optional the mount specification is qualified with "if using a shared disk." The shared storage locations are examples and can be changed as long as the provided mount points are used. However, Oracle recommends this structure in the shared storage device for consistency and simplicity. ORACLE_BASE: /u01/app/oracle MW_HOME (application tier): ORACLE_BASE/product/fmw
Mount point: ORACLE_BASE/product/fmw Shared storage location: ORACLE_BASE/product/fmw (VOL1 and VOL2)
Note:
When there is just one volume available in the shared storage, you can provide redundancy using different directories to protect from accidental file deletions and for patching purposes. Two MW_ HOMEs would be available; at least one at ORACLE_ BASE/product/fmw1, and another at ORACLE_ BASE/product/fmw2. These MW_HOMEs are emounted on the same mount point in all nodes.
Mounted from: Nodes alternatively mount VOL1 or VOL2 so that at least half of the nodes use one installation, and half use the other. In a SOA Enterprise Deployment topology, SOAHOST1 mounts VOL1 and SOAHOST2 mounts VOL2. When only one volume is available, nodes mount the two suggested directories in shared storage alternately. For example, SOAHOST1 would use ORACLE_BASE/product/fmw1 as a shared storage location, and SOAHOST2 would use ORACLE_BASE/product/fmw2 as a shared storage location)
Mount point: ORACLE_BASE/product/fmw Shared storage location: ORACLE_BASE/product/fmw (VOL1 and VOL2)
Note:
Web Tier installation is typically performed on local storage to the WEBHOST nodes. When using shared storage, consider the appropriate security restrictions for access to the storage device across tiers.
Mounted from: For Shared Storage installations, nodes alternatively mount VOL1 or VOL2 so that at least half of the nodes use one installation, and half use the other.
2-14 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
In a SOA Enterprise Deployment topology, WEBHOST1 mounts VOL1 and WEBHOST2 mounts VOL2. When only one volume is available, nodes mount the two suggested directories in shared storage alternately. For example, WEBHOST1 would use ORACLE_BASE/product/fmw1 as a shared storage location, and WEBHOST2 would use ORACLE_BASE/product/fmw2 as a shared storage location). WL_HOME: MW_HOME/wlserver_10.3 ORACLE_HOME: MW_HOME/soa ORACLE_COMMON_HOME: MW_HOME/oracle_common ORACLE_INSTANCE: ORACLE_BASE/admin/instance_name
If you are using a shared disk, the mount point on the machine is ORACLE_ BASE/admin/<instance_name> mounted to ORACLE_ BASE/admin/<instance_name> (VOL1).
Note:
Domain Directory for Administration Server Domain Directory: ORACLE_BASE/admin/domain_name/aserver/domain_name (The last domain_ name is added by config wizard)
Mount point on machine: ORACLE_BASE/admin/domain_name/aserver Shared storage location: ORACLE_BASE/admin/domain_name/aserver Mounted from: Only the node where the Administration Server is running needs to mount this directory. When the Administration Server is relocated (failed over) to a different node, the node then mounts the same shared storage location on the same mount point. The remaining nodes in the topology do not need to mount this location
If you are using a shared disk, the mount point on the machine is ORACLE_ BASE/admin/<domain_name>/mserver mounted to /ORACLE_BASE/admin /<domain_name>/Noden/mserver/ (each node uses a different domain directory for managed servers).
Note: This procedure is really shared storage dependent. The above example is specific to NAS, but other storage types may provide this redundancy with different types of mappings.
Location for JMS file-based stores and Tlogs (SOA only): ORACLE_BASE/admin/domain_name/soa_cluster_name/jms ORACLE_BASE/admin/domain_name/soa_cluster_name/tlogs
Database and Environment Preconfiguration 2-15
Mount point: ORACLE_BASE/admin/domain_name/soa_cluster_name/ Shared storage location: ORACLE_BASE/admin/domain_name/soa_cluster_name/ Mounted from: All nodes running SOA or BAM must mount this shared storage location so that transaction logs and JMS stores are available when server migration to another node take place.
Mount point: ORACLE_BASE/admin/domain_name/aserver/ Shared storage location: ORACLE_BASE/admin/domain_name/aserver Mounted from: Only the node where the Administration Server is running must mount this directory. When the Administration Server is relocated (failed over) to a different node, the node then mounts the same shared storage location on the same mount point. The remaining nodes in the topology do not need to mount this location
admin
product/fmw
domain_name
instance_name
wlserver _10.3
soa
wc
web
aserver
mserver
soa_cluster_name
domain_name
applications
domain_name
applications
dd
jms
fadapter
tlogs
The directory structure in Figure 22 does not show other required internal directories, such as oracle_common and jrockit. Table 24 explains what the various color-coded elements in the diagram mean.
2-16 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Table 24 Element
Directory Structure Elements Explanation The Administration Server domain directories, applications, deployment plans, file adapter control directory, JMS and TX logs, and the entire MW_HOME are on a shared disk. The managed server domain directories can be on a local disk or a shared disk. Further, if you want to share the managed server domain directories on multiple nodes, then you must mount the same shared disk location across the nodes. The instance_name directory for the web tier can be on a local disk or a shared disk. Fixed name. Installation-dependent name.
Figure 23 shows an example configuration for shared storage with multiple volumes for SOA. This can be extrapolated with the same structure for BAM deployments.
Figure 23 Example Configuration for Shared Storage
SOAHOST1 VIP 1 Ad i S Admin Server Admin Server Admin Console EM IP 1 WLS WSM1 WLS_WSM1 WLS_WSM1 WSM-PM VIP 2 WLS SOA1 WLS_SOA1 WLS_SOA1 SOA UMS B2B Ad i S Admin Server Admin Server Admin Console EM SOAHOST2 IP 2 WLS WSM1 WLS_WSM1 WLS_WSM2 WSM-PM VIP 3 WLS SOA1 WLS_SOA1 WLS_SOA2 SOA UMS B2B
JRF/OPSS
JRF/OPSS
JRF/OPSS
JRF/OPSS
JRF/OPSS
JRF/OPSS
Vol1
Vol1
Vol2
Vol1
DOMAIN Config / Apps Admin: AdminServer DOMAIN Config / Apps MAN. SERVERS1: WLS_SOA1, WLS_WSM1
Vol2
2-17
Table 25
Server WLS_SOA1
Files
ORACLE_BASE/admin/<domain_ The transaction directory is name>/<soa_cluster_name>/tlogs common (decided by WebLogic Server), but the files are separate. ORACLE_BASE/admin/<domain_ The transaction directory is name>/<soa_cluster_name>/tlogs common (decided by WebLogic Server), but the files are separate. ORACLE_BASE/admin/<domain_ The transaction directory is name>/<soa_cluster_name>/jms common (decided by WebLogic Server), but the files are separate; for example: SOAJMSStore1, UMSJMSStore1, and so on. ORACLE_BASE/admin/<domain_ The transaction directory is name>/<soa_cluster_name>/jms common (decided by WebLogic Server), but the files are separate; for example: SOAJMSStore2, UMSJMSStore2, etc. MW_HOME Individual in each volume, but both servers see same directory structure. Individual in each volume, but both servers see same directory structure. Individual in each volume, but both servers see same directory structure. Individual in each volume, but both servers see same directory structure.
WLS_SOA2
Tx Logs
VOL1
WLS_SOA1
JMS Stores
VOL1
WLS_SOA2
JMS Stores
VOL1
WLS_SOA1
WLS Install
VOL1
WLS_SOA2
WLS Install
VOL2
MW_HOME
WLS_SOA1
SOA Install
VOL1
MW_HOME/ soa
WLS_SOA2
SOA Install
VOL2
MW_HOME/ soa
WLS_SOA1
Domain Config
VOL1
ORACLE_BASE/admin/<domain_ For configurations where name>/mserver/<domain_name> managed server domain directory is located in shared storage, the files would be individual in each volume, but both servers see the same directory structure. In this guide, local storage is used for managed server domain directories. ORACLE_BASE/admin/<domain_ Individual in each volume, name>/mserver/<domain_name> but both servers see same directory structure.
WLS_SOA2
Domain Config
VOL2
2-18 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
From SOAHOST1:
SOAHOST1> mount nasfiler:/vol/vol1/u01/app/oracle/product/fmw /u01/app/oracle/product/fmw -t nfs
From SOAHOST2:
SOAHOST2> mount nasfiler:/vol/vol2/u01/app/oracle/product/fmw /u01/app/oracle/product/fmw -t nfs
If only one volume is available, users can provide redundancy for the binaries by using two different directories in the shared storage and mounting them to the same dir in the SOA Servers: From SOAHOST1:
SOAHOST1> mount nasfiler:/vol/vol1/u01/app/oracle/product/fmw1 /u01/app/oracle/product/fmw -t nfs
From SOAHOST2:
SOAHOST2> mount nasfiler:/vol/vol2/u01/app/oracle/product/fmw2 /u01/app/oracle/product/fmw -t nfs
The following commands show how to share the SOA TX logs location across different nodes:
SOAHOST1> mount nasfiler:/vol/vol1/u01/app/oracle/stores/soadomain/soa_ cluster/tlogs /u01/app/oracle/stores/soadomain/soa_cluster/tlogs -t nfs SOAHOST2> mount nasfiler:/vol/vol1/u01/app/oracle/stores/soadomain/soa_ cluster/tlogs /u01/app/oracle/stores/soadomain/soa_cluster/tlogs -t nfs
Note:
The shared storage can be a NAS or SAN device. The following illustrates an example of creating storage for a NAS device from SOAHOST1. The options may differ depending on the specific storage device.
Contact your storage vendor and machine administrator for the correct options for your environment.
2-19
of an LDAP as policy and credential store in context of Oracle Fusion Middleware SOA Suite Enterprise Deployment Topology. To configure the Oracle Fusion Middleware SOA Suite Enterprise Deployment Topology with an LDAP as Credential and Policy store, follow the steps in Section 11.1, "Credential and Policy Store Configuration."
2-20 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
3
3
You install and configure Oracle HTTP Server on nodes in the web tier. This chapter contains the following sections:
Section 3.1, "Installing Oracle HTTP Server on WEBHOST1 and WEBHOST2" Section 3.2, "Validating Oracle HTTP Server Through the Load Balancer" Section 3.3, "Backing Up Oracle HTTP Server"
Ensure that the system, patch, kernel, and other requirements are met as specified in the installation guide. Because Oracle HTTP Server is installed by default on port 7777, you must ensure that port 7777 is not used by any service on the nodes. To check if this port is in use, run the following command before installing Oracle HTTP Server. You must free the ports if they are in use. netstat -an | grep 7777
2.
On Linux platforms, if the /etc/oraInst.loc file exists, check that its contents are correct. Specifically, check that the inventory directory is correct and that you have write permissions for that directory. If the /etc/oraInst.loc file does not exist, you can skip this step.
3.
Start the Oracle Universal Installer from the Oracle Fusion Middleware 11g WebTier and Utilities DVD by issuing this command: runInstaller
4.
If the Specify Inventory Directory screen appears, enter the location for the inventory and the user group and then click OK; otherwise, ignore steps 4 and 5 and continue with step 6. Execute the root privileged actions as indicated in the dialog and then click OK. In the Welcome screen, click Next. In the Select Installation Type screen, select Install and Configure, and click Next. In the Prerequisite Checks screen, ensure that all the prerequisites are met, then click Next.
Installing Oracle HTTP Server 3-1
5. 6. 7. 8.
9.
Click Next.
10. In the Configure Components screen, do the following:
Select Oracle Http Server. Do not select Oracle Web Cache. Do not select Associate Selected Components with WebLogic Domain because you have not yet installed WebLogic Server.
Click Next.
11. In the Specify Component Details screen, do the following:
Enter the following values for WEBHOST1: Instance Home Location: ORACLE_BASE/admin/<instance_name> Instance Name: ohs_instance1 OHS Component Name: ohs1
Enter the following values for WEBHOST2: Instance Home Location: ORACLE_BASE/admin/<instance_name> Instance Name: ohs_instance2 OHS Component Name: ohs2
Click Next.
12. In the Configure Ports screen, do the following:
Select Specify Ports using Configuration File and copy the staticports.ini template file from your installation disk (the file is located in the /Disk1/stage/Response directory) to you user's home. Then use the Browse button to select this file. Click View/Edit File to open the staticports.ini file in an editor. Change the Oracle HTTP Server port in that file to 7777. Save the file.
Click Next.
Note:
For more information on setting ports, refer to Oracle Fusion Middleware Installation Guide for Oracle SOA Suite.
13. In the Specify Security Updates screen, enter your e-mail address to receive
e-mail notifications of security issues (if required). Enter your Oracle Support Password to receive security updates through My Oracle Support.
14. In the Installation Summary screen, ensure that the selections are correct, and
click Install.
3-2 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
succession, which can be a lengthy process. When it completes, the Configuration Completed screen appears.
16. In the Installation Completed screen, click Finish to exit.
Make sure that you restart both OHS servers after modifying the httpd.conf files:
WEBHOST> cd ORACLE_BASE/admin/<instance_name>/bin WEBHOST> opmnctl start WEBHOST> opmnctl restartproc process-type=OHS
Verify that the server status is reported as "Running" in the Admin Console. If the server is shown as "Starting" or "Resuming," wait for the server status to change to "Started." If another status is reported (such as "Admin" or "Failed"), check the server output log files for errors. See Section 10.6, "Troubleshooting" for possible causes. Access the following URLs to ensure that your load balancer and Oracle HTTP Server are configured properly:
3-3
2.
Back up the Middleware Home on the web tier using the following command:
tar -cvpf BACKUP_LOCATION/web.tar MW_HOME/web
3.
Back up the Instance Home on the web tier using the following command:
tar -cvpf BACKUP_LOCATION/web_instance_name.tar ORACLE_INSTANCE
4.
3-4 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
4
4
Creating a Domain
This chapter describes how to create a domain using the Configuration Wizard, Oracle WebLogic Server Administration Console, Oracle Enterprise Manager, and Oracle WSM Policy Manager. You can extend the domain to add SOA components and, optionally, Oracle Business Activity Monitoring.
Important: Oracle strongly recommends that you read the release notes for any additional installation and deployment considerations prior to starting the setup process.
Section 4.1, "Installing Oracle Fusion Middleware Home" Section 4.2, "Backing Up the Installation" Section 4.3, "Enabling VIP1 in SOAHOST1" Section 4.4, "Running the Configuration Wizard on SOAHOST1 to Create a Domain" Section 4.5, "Creating boot.properties for the Administration Server on SOAHOST1" Section 4.6, "Starting Node Manager on SOAHOST1" Section 4.7, "Starting the Administration Server on SOAHOST1" Section 4.8, "Validating the Administration Server" Section 4.9, "Creating a Separate Domain Directory for Managed Servers in the Same Node as the Administration Server" Section 4.10, "Applying the Java Required Files (JRF) Template to the WSM-PM_ Cluster" Section 4.11, "Disabling Host Name Verification for the Oracle WebLogic Administration Server and the WLS_WSM1 Managed Server" Section 4.12, "Starting and Validating the WLS_WSM1 Managed Server" Section 4.13, "Propagating the Domain Configuration to SOAHOST2 Using the unpack Utility" Section 4.14, "Disabling Host Name Verification for the WLS_WSM2 Managed Server" Section 4.15, "Starting Node Manager on SOAHOST2"
Creating a Domain
4-1
Section 4.16, "Starting and Validating the WLS_WSM2 Managed Server" Section 4.17, "Configuring the Java Object Cache for Oracle WSM" Section 4.18, "Configuring Oracle HTTP Server for the Administration Server and the WLS_WSM-PMn Managed Servers" Section 4.19, "Registering Oracle HTTP Server With WebLogic Server" Section 4.20, "Setting the Frontend URL for the Administration Console and Setting Redirection Preferences" Section 4.21, "Validating Access Through Oracle HTTP Server" Section 4.22, "Manually Failing Over the Administration Server to SOAHOST2" Section 4.23, "Validating Access to SOAHOST2 Through Oracle HTTP Server" Section 4.24, "Failing the Administration Server Back to SOAHOST1" Section 4.25, "Backing Up the Installation"
Oracle WebLogic Server (see Section 4.1.1, "Installing Oracle WebLogic Server") Oracle SOA Suite (see Section 4.1.2, "Installing Oracle Fusion Middleware for SOA")
Start the Oracle WebLogic Server installer. For UNIX (Linux used in this example):
SOAHOST1> wls_linux32.bin
In the Welcome screen, click Next. In the Choose Middleware Home Directory screen, do the following:
Select Create a New Middleware Home. For Middleware Home Directory, enter MW_HOME.
Note:
ORACLE_BASE is the base directory under which Oracle products are installed. The recommended value is /u01/app/oracle. See Section 2.3, "Shared Storage and Recommended Directory Structure" for more information.
Click Next.
4-2 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
4. 5. 6. 7. 8. 9.
In the Register for Security Updates screen, enter your contact information so that you can be notified of security updates, and click Next. In the Choose Install Type screen, select Custom, and click Next. In the Choose Products and Components screen, click Next. In the JDK Selection screen, select only Oracle JRockit 1.6.0_<version> SDK, and click Next. In the Choose Product Installation Directories screen, accept the directory WL_ HOME, and click Next. In the Installation Summary screen, click Next.
10. In the Installation Complete screen, unselect Run QuickStart, and click Done.
On Linux platforms, if the /etc/oraInst.loc file exists, check that its contents are correct. Specifically, check that the inventory directory is correct and that you have write permissions for that directory. If the /etc/oraInst.loc file does not exist, you can skip this step.
2.
When the installer prompts you for a JRE/JDK location, enter the Oracle SDK location created in the Oracle WebLogic Server installation, for example, MW_ HOME/jrockit_160_<version>.
3.
Enter HOME/oraInventory, where HOME is the home directory of the user performing the installation (this is the recommended location). Enter the OS group for the user performing the installation. Click Next.
In the Welcome screen, click Next. In the Prerequisite Check screen, verify that the checks complete successfully, and click Next. Specify the installation location. Select the previously installed Middleware Home from the drop-down list. For the Oracle Home directory, enter the directory name (soa). Click Next.
7. 8. 9.
In the Installation Summary screen, click Install. In the Installation Summary screen, click Next. In the Installation Complete screen, click Finish.
Creating a Domain
4-3
Note:
This Enterprise Deployment Guide assumes that the binary installation for both Oracle Fusion Middleware Components and Oracle HTTP Server are patched to the latest patch set available. The Enterprise Deployment Guide does not take into consideration running systems and rolling patches, but instead assumes the system is created from scratch and patched to the latest available patch set before the Configuration Wizard and domain operations are started. Follow the documentation included with each patch set to properly patch an existing installation. Specifically for Oracle BPM, Oracle requires the WL_HOME and ORACLE_HOME to be patched to the latest Oracle Fusion Middleware patch set level before the WebLogic Configuration Wizard steps are performed to extend a domain. For information about the latest versions and patching procedures for Oracle Fusion Middleware, see the Oracle Fusion Middleware Patching Guide.
This creates a backup of the installation files for both Oracle WebLogic Server and Oracle Fusion Middleware for SOA.
For example:
/sbin/ifconfig ethX:Y 100.200.140.206 netmask 255.255.255.0
Enable your network to register the new location of the virtual IP, for example:
/sbin/arping -q -U -c 3 -I ethX 100.200.140.206
Validate that the address is available by pinging it from another node, for example:
/bin/ping 100.200.140.206
In this example ethX is the ethernet interface (eth0 or eth1) and Y is the index (0, 1, 2, etc.).
4-4 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Ensure that the database where you installed the repository is running. For Oracle RAC databases, it is recommended that all instances are running, so that the validation check later on becomes more reliable. Change directory to the location of the Configuration Wizard. This is within the SOA home directory.
SOAHOST1> cd ORACLE_COMMON_HOME/common/bin
2.
3.
4. 5.
In the Welcome screen, select Create a New WebLogic Domain, and click Next. The Select Domain Source screen is displayed (Figure 41).
Screenshot of the Select Domain Source screen, where you select the products that the newly created WebLogic domain will support automatically. It is described in further detail in the text following this image. *********************************************************************************************** In the Select Domain Source screen, do the following:
Select Generate a domain configured automatically to support the following products. Select the following products:
Creating a Domain 4-5
Basic WebLogic Server Domain - 10.3.1.0 [wlserver_10.3] (this should be selected automatically) Oracle Enterprise Manager - 11.1.1.0 [oracle_common] Oracle WSM Policy Manager 11.1.1.0 [oracle_common] Oracle JRF - 11.1.1.0 [oracle_common] (this should be selected automatically)
If you accidentally deselect some of the targets, make sure that the following selections are made in this screen:
Click Next.
6.
In the Specify Domain Name and Location screen, enter the domain name (soaedg_domain). Make sure that the domain directory matches the directory and shared storage mount point recommended in Chapter 2, "Database and Environment Preconfiguration": enter ORACLE_BASE/admin/<domain_name>/aserver/ for the domain directory and ORACLE_BASE/admin/<domain_ name>/aserver/applications for the application directory. This directory should be in shared storage.
7. 8.
Click Next. In the Configure Administrator Username and Password screen, enter the username and password to be used for the domains administrator. Click Next.
9.
In the Configure Server Start Mode and JDK screen, do the following:
For WebLogic Domain Startup Mode, select Production Mode. For JDK Selection, select JROCKIT SDK1.6.0_<version> .
Click Next.
10. In the Configure JDBC Components Schema screen, do the following: a. b. c.
Select the OWSM MDS schema. Select Configure selected component schemas as RAC multi data source schemas in the next panel. Click Next.
11. The Configure RAC Multi Data Sources Component Schema screen is displayed
(Figure 42).
4-6 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Enter values for the following fields, specifying the connect information for the Oracle RAC database that was seeded with RCU. Driver: Select Oracle driver (Thin) for RAC Service-Instance connections, Versions:10, 11. Service Name: Enter the service name of the database, for example, soaedg.mycompany.com. Username: Enter the complete user name (including the prefix) for the schemas. Password: Enter the password to use to access the schemas.
b. c. d. e.
Enter the host name, instance name, and port. Click Add. Repeat this for each Oracle RAC instance. Click Next.
12. In the Test JDBC Data Sources screen, the connections should be tested
automatically. The Status column displays the results. Ensure that all connections were successful. If not, click Previous to return to the previous screen and correct your entries. Click Next when all the connections are successful.
13. In the Select Optional Configuration screen, select the following:
Administration Server
Creating a Domain 4-7
Click Next.
14. In the Configure the Administration Server screen, enter the following values:
Name: AdminServer Listen Address: enter ADMINVHN. Listen Port: 7001 SSL listen port: N/A SSL enabled: unchecked
Click Next.
15. In the Configure Managed Servers screen, click Add to add the following
managed servers:
Table 41 Name WLS_WSM1 WLS_WSM2 Managed Servers Listen Address SOAHOST1 SOAHOST2 Listen Port 7010 7010 SSL Listen Port n/a n/a SSL Enabled No No
Click Next.
16. In the Configure Clusters screen, Click Add to add the following clusters: Table 42 Name WSM-PM_Cluster Clusters Cluster Messaging Mode unicast Multicast Address Multicast Port n/a n/a Cluster Address Leave it empty.
Click Next.
17. In the Assign Servers to Clusters screen, assign servers to clusters as follows:
Click Next.
18. In the Configure Machines screen, do the following:
Click the Unix Machine tab and then click Add to add the following machines:
Machines Node Manager Listen Address SOAHOST1 SOAHOST2 LOCALHOST
ADMINHOST
4-8 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
SOAHOST1: WLS_WSM1
SOAHOST2: WLS_WSM2
ADMINHOST AdminServer
Click Next.
20. In the Target Deployments to Clusters or Servers screen, make sure that the
wsm-pm application and the oracle.wsm.seedpolicies library is targeted to the WSM-PM_Cluster only. Make sure that all other deployments are targeted to the AdminServer. Click Next.
21. In the Target Services to Clusters or Servers screen, select the following:
On the left, select WSM-PM_Cluster. On the right, select JDBC System Resource (this automatically selects all the wsm datasources (mds-owsm)). On the left, select Admin Server. On the right, select JDBC System Resource (this automatically selects all the wsm datasources (mds-owsm)).
All JDBC system resources should be targeted to both the Admin Server and WSM-PM_Cluster.
On the left, select WSM-PM_Cluster. On the right, select JOC-Shutdown, JOC-Startup, and OWSM Startup Class. On the left, select Admin Server. On the right, deselect JOC-Shutdown and JOC-Startup. Make sure these services are not targeted to the Admin Server.
JOC-Shutdown, JOC-Startup, and OWSM Startup Class should be targeted only to the WSM-PM_Cluster.
Make sure that all the remaining services are targeted to the Admin Server. Click Next.
22. In the Configuration Summary screen, click Create. 23. In the Create Domain screen, click Done.
Creating a Domain
4-9
2.
In a text editor, create a file called boot.properties in the last directory created in the previous step, and enter the following lines in the file:
username=<adminuser> password=<password>
Note:
When you start the Administration Server, the username and password entries in the file get encrypted. You start the Administration Server in Section 4.7, "Starting the Administration Server on SOAHOST1." For security reasons, you want to minimize the time the entries in the file are left unencrypted: after you edit the file, you should start the server as soon as possible so that the entries get encrypted.
Run the setNMProps.sh script, which is located in the ORACLE_COMMON_ HOME/common/bin directory, to set the StartScriptEnabled property to true before starting Node Manager:
SOAHOST1> cd ORACLE_COMMON_HOME/common/bin SOAHOST1> ./setNMProps.sh
Note:
You must use the StartScriptEnabled property to avoid class loading failures and other problems. See also Section 10.6.5, "Incomplete Policy Migration After Failed Restart of SOA Server."
2.
Start the Administration Server using the start script in the domain directory
SOAHOST1> cd ORACLE_BASE/admin/domain_name/aserver/domain_name/bin SOAHOST1> ./startWebLogic.sh
2.
b. c.
4-10 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Creating a Separate Domain Directory for Managed Servers in the Same Node as the Administration Server
d. e. f. 3. 4.
Click domain_name, Security, General, and then expand the Advanced options at the bottom. Enter a new username for Node Manager, or make a note of the existing one and update the Node Manager password. Save and activate the changes.
Stop the Administration Server process by using CTRl-C in the shell where it was started, or by process identification and kill in the OS. Start WLST and connect to Node Manager with nmconnect and the credentials set in the previous steps and start the Administration Server using nmstart.
SOAHOST1> cd ORACLE_COMMON_HOME/common/bin SOAHOST1> ./wlst.sh
Note:
This username and password are used only to authenticate connections between Node Manager and clients. They are independent of the server admin ID and password and are stored in the ORACLE_BASE/admin/domain_name/aserver/domain_ name/config/nodemanager/nm_password.properties file.
In a browser, go to http://ADMINVHN:7001/console. Log in as the administrator. Verify that the WLS_WSM1 and WLS_WSM2 managed servers are listed. Verify that the WSM-PM_Cluster cluster is listed. Check that you can access Oracle Enterprise Manager at http://ADMINVHN:7001/em. Log in to EM Console with the username and password you specified in Section 4.5, "Creating boot.properties for the Administration Server on SOAHOST1."
4.9 Creating a Separate Domain Directory for Managed Servers in the Same Node as the Administration Server
Use the pack and unpack commands to separate the domain directory used by the Administration Server from the domain directory used by the managed server in SOAHOST1as recommended in Chapter 2, "Database and Environment Preconfiguration."
1.
SOAHOST1> cd ORACLE_COMMON_HOME/common/bin SOAHOST1> ./pack.sh -managed=true -domain=ORACLE_BASE/admin/domain_ name/aserver/domain_name -template=soadomaintemplate.jar -template_name=soa_ domain_template 2.
Run the unpack command on SOAHOST1 to unpack the template in the managed server domain directory as follows:
SOAHOST1> cd ORACLE_COMMON_HOME/common/bin SOAHOST1> ./unpack.sh -domain=ORACLE_BASE/admin/domain_name/mserver/domain_name -template=soadomaintemplate.jar -app_dir=ORACLE_BASE/admin/domain_ name/mserver/applications
4.10 Applying the Java Required Files (JRF) Template to the WSM-PM_ Cluster
After the domain is created with the Configuration Wizard, you must target a number of resources not included in the WebLogic server installation to the WSM-PM Cluster. To target these resources:
1.
Log in to Oracle Enterprise Manager Fusion Middleware Control with the username and password you specified in Section 4.5, "Creating boot.properties for the Administration Server on SOAHOST1." On the navigation tree on the left, expand Farm_<domain_name>, WebLogic Domain, and then <domain_name>, and select WSM_PM_Cluster. Click Apply JRF Template on the right. Wait for the confirmation message to appear on the screen. This message should confirm that the JRF Template has been successfully applied to the WSM-PM_Cluster cluster.
2. 3. 4.
5.
4.11 Disabling Host Name Verification for the Oracle WebLogic Administration Server and the WLS_WSM1 Managed Server
This step is required if you have not set up the appropriate certificates to authenticate the different nodes with the Administration Server (see Chapter 8, "Setting Up Node Manager"). If you have not configured the server certificates, you will receive errors when managing the different WebLogic Servers. To avoid these errors, disable host name verification while setting up and validating the topology, and enable it again once the EDG topology configuration is complete as described in Chapter 8, "Setting Up Node Manager." Perform these steps to disable host name verification:
1. 2. 3. 4. 5.
Log in to Oracle WebLogic Server Administration Console. Click Lock and Edit. Expand the Environment node in the Domain Structure window. Click Servers. The Summary of Servers page appears. Select AdminServer(admin) in the Names column of the table. The Settings page for AdminServer(admin) appear.
4-12 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
6. 7. 8. 9.
Click the SSL tab. Click Advanced. Set Hostname Verification to None. Click Save.
10. Repeat steps 4 to 8 for the WLS_WSM1 server. 11. Save and activate the changes. 12. The change requires restart of the Administration Server to be effective. To do this,
In the Summary of Servers screen, select the Control tab. Select AdminServer(admin) in the table and then click Shutdown. Start the Administration Server again using the procedure in Section 4.7, "Starting the Administration Server on SOAHOST1."
Start the WLS_WSM1 managed server using the Oracle WebLogic Server Administration Console as follows:
a. b. c. d.
Expand the Environment node in the Domain Structure window. Choose Servers. The Summary of Servers page appears. Click the Control tab. Select WLS_WSM1 and then click Start.
2.
Verify that the server status is reported as "Running" in the Admin Console. If the server is shown as "Starting" or "Resuming," wait for the server status to change to "Started." If another status is reported (such as "Admin" or "Failed"), check the server output log files for errors. See Section 10.6, "Troubleshooting" for possible causes. Access http://SOAHOST1:7010/wsm-pm. Click Validate Policy Manager. A list of policies and assertion templates available in the data store appear.
Note:
3. 4.
4.13 Propagating the Domain Configuration to SOAHOST2 Using the unpack Utility
Perform these steps to propagate the domain configuration:
1.
Run the following command on SOAHOST1 to copy the template file created previously.
SOAHOST1> cd ORACLE_COMMON_HOME/common/bin SOAHOST1> scp soadomaintemplate.jar oracle@SOAHOST2:/ORACLE_COMMON_ HOME/common/bin
2.
Run unpack from the ORACLE_COMMON_HOME/common/bin directory, not from the WL_HOME/common/bin directory.
4.14 Disabling Host Name Verification for the WLS_WSM2 Managed Server
This step is required if you have not set up the appropriate certificates to authenticate the different nodes with the Administration Server (see Chapter 8, "Setting Up Node Manager"). If you have not configured the server certificates, you will receive errors when managing the different WebLogic Servers. To avoid these errors, disable host name verification while setting up and validating the topology, and enable it again once the EDG topology configuration is complete as described in Chapter 8, "Setting Up Node Manager." Perform these steps to disable host name verification:
1. 2. 3. 4. 5. 6. 7. 8. 9.
Log in to Oracle WebLogic Server Administration Console. Click Lock and Edit. Expand the Environment node in the Domain Structure window. Click Servers. The Summary of Servers page appears. Select WLS_WSM2 in the Names column of the table. The Settings page for AdminServer(admin) appear. Click the SSL tab. Click Advanced. Set Hostname Verification to None. Save and activate the changes.
Run the setNMProps.sh script, which is located in the ORACLE_COMMON_ HOME/common/bin directory, to set the StartScriptEnabled property to true before starting Node Manager:
SOAHOST2> cd ORACLE_COMMON_HOME/common/bin SOAHOST2> ./setNMProps.sh
4-14 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Note:
You must use the StartScriptEnabled property to avoid class loading failures and other problems. See also Section 10.6.5, "Incomplete Policy Migration After Failed Restart of SOA Server."
2.
Start the WLS_WSM2 managed server using the Administration Console. Verify that the server status is reported as "Running" in the Admin Console. If the server is shown as "Starting" or "Resuming," wait for the server status to change to "Started." If another status is reported (such as "Admin" or "Failed"), check the server output log files for errors. See Section 10.6, "Troubleshooting" for possible causes. Access http://SOAHOST2:7010/wsm-pm. Click validate policy manager.
3. 4.
After configuring the Java Object Cache using the wlst commands or configure-joc.py script, all affected managed servers should be restarted for the configurations to take effect.
Usage 1. Connect to the Administration Server using the command-line Oracle WebLogic Scripting Tool (WLST), for example:
MW_HOME/soa/common/bin/wlst.sh $ connect()
Enter the Oracle WebLogic Administration user name and password when prompted.
2.
After connecting to the Administration Server using wlst, start the script using the execfile command, for example:
wls:/mydomain/serverConfig>execfile('MW_HOME/oracle_
common/bin/configure-joc.py') 3.
Configure JOC for all the managed servers for a given cluster. Enter 'y' when the script prompts whether you want to specify a cluster name, and also specify the cluster name and discover port, when prompted. This discovers all the managed servers for the given cluster and configure the JOC. The discover port is common for the entire JOC configuration across the cluster. For example:
Do you want to specify a cluster name (y/n) <y> Enter Cluster Name : WSM-PM_Cluster Enter Discover Port : 9991
The script can also be used to perform the following JOC configurations:
Configure JOC for all specified managed servers. Enter 'n' when the script prompts whether you want to specify a cluster name, and also specify the managed server and discover port, when prompted. For example:
Do you want to specify a cluster name (y/n) <y>n Enter Managed Server and Discover Port (eg WLS_WSM1:9998, WLS_WSM1:9998) : WLS_ WSM1:9991,WLS_WSM2:9991
Exclude JOC configuration for some managed servers. The script allows you to specify the list of managed servers for which the JOC configuration "DistributeMode" will be set to false. Enter 'y' when the script prompts whether you want to exclude any servers from JOC configuration, and enter the managed server names to be excluded, when prompted. For example:
Do you want to exclude any server(s) from JOC configuration (y/n) <n>y Exclude Managed Server List (eg Server1,Server2) : WLS_WSM1,WLS_WSM3
Disable the distribution mode for all managed servers. The script allows you to disable the distribution to all the managed servers for a specified cluster. Specify false when the script prompts for the distribution mode. By default, the distribution mode is set to true.
Verify JOC configuration using the CacheWatcher utility. See Oracle Fusion Middleware High Availability Guide. You can configure the Java Object Cache (JOC) using the HA Power Tools tab in the Oracle WebLogic Administration Console as described in the Oracle Fusion Middleware High Availability Guide.
4-16 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Configuring Oracle HTTP Server for the Administration Server and the WLS_WSM-PMn Managed Servers
4.18 Configuring Oracle HTTP Server for the Administration Server and the WLS_WSM-PMn Managed Servers
To enable Oracle HTTP Server to route to the Administration Server and the WSM-PM_Cluster, which contain the WLS_WSM-PMn managed servers, you must set the WebLogicCluster parameter to the list of nodes in the cluster:
1.
On WEBHOST1 and WEBHOST2, add the following lines to the ORACLE_BASE/ admin/<instance_name>/config/OHS/<component_name>/mod_wl_ohs.conf file:
# WSM-PM <Location /wsm-pm> SetHandler weblogic-handler WebLogicCluster SOAHOST1:7010,SOAHOST2:7010 </Location> # Admin Server and EM <Location /console> SetHandler weblogic-handler WebLogicHost ADMINVHN WeblogicPort 7001 </Location> <Location /consolehelp> SetHandler weblogic-handler WebLogicHost ADMINVHN WeblogicPort 7001 </Location> <Location /em> SetHandler weblogic-handler WebLogicHost ADMINVHN WeblogicPort 7001 </Location>
2.
Make sure the httpd.conf file located in the same directory as the mod_wl_ohs file contains the following lines:
NameVirtualHost *:7777 <VirtualHost *:7777> ServerName https://soa.mycompany.com:443 ServerAdmin [email protected] RewriteEngine On RewriteOptions inherit </VirtualHost> NameVirtualHost *:7777 <VirtualHost *:7777> ServerName admin.mycompany.com:80 ServerAdmin [email protected] RewriteEngine On RewriteOptions inherit </VirtualHost>
Note: Values such as soa.mycompany.com:443, 7777, admin.mycompany:80, and you@youraddress that are noted in this document serve as examples only. Enter values based on the actual environment.
3.
The servers specified in the WebLogicCluster parameter are only important at startup time for the plug-in. The list needs to provide at least one running cluster member for the plug-in to discover other members of the cluster. Note that the listed cluster member must be running when Oracle HTTP Server is started. Oracle WebLogic Server and the plug-in work together to update the server list automatically with new, failed, and recovered cluster members. Some example scenarios:
Example 1: If you have a two-node cluster and then add a third member, you do not need to update the configuration to add the third member. The third member will be discovered on the fly at runtime. Example 2: You have a three-node cluster but only two nodes are listed in the configuration. However, if both listed nodes are down when you start Oracle HTTP Server, then the plug-in would fail to route to the cluster. You must ensure that at least one of the listed nodes is running when you start Oracle HTTP Server. If you list all members of the cluster, then you guarantee you can route to the cluster, assuming at least one member is running when Oracle HTTP Server is started.
For more information on configuring the WebLogic Server plug-in, see the Oracle Fusion Middleware Using Web Server Plug-Ins With Oracle WebLogic Server guide.
You must also run this command from WEBHOST2 for OHS2.
4.20 Setting the Frontend URL for the Administration Console and Setting Redirection Preferences
When you access the Oracle WebLogic Server Administration Console using an LRB, changing the Administration Server's frontend URL is required so that the user's browser is redirected to the appropriate LRB address. To change the Administration Server's frontend URL, complete these steps:
1. 2. 3.
Log in to Oracle WebLogic Server Administration Console. Click Lock and Edit. Expand the Environment node in the Domain Structure window.
4-18 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
4. 5. 6. 7. 8. 9.
Click Servers to open the Summary of Servers page. Select Admin Server in the Names column of the table. The Settings page for AdminServer(admin) appear. Click the Protocols tab. Click the HTTP tab. Set the Frontend Host to admin.my.company.com and the Frontend HTTP Port to 80 (modify accordingly if HTTPS is used for the admin URL). Save and activate the changes.
Oracle also recommends disabling tracking on configuration changes in the Oracle WebLogic Server Administration Console so that the console does not trigger the reload of configuration pages when activation of changes occurs. To disable the reload, log in to the Oracle WebLogic Server Administration Console, click the preferences link in the banner, and then the shared preferences tab. Deselect the follow configuration changes checkbox.
For information on configuring system access through the load balancer, see Section 2.2.2, "Load Balancers."
Note:
After the registering Oracle HTTP Server as described in Section 4.19, "Registering Oracle HTTP Server With WebLogic Server," the Oracle HTTP Server should appear as a manageable target in the Oracle Enterprise Manager Console. To verify this, log into the Enterprise Manager Console. The WebTier item in the navigation tree should show that Oracle HTTP Server has been registered.
The Administration Server is configured to listen on ADMINVHN, and not on ANY address. See step 14 in Section 4.4, "Running the Configuration Wizard on SOAHOST1 to Create a Domain". These procedures assume that the two nodes use two individual domain directories, and that the directories reside in local storage or in shared storage in different volumes. The Administration Server is failed over from SOAHOST1 to SOAHOST2, and the two nodes have these IPs: SOAHOST1: 100.200.140.165 SOAHOST2: 100.200.140.205 VIPHOST1: 100.200.140.206. This is the VIP where the Administration Server is running, assigned to ethX:Y, available in SOAHOST1 and SOAHOST2.
The domain directory where the Administration Server is running in SOAHOST1 is on a shared storage and is mounted also from SOAHOST2.
The following procedure shows how to fail over the Administration Server to a different node (SOAHOST2), but the Administration Server will still use the same WebLogic Server machine (which is a logical machine, not a physical machine).
1. 2.
Run the following command as root on SOAHOST1 (where X:Y is the current interface used by ADMINVHN):
SOAHOST1> /sbin/ifconfig ethX:Y down
b.
For example:
/sbin/ifconfig eth0:1 10.0.0.1 netmask 255.255.255.0
Note:
Ensure that the netmask and interface to be used to match the available network configuration in SOAHOST2.
3.
4. 5.
Start the Administration Server on SOAHOST2 using the procedure in Section 4.7, "Starting the Administration Server on SOAHOST1.". Test that you can access the Administration Server on SOAHOST2 as follows:
a.
Ensure that you can access the Oracle WebLogic Server Administration Console at http://ADMINVHN:7001/console.
4-20 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
b.
Check that you can access and verify the status of components in the Oracle Enterprise Manager at http://ADMINVHN:7001/em.
Note:
The Administration Server does not use Node Manager for failing over. After a manual failover, the machine name that appears in the Current Machine field in the Administration Console for the server is SOAHOST1, and not the failover machine, SOAHOST2. Since Node Manager does not monitor the Administration Server, the machine name that appears in the Current Machine field, is not relevant and you can ignored it.
2.
Note:
Ensure that the netmask and interface to be used match the available network configuration in SOAHOST1
3.
Update routing tables through arping. Run the following command from SOAHOST1.
SOAHOST1> /sbin/arping -b -A -c 3 -I ethZ 100.200.140.206
4.
Start the Administration Server again on SOAHOST1 using the procedure in Section 4.7, "Starting the Administration Server on SOAHOST1.".
SOAHOST1> cd ORACLE_BASE/admin/<domain_name>/aserver/<domain_name>/bin SOAHOST1> ./startWebLogic.sh
5. 6.
Test that you can access the Oracle WebLogic Server Administration Console at http://ADMINVHN:7001/console. Check that you can access and verify the status of components in the Oracle Enterprise Manager at http://ADMINVHN:7001/em.
4-22 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
5
5
Section 5.1, "Enabling VIP2 on SOAHOST1 and VIP3 on SOAHOST2" Section 5.2, "Extending the Domain for SOA Components" Section 5.3, "Restarting the Administration Server" Section 5.4, "Configuring Oracle Coherence for Deploying Composites" Section 5.5, "Setting Connection Destination Identifiers for B2B Queues" Section 5.6, "Disabling Host Name Verification for the WLS_SOAn Managed Server" Section 5.7, "Restarting the Node Manager on SOAHOST1" Section 5.8, "Propagating the Domain Changes to the Managed Server Domain Directory" Section 5.9, "Starting the WLS_SOA1 Managed Server on SOAHOST1" Section 5.10, "Validating the WLS_SOA1 Managed Server" Section 5.11, "Propagating the Domain Configuration to SOAHOST2 Using the unpack Utility" Section 5.12, "Extracting the XEngine Files in SOAHOST2" Section 5.13, "Restarting Node Manager on SOAHOST2" Section 5.14, "Starting and Validating the WLS_SOA2 Managed Server" Section 5.15, "Configuring Oracle HTTP Server for the WLS_SOAn Managed Servers" Section 5.16, "Validating Access Through Oracle HTTP Server" Section 5.17, "Setting the Frontend HTTP Host and Port"
Section 5.18, "Setting the WLS Cluster address for Direct Binding/RMI invocations to composites" Section 5.19, "Configuring a Shared JMS Persistence Store" Section 5.20, "Configuring a Default Persistence Store for Transaction Recovery" Section 5.21, "Enabling High Availability for Oracle File and FTP Adapters" Section 5.22, "Scaling the Oracle Database Adapter" Section 5.23, "Backing Up the Installation"
You must back up the current domain before extending the domain. You may use the backup to recover in case any errors were made in the domain extension. See Oracle Fusion Middleware Administrator's Guide.
Note:
Oracle SOA uses Quartz to maintain its jobs and schedules in the database. The system clocks for the SOA WebLogic cluster must be synchronized to enable Quartz jobs to run correctly across the cluster.
1.
Change directory to the location of the Configuration Wizard. This is within the SOA home directory. (It is recommended that all database instances should be up.)
SOAHOS1> cd ORACLE_HOME/common/bin
2.
3. 4.
In the Welcome screen, select Extend an existing WebLogic domain, and click Next. In the WebLogic Domain Directory screen, select the WebLogic domain directory (ORACLE_BASE/admin/<domain_name>/aserver/<domain_name>), and click Next.
5-2 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
5.
Select Extend my domain automatically to support the following added products. Select the following products: Oracle SOA Suite 11.1.1.0
The following products should already be selected, and grayed out. They were selected when you created in domain in Section 4.4, "Running the Configuration Wizard on SOAHOST1 to Create a Domain." Basic WebLogic Server Domain Oracle Enteprise Manager Oracle WSM Policy Manager Oracle JRF
Click Next.
6. 7.
If you get a "Conflict Detected" message that Oracle JRF is already defined in the domain, select the Keep Existing Component option and click OK. In the Configure JDBC Component Schema screen (Figure 51), do the following:
a. b. c.
Select the SOA Infrastructure, User Messaging Service, and SOA MDS Schema rows in the table. Select Configure selected component schemas as RAC multi data source schemas in the next panel. Click Next.
8.
In the Configure RAC Multi Data Source Component Schema screen (Figure 52), do the following:
a. b.
Select SOA Infrastructure. Enter values for the following fields, specifying the connect information for the RAC database that was seeded with RCU. Driver: Select Oracle driver (Thin) for RAC Service-Instance connections, Versions:10, 11. Service Name: Enter the service name of the database; for example, soaedg.mycompany.com. Username: Enter the complete user name (including prefix) for the schemas. The user names shown in Figure 52 assume that soedg was used as prefix for schema creation from RCU. Password: Enter the password to use to access the schemas.
c. d. e. f. g. h. i.
Click Add and enter the details for the first RAC instance. Repeat for each RAC instance. Deselect SOA Infrastructure. Select User Messaging Service. Repeat steps b, c, and d for the User Messaging Schema. Deselect User Messaging Service. Select SOA MDS Schema.
5-4 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
j. k. l.
Repeat steps b, c, and d for the SOA MDS Schema. Leave the OWSM MDS Schema information as it is. Click Next
9.
In the Test JDBC Data Sources screen, the connections should be tested automatically. The Status column displays the results. Ensure that all connections were successful. If not, click Previous to return to the previous screen and correct your entries. Click Next when all the connections are successful.
JMS Distributed Destinations Managed Servers, Clusters, and Machines Deployments and Services
Click Next.
11. In the Select JMS Distributed Destination Type screen:
Select UDD from the drop down list for UMSJMSystemResource. Select UDD from the drop down list for SOAJMSModule.
12. In the Configure Managed Servers screen, add the required managed servers.
A server called soa_server1 is created automatically. Rename this to WLS_ SOA1 and give it the attributes listed in Table 51. Then, add a new server called WLS_SOA2. The WLS_WSM1 and WLS_WSM2 managed servers should already
Extending the Domain for SOA Components 5-5
be present because they are part of the domain that you are extending. In the end, the list of managed servers should match that in Table 51.
Table 51 Name WLS_SOA1 WLS_SOA2 WLS_WSM1 WLS_WSM2 Managed Servers Listen Address SOAHOST1VHN1 SOAHOST2VHN1 SOAHOST1 SOAHOST2 Listen Port 8001 8001 7010 7010 SSL Listen Port n/a n/a n/a n/a SSL Enabled No No No No
Click Next.
13. In the Configure Clusters screen, add the following clusters: Table 52 Name SOA_Cluster WSM-PM_Cluster Clusters Cluster Messaging Mode unicast unicast Multicast Address n/a n/a Multicast Port n/a n/a Cluster Address Leave it empty. Leave it empty.
Click Next.
14. In the Assign Servers to Clusters screen, assign servers to clusters as follows:
Click Next.
15. In the Configure Machines screen, do the following:
Delete the LocalMachine that appears by default. Click the Unix Machine tab. The following entries appear (listed in Table 53):
Machines Node Manager Listen Address SOAHOST1 SOAHOST2 localhost
ADMINHOST
ADMINHOST:
5-6 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
AdminServer
Click Next.
17. In the Target Deployments to Clusters or Servers screen, ensure the following
targets:
usermessagingserver and usermessagingdriver-email should be targeted only to SOA_Cluster. (The usermessaging-xmpp, usermessaging-smpp, and usermessaging-voicexml applications are optional.) The oracle.rules.*, oracle.sdp.*, and oracle.soa.* deployments should be targeted only to SOA_Cluster. The wsm-pm application should be targeted only to WSM-PM_Cluster. The oracle.rules.*, oracle.sdp.*, and oracle.soa.* libraries should be targeted only to SOA_Cluster. The oracle.wsm.seedpolicies library should be targeted only to WSM-PM_ Cluster. (Target this library to the SOA_Cluster also only if you are planning to deploy WebLogic WebServices to it).
Click Next.
18. In the Target Services to Clusters or Servers screen, ensure the following targets:
Target JOC Startup Class and JOC Shutdown Class only to WSM-PM_ Cluster. Target OWSM Startup Class only to WSM-PM_Cluster. Target mds-owsm, mds-owsm-rac0, and mds-owsm-rac1 to both WSM-PM_ Cluster and AdminServer.
Click Next.
19. In the Configuration Summary screen click Extend.
Note:
Click OK to dismiss the warning dialog about the domain configuration ports conflicting with the host ports. This warning appears because of the existing WSM-PM installation.
You must restart the Administration Server for this configuration to take effect.
Enabling Communication for Deployment Using Unicast Communication Multicast communication enables Oracle Fusion Middleware SOA to discover all of the members of a cluster to which to it deploys composites dynamically. However, unicast communication does not enable nodes to discover other cluster members in this way. Consequently, you must specify the nodes that belong to the cluster. You do not need to specify all of the nodes of a cluster, however. You need only specify enough nodes so that a new node added to the cluster can discover one of the existing nodes. As a result, when a new node has joined the cluster, it is able to discover all of the other nodes in the cluster. Additionally, in configurations such as SOA enterprise deployments where multiple IPs are available in the same box, you must configure Oracle Coherence to use a specific host name to create the Oracle Coherence cluster.
Tip: To guarantee high availability during deployments of SOA composites, specify enough nodes so that at least one of them is running at any given time.
Specify the nodes using the tangosol.coherence.wka<n> system property, where <n> is a number between 1 and 9. You can specify up to 9 nodes. Start the numbering at 1. This numbering must be sequential and must not contain gaps. In addition, specify the host name used by Oracle Coherence to create a cluster through the tangosol.coherence.localhost system property. This local host name should be the virtual host name used by the SOA server as the listener addresses (SOAHOST1VHN1 and SOAHOST2VHN1). Set this property by adding the -Dtangosol.coherence.localhost parameters to the Arguments field of the Oracle WebLogic Server Administration Consoles Server Start tab (Figure 53).
Note:
SOAHOST1VHN1 is the virtual host name that maps to the virtual IP where WLS_SOA1 listening (in SOAHOST1). SOAHOST2VHN1 is the virtual host name that maps to the virtual IP where WLS_SOA2 is listening (in SOAHOST2).
5-8 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Figure 53 Setting the Host Name Using the Start Server Tab of Oracle WebLogic Server Administration Console
Specifying the host name To add the host name used by Oracle Coherence, complete these steps:
1. 2. 3. 4.
Log into the Oracle WebLogic Server Administration Console. In the Domain Structure window, expand the Environment node. Click Servers. The Summary of Servers page appears. Click the name of the server (WLS_SOA1 or WLS_SOA2, which are represented as hyperlinks) in Name column of the table. The settings page for the selected server appears. Click Lock and Edit. Click the Configuration tab, and then the Server Start tab. Enter the following for WLS_SOA1 and WLS_SOA2 into the Arguments field. For WLS_SOA1, enter the following:
-Dtangosol.coherence.wka1=SOAHOST1VHN1 -Dtangosol.coherence.wka2=SOAHOST2VHN1 -Dtangosol.coherence.localhost=SOAHOST1VHN1
5. 6. 7.
Note: There should be no breaks in lines between the different -D parameters. Do not copy or paste the text from above to your Administration Console's arguments text field. This may result in HTML tags being inserted in the Java arguments. The text should not contain other text characters than those included the example above.
8.
Note:
You must ensure that these variables are passed to the managed server correctly. (They should be reflected in the servers output log.) Failure of the Oracle Coherence framework can prevent the soa-infra application from starting.
Note:
The multicast and unicast addresses are different from the ones used by the WebLogic Server cluster for cluster communication. SOA guarantees that composites are deployed to members of a single WebLogic Server cluster even though the communication protocol for the two entities (the WebLogic Server cluster and the groups to which composites are deployed) are different.
Note:
The coherence cluster used for deployment uses port 8088 by default. This port can be changed by specifying the -Dtangosol.coherence.wkaX.port startup parameter.
Log into the Oracle WebLogic Server Administration Console. In the Domain Structure window, expand the Services node, and then the Messaging node. Click JMS Modules, and then SOAJMSModule. Click Lock and Edit. Click the dist_B2BEventQueue_auto, Configuration, and the General tab, and then click Advanced. In the Create Destination Identifier field, add the following jndi name for the queue: jms/b2b/B2BEventQueue
7.
Repeat these steps, creating the following Create Destination Identifiers for the queues listed below:
8.
5.6 Disabling Host Name Verification for the WLS_SOAn Managed Server
This step is required if you have not set up the appropriate certificates to authenticate the different nodes with the Administration Server (see Chapter 8, "Setting Up Node Manager"). If you have not configured the server certificates, you will receive errors
5-10 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
when managing the different WebLogic Servers. To avoid these errors, disable host name verification while setting up and validating the topology, and enable it again once the EDG topology configuration is complete as described in Chapter 8, "Setting Up Node Manager." To disable host name verification, complete these steps:
1. 2. 3. 4. 5. 6. 7. 8. 9.
Log in to Oracle WebLogic Server Administration Console. Click Lock and Edit. Expand the Environment node in the Domain Structure window. Click Servers. The Summary of Servers page appears. Select WLS_SOA1 (represented as a hyperlink) from the Names column of the table. The Settings page appears. Select the SSL tab. Expand the Advanced section of the page. Set Hostname Verification to None. Click Save.
10. Repeat these steps for the WLS_SOA2 managed server. 11. Save and activate the changes.
If it is running in the foreground in a shell, simply use ctrl+c If it is running in the background in the shell, find the associate process and use the kill command to stop it. For example:
SOAHOST1> ps -ef | grep NodeManager orcl 9139 9120 0 Mar03 pts/6 ./startNodeManager.sh SOAHOST1>kill -9 9139 00:00:00 /bin/sh
2.
5.8 Propagating the Domain Changes to the Managed Server Domain Directory
To propagate the start scripts and classpath configuration from the Administration Servers domain directory to the managed server domain directory:
1. 2.
Create a copy of the managed server domain directory and the managed server applications directory. Run the pack command on SOAHOST1 to create a template pack using the following commands:
SOAHOST1> cd ORACLE_COMMON_HOME/common/bin
5-11
Run the unpack command on SOAHOST1 to unpack the propagated template to the domain directory of the managed server using the following command:
SOAHOST1> SOAHOST1> ./unpack.sh -domain=ORACLE_BASE/admin/<domain_ name>/mserver/<domain_name> -overwrite_domain=true -template=soadomaintemplateExtSOA.jar -app_dir=ORACLE_BASE/admin/<domain_name>/mserver/applications
Note: The -overwrite_domain option in the unpack command, allows unpacking a managed server template into an existing domain and existing applications directories. For any file that is overwritten, a backup copy of the original is created. If any modifications had been applied to the start scripts and ear files in the managed server domain directory, they must be restored after this unpack operation.
Access the Administration Console at http://ADMINVHN:7001/console. Click Servers. Open the Control tab. Select WLS_SOA1. Click Start.
Note:
ADMINVHN is the virtual host name that maps to the virtual IP where the Administration Server is listening (in SOAHOST1).
Verify that the server status is reported as Running in the Admin Console. If the server is shown as Starting or Resuming, wait for the server status to change to Started. If another status is reported (such as Admin or Failed), check the server output log files for errors. See Section 10.6, "Troubleshooting" for possible causes. Access http://SOAHOST1VHN1:8001/soa-infra to verify status of WLS_ SOA1. Access http://SOAHOST1VHN1:8001/b2bconsole to verify status of B2B. Access http://SOAHOST1VHN1:8001/integration/worklistapp to verify status of the worklist application.
Note:
2. 3. 4.
Notice that, although the WLS_SOA1 server may be up, some applications may be in a failed state. Therefore, Oracle recommends verifying the URLs above and watch for errors pertaining each individual application in the server's output file.
5-12 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
5.11 Propagating the Domain Configuration to SOAHOST2 Using the unpack Utility
To propagate the domain configuration, complete these steps:
1.
Run the following command on SOAHOST1 to copy the template file created in the previous step to SOAHOST2.
SOAHOST1> cd ORACLE_COMMON_HOME/common/bin SOAHOST1> scp soadomaintemplateExtSOA.jar oracle@node2:ORACLE_COMMON_ HOME/common/bin
2.
Note: The -overwrite_domain option in the unpack command, allows unpacking a managed server template into an existing domain and existing applications directories. For any file that is overwritten, a backup copy of the original is created. If any modifications had been applied to the start scripts and ear files in the managed server domain directory, they must be restored after this unpack operation.
Start the WLS_SOA2 managed server using the Administration Console. Verify that the server status is reported as "Running" in the Admin Console. If the server is shown as "Starting" or "Resuming," wait for the server status to change to "Started." If another status is reported (such as "Admin" or "Failed"), check the server output log files for errors. See Section 10.6, "Troubleshooting" for possible causes. Access http://SOAHOST2VHN1:8001/soa-infra.
3.
5-13
4. 5.
Access http://SOAHOST2VHN1:8001/b2bconsole to verify status of B2B. Access http://SOAHOST2VHN1:8001/integration/worklistapp to verify status of the worklist application.
Note:
Although the WLS_SOA1 server may be up, some applications may be in a failed state. Therefore, Oracle recommends verifying the URLs above and watch for errors pertaining each individual application in the server's output file.
5.15 Configuring Oracle HTTP Server for the WLS_SOAn Managed Servers
To enable Oracle HTTP Server to route to the SOA_Cluster, which contains the WLS_ SOAn managed servers, you must set the WebLogicCluster parameter to the list of nodes in the cluster.
1.
On WEBHOST1 and WEBHOST2, add the following lines to the ORACLE_BASE/ admin/<instance_name>/config/OHS/<component_name>/mod_wl_ohs.conf file:
# SOA soa-infra app <Location /soa-infra> SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location> # Worklist <Location /integration/> SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location> # B2B <Location /b2bconsole> SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location> # UMS prefs <Location /sdpmessaging/userprefs-ui > SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location> # Default to-do taskflow <Location /DefaultToDoTaskFlow/> SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location> # Workflow <Location /workflow> SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location> #Required if attachments are added for workflow tasks <Location /ADFAttachmentHelper>
5-14 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location> # SOA composer application <Location /soa/composer> SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location>
Note:
The entry for /workflow is optional. It is for workflow tasks associated with ADF task forms. The /workflow URL itself can be a different value, depending on the form.
2.
The servers specified in the WebLogicCluster parameter are only important at startup time for the plug-in. The list needs to provide at least one running cluster member for the plug-in to discover other members of the cluster. Note that the listed cluster member must be running when Oracle HTTP Server is started. Oracle WebLogic Server and the plug-in work together to update the server list automatically with new, failed, and recovered cluster members. Sample scenarios:
Example 1: If you have a two-node cluster and then add a third member, you do not need to update the configuration to add the third member. The third member will be discovered on the fly at runtime. Example 2: You have a three-node cluster but only two nodes are listed in the configuration. However, if both listed nodes are down when you start Oracle HTTP Server, then the plug-in would fail to route to the cluster. You must ensure that at least one of the listed nodes is running when you start Oracle HTTP Server. If you list all members of the cluster, then you guarantee you can route to the cluster, assuming at least one member is running when Oracle HTTP Server is started.
For more information on configuring the WebLogic Server plug-in, see the Oracle Fusion Middleware Using Web Server Plug-Ins With Oracle WebLogic Server guide.
http://webhostN:7777/soa-infra
5-15
Validate SOA_Cluster through both Oracle HTTP Server instances. Refer to load balancer configuration to access the system through the load balancer.
In the WebLogic Server Administration Console, in the Change Center section, click Lock & Edit. In the left pane, choose Environment in the Domain Structure window and then choose Clusters. The Summary of Clusters page appears. Select the SOA_Cluster cluster. Select HTTP. Set the values for the following:
6. 7. 8.
Click Save. To activate the changes, click Activate Changes in the Change Center section of the Administration Console. Restart the servers to make the Frontend Host directive in the cluster effective.
Note:
If you do not set the frontend HTTP host and port, you get the following message when trying to retrieve a document definition XSD from Oracle B2B:
An error occured while loading the document definitions. java.lang.IllegalArgumentException: Cluster address must be set when clustering is enabled.
Callback URL The SOA system calculates the callback URL as follows:
If a request to SOA originates from an external or internal service, then SOA uses the callback URL specified by the client. If a request to an external or internal asynchronous service originates from SOA, the callback URL is determined using the following method, in decreasing order of preference:
1.
Use callbackServerURL specified as a binding property for the specific reference. (You can set this when modeling the composite or at runtime using the MBeans). This allows different service calls to have different callback URLs. That is, a callback URL from an external service can be set to be different than one to an internal service In the context of the EDG architecture, typically this will be soa.mycompany.com (443/https) for external services
5-16 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Setting the WLS Cluster address for Direct Binding/RMI invocations to composites
and soainternal.mycompany.com (7777/http) for internal services. At runtime, this property is set using the System MBean Browser, through the corresponding binding mbean. To add a specific URL, add a callbackServerURL property to its Properties attribute, then invoke the save operation.
2.
Use the callback URL as specified in soa-infra-config.xml. In this case, only one address can be specified. When a mix of both external and internal services can be invoked, this should be set to soa.mycompany.com (443/https) in the EDG architecture. When only internal services are to be invoked, this can be set to soainternal.mycompany.com (7777/http). Use the callback URL as the frontend host specified in WLS for the SOA_ Cluster. In this case, too, only one address can be specified and the recommendation is same as the one for soa-infra-config.xml. Use the local host name as provided by WLS MBean APIs. This is not recommended in HA environments such as EDG.
3.
4.
5.18 Setting the WLS Cluster address for Direct Binding/RMI invocations to composites
When using direct binding composites, you must set the WLS Cluster address for the SOA_Cluster. To set the WLS Cluster address:
1. 2. 3. 4.
In the WebLogic Server Administration Console, in the Change Center section, click Lock & Edit. In the left pane, choose Environment from the Domain Structure window, and then choose Clusters. The Summary of Clusters page appears. Select the SOA_Cluster cluster. In the Configuration, General tab, enter the following in the Cluster Address field: SOAHOST1VHN1:8001,SOAHOST2VHN1:8001
5. 6. 7.
Click Save. To activate the changes, click Activate Changes in the Change Center section of the Administration Console. Restart the servers for the Frontend Host directive to take effect in the cluster.
Note:
For asynch request/response interactions over direct binding, the SOA composites must provide their jndi provider url for the invoked service to look up the beans for callback. If soa-infra config properties are not specified, but the WLS Cluster address is specified, the cluster address from the JNDI provider URL is used. This cluster address can be a single DNS name which maps to the clustered servers' IP addresses or a comma separated list of server ip:port. Alternatively, the soa-infra config property JndiProviderURL/SecureJndiProviderURL can be used for the same purpose if explicitly set by users.
5-17
Log into the Oracle WebLogic Server Administration Console. In the Domain Structure window, expand the Services node and then click the Persistence Stores node. The Summary of Persistence Stores page appears. Select the persistence store (represented as a hyperlink) from the Name column of the table. The Settings page for the persistence store appear. In the Configuration tab, enter the location on a persistent storage solution (such as NAS or SAN) that is available to other servers in the cluster in the Directory field. Specifying this location enables pending JMS messages to be sent. The location should follow the following directory structure:
ORACLE_BASE/admin/<domain_name>/<soa_cluster_name>/jms
Note: Both WLS_SOA1 and WLS_SOA2 must be able to access this directory. This directory must also exist before you restart the server.
5. 6.
Click Save and activate changes. Restart the servers to make the change in the persistent stores effective.
Preferably, this location should be a dual-ported SCSI disk or on a Storage Area Network (SAN).
To set the location for the default persistence store, complete these steps:
1. 2. 3.
Log into the Oracle WebLogic Server Administration Console. In the Domain Structure window, expand the Environment node and then click the Servers node. The Summary of Servers page appears. Click the name of the server (represented as a hyperlink) in Name column of the table. The settings page for the selected server appears and defaults to the Configuration tab. Click the Services tab. In the Default Store section of the page, enter the path to the folder where the default persistent stores will store its data files. The directory structure of the path is as follows:
ORACLE_BASE/admin/<domain_name>/<soa_cluster_name>/tlogs
4. 5.
5-18 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
6.
Click Save.
Note:
To enable migration of the Transaction Recovery Service, specify a location on a persistent storage solution that is available to other servers in the cluster. Both WLS_SOA1 and WLS_SOA2 must be able to access this directory. This directory must also exist before you restart the server.
5.21 Enabling High Availability for Oracle File and FTP Adapters
The Oracle File and FTP Adapters enable a BPEL process or an Oracle Mediator to read and write files on local file systems and on remote file systems through FTP (File Transfer Protocol).These adapters support high availability for an active-active topology with Oracle BPEL Process Manager and Oracle Mediator service engines for both inbound and outbound operations. To make Oracle File and FTP Adapters highly available for outbound operations, use the database mutex locking operation as described in "High Availability in Outbound Operations" in Oracle Fusion Middleware User's Guide for Technology Adapters. The database mutex locking operation enables these adapters to ensure that multiple references do not overwrite one another if they write to the same directory.
Note:
The File Adapter picks up a file from the inbound directory, processes it, and then outputs a file to the output directory. Because the File Adapter is non-transactional, files can be processed twice. As a result, it is possible to get duplicate files when there is failover in the RAC backend or in the SOA managed servers.
You must increase global transaction timeouts if you use database as a coordinator.
1.
Create Database Tables You are not required to perform this step since the database schemas are pre-created as a part of soainfra.
2.
Modify Deployment Descriptor for Oracle File Adapter Modify Oracle File Adapter deployment descriptor for the connection-instance corresponding to eis/HAFileAdapter from the Oracle WebLogic Server console:
a. b. c. d.
Log into your Oracle WebLogic Server console. To access the console navigate to http://servername:portnumber/console. Click Deployments in the left pane for Domain Structure. Click FileAdapter under Summary of Deployments on the right pane. Click the Configuration tab.
5-19
e.
Click the Outbound Connection Pools tab, and expand javax.resource.cci.ConnectionFactory to see the configured connection factories. Click eis/HAFileAdapter. The Outbound Connection Properties for the connection factory corresponding to high availability is displayed. The connection factory properties appear as shown in Figure 54.
f. g.
Click on Lock and Edit. After this, the property value column becomes editable (you can click on any of the rows under "Property Value" and modify its value). The new parameters in connection factory for Oracle File and FTP Adapters are as follows: controlDir: Set it to the directory structure where you want the control files to be stored. You must set it to a shared location if multiple WebLogic Server instances run in a cluster. Structure the directory for shared storage as follows:
ORACLE_BASE/admin/<domain_name>/<cluster_name>/fadapter
inboundDataSource: Set the value to jdbc/SOADataSource. This is the data source, where the schemas corresponding to high availability are pre-created. The pre-created schemas can be found under ORACLE_HOME/ rcu/integration/soainfra/sql/adapter/createschema_adapter_ oracle.sql. If you want to create the schemas elsewhere, use this script. You must set the inboundDataSource property accordingly if you choose a different schema. outboundDataSource: Set the value to jdbc/SOADataSource. This is the data source where the schemas corresponding to high availability are pre-created. The pre-created schemas can be found under ORACLE_HOME/ rcu/integration/soainfra/sql/adapter/createschema_adapter_ oracle.sql. If you want to create the schemas elsewhere, use this script. You must set the outboundDataSource property if you choose to do so.
5-20 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
outboundDataSourceLocal: Set the value to jdbc/SOALocalTxDataSource. This is the datasource where the schemas corresponding to high availability are pre-created. outboundLockTypeForWrite: Set the value to oracle if you are using Oracle Database. By default the Oracle File and FTP Adapters use an in-memory mutex to lock outbound write operations. You must choose from the following values for synchronizing write operations: memory: The Oracle File and FTP Adapters use an in-memory mutex to synchronize access to the file system. oracle: The adapter uses Oracle Database sequence. db: The adapter uses a pre-created database table (FILEADAPTER_MUTEX) as the locking mechanism. You must use this option only if you are using a schema other than the Oracle Database schema. user-defined: The adapter uses a user-defined mutex. To configure the user-defined mutex, you must implement the mutex interface: "oracle.tip.adapter.file.Mutex" and then configure a new binding-property with the name "oracle.tip.adapter.file.mutex" and value as the fully qualified class name for the mutex for the outbound reference.
h. i.
Click Save after you update the properties. The Save Deployment Plan page appears. Enter a shared storage location for the deployment plan. The directory structure is as follows:
ORACLE_BASE/admin/<domain_name>/<cluster_name>/dp/Plan.xml
j. k.
Click Save and Activate. Configure BPEL Process or Mediator Scenario to use the connection factory as shown in the following example:
<adapter-config name="FlatStructureOut" adapter="File Adapter" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata"> <connection-factory location="eis/HAFileAdapter" adapterRef=""/> <endpoint-interaction portType="Write_ptt" operation="Write"> <interaction-spec className="oracle.tip.adapter.file.outbound.FileInteractionSpec"> <property../> <property../> </interaction-spec> </endpoint-interaction> </adapter-config>
Note: The location attribute is set to eis/HAFileAdapter for the connection factory.
DeletePollingStrategy with a unique MarkReservedValue on each polling node, and setting MaxTransactionSize. However, with the introduction of skip locking in this release that approach has now been superseded. If you were using this approach previously, you can simply remove (in db.jca) or clear (Logical Delete Page of wizard) the MarkReservedValue, and you automatically get skip locking. The benefits of using skip locking over a reserved value include:
Skip locking scales better in a cluster and under load. All work is in one transaction (as opposed to update/reserve, then commit, then select in a new transaction), so the risk of facing a non-recoverable situation in a high availability environment is minimized. No unique MarkReservedValue must be specified. Previously, for this to work you would have to configure a complex variable, such as R${weblogic.Name-2}-${IP-2}-${instance}.
For more information, see "Scalability" and "Polling Strategies" in Oracle Fusion Middleware User's Guide for Technology Adapters.
b.
Back up the Middleware Home on the web tier using the following command (as root):
tar -cvpf BACKUP_LOCATION/web.tar $MW_HOME
c.
Back up the Instance Home on the web tier using the following command (as root):
tar -cvpf BACKUP_LOCATION/web_instance.tar $ORACLE_INSTANCE
d.
5-22 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
2.
Back up the database. This is a full database backup (either hot or cold) using Oracle Recovery Manager (recommended) or OS tools such as tar for cold backups if possible. Back up the Administration Server domain directory to save your domain configuration. The configuration files all exist under the ORACLE_BASE/ admin/<domain_name> directory.
SOAHOST1> tar -cvpf edgdomainback.tar ORACLE_BASE/admin/<domain_name>
3.
Note:
ORACLE_HOME should be backed up if any changes are made to the XEngine configuration that are part of your B2B setup. These files are located under ORACLE_HOME/soa/thirdparty/ edifecs/XEngine. To back up ORACLE_HOME, execute the following command:
5-23
5-24 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
6
6
Extend an existing domain that contains an Administration Server (and optionally other non-SOA servers) to include SOA and BPM (in one single Configuration Wizard session). For this approach, see Section 6.1, "Option 1: Extending a Domain to Include SOA and BPM." Extend a domain that already contains SOA (and optionally other non-SOA servers) to BPM. For this approach, see Section 6.2, "OPTION 2: Extending a SOA Domain to Include Oracle BPM.".
Oracle strongly recommends reading the release notes for any additional installation and deployment considerations prior to starting the setup process.
Section 6.1.1, "Backing Up the Existing Installation" Section 6.1.2, "Enabling VIP2 on SOAHOST1 and VIP3 on SOAHOST2" Section 6.1.3, "Running the Configuration Wizard on SOAHOST1 to Extend the Current Domain" Section 6.1.4, "Configuring Oracle Coherence for Deploying Composites" Section 6.1.5, "Setting Connection Destination Identifiers for B2B Queues" Section 6.1.6, "Disabling Host Name Verification for the WLS_SOA1, WLS_SOA2, Managed Servers"
Extending the Domain to Include Oracle BPM 6-1
Section 6.1.7, "Propagating the Domain Changes to the Managed Server Domain Directory" Section 6.1.8, "Starting and Validating the WLS_SOA1 Managed Server" Section 6.1.9, "Propagating the Domain Configuration to SOAHOST2 Using the Unpack Utility" Section 6.1.10, "Extracting the XEngine Files in SOAHOST2" Section 6.1.11, "Starting and Validating the WLS_SOA2 Managed Server" Section 6.1.12, "Configuring Oracle HTTP Server for WLS_SOAn Managed Servers" Section 6.1.13, "Validating Access Through Oracle HTTP Server" Section 6.1.14, "Setting the Frontend HTTP Host and Port" Section 6.1.15, "Setting the WLS Cluster address for Direct Binding/RMI invocations to composites" Section 6.1.16, "Configuring a Shared JMS Persistence Store" Section 6.1.17, "Configuring a Default Persistence Store for Transaction Recovery" Section 6.1.18, "Enabling High Availability for Oracle File and FTP Adapters" Section 6.1.19, "Scaling the Oracle Database Adapter" Section 6.1.20, "Backing Up the Installation"
These commands create a backup of the installation files for both Oracle WebLogic Server and Oracle Fusion Middleware, as well as the domain configuration.
For example:
/sbin/ifconfig ethX:Y 100.200.140.206 netmask 255.255.255.0
Enable your network to register the new location of the virtual IP, for example:
/sbin/arping -q -U -c 3 -I ethX 100.200.140.206 6-2 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Validate that the address is available by pinging it from another node, for example:
/bin/ping 100.200.140.206
In this example ethX is the ethernet interface (eth0 or eth1) and Y is the index (0, 1, 2).
6.1.3 Running the Configuration Wizard on SOAHOST1 to Extend the Current Domain
Run the Configuration Wizard from the SOA home directory to extend a domain containing an Administration Server and Oracle Web Services Manager to support SOA and BPM components.
1.
Ensure that the database where you installed the repository is running. For Oracle RAC databases, Oracle recommends all instances remain running, so that the validation check later in the process is more reliable. Change the directory to the location of the Configuration Wizard. This is within the SOA home directory.
SOAHOST1> cd ORACLE_COMMON_HOME/common/bin
2.
3.
4. 5. 6.
In the Welcome screen, select Extend an Existing WebLogic Domain, and click Next. In the WebLogic Domain Directory screen, select the WebLogic domain directory ORACLE_BASE/admin/domain_name/aserver/domain_name, and click Next. In the Select Extension Source screen, do the following:
Select Extend my domain automatically to support the following added products. Select the following products: Select the following products: Oracle BPM Suite - 11.1.1.0 [soa] Oracle SOA Suite - 11.1.1.0 [soa] (this should be selected automatically when selecting Oracle BPM Suite) Oracle WSM Policy Manager 11.1.1.0 [oracle_common] (this should be selected automatically when selecting Oracle BPM Suite) Oracle Enterprise Manager - 11.1.1.0 [oracle_common] Oracle JRF - 11.1.1.0 [oracle_common] (this should be selected automatically and grayed out)
If you accidentally deselect some of the targets, make sure the following are selected: Oracle SOA Oracle BPM Suite
Click Next.
7.
Select SOA Infrastructure, User Messaging Service, OWSM MDS Schema, and SOA MDS Schema.
6-3
Select Configure selected component schemas as RAC multi data source schemas in the next panel.
Click Next.
8.
The Configure RAC Multi Data Sources Component Schema screen is displayed. In this screen, enter values for the fields below, specifying the connect information for the Oracle RAC database that was seeded with RCU. Enter this information for each schema (you can select multiple schemas and specify values that are common to all):
In this screen, do the following: You can select all schemas and enter values that are common to all. Enter values for the following fields, specifying the connect information for the Oracle RAC database that was seeded with RCU. Enter this information for each schema:
a. b. c. d. e. f.
Enter the host name, instance name, and port for the first RAC DB instance. Click Add. Repeat for each RAC instance. Driver: Select Oracle driver (Thin) for RAC Service-Instance connections, Versions:10, 11. Service Name: Enter the service name of the database, for example, soaedg.mycompany.com Username: Enter the complete user name (including the prefix) for the schemas. You can enter a value with all schemas selected (like the prefix) and then select each schema individually to change the rest of the schema name
6-4 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
g.
Click Next.
9.
In the Test JDBC Data Sources screen, the connections should be tested automatically. The Status column displays the results. Ensure that all connections were successful. If not, click Previous to return to the previous screen and correct your entries. Click Next when all the connections are successful.
JMS Distributed Destinations Managed Servers, Clusters, and Machines Deployments and Services
Click Next.
11. In the Select JMS Distributed Destination Type screen, Select UDD from the
Oracle does not support using WDDs for Fusion Middleware components
12. In the Configure Managed Servers screen, add the required managed servers.
A server named soa_server1 is created automatically. Rename this to WLS_ SOA1 and add a new server named WLS_SOA2. Give these servers the attributes listed in Table 61. Do not modify the other servers that appear in this screen; leave them as they are.
Table 61 Name WLS_SOA1 WLS_SOA2 Managed Servers Listen Address SOAHOST1VHN1 SOAHOST2VHN1 Listen Port 8001 8001 SSL Listen Port n/a n/a SSL Enabled No No
Click Next.
13. In the Configure Clusters screen, add the cluster listed in Table 62. Do not modify
the other clusters that display in this screen; leave them as they are.
Table 62 Name SOA_Cluster Cluster Cluster Messaging Mode unicast Multicast Address n/a Multicast Port n/a Cluster Address Leave it empty.
Click Next.
14. In the Assign Servers to Clusters screen, assign servers to clusters as follows:
6-5
Click Next.
15. In the Configure Machines screen, do the following:
Click Delete to remove the default LocalMachine. Click the Unix Machine tab. SOAHOST1 and SOAHOST2 machines appear with the following entries Table 63):
Machines Node Manager Listen Address SOAHOST1 SOAHOST2 localhost
ADMINHOST
Assign AdminServer to ADMINHOST. Assign WLS_SOA1 to SOAHOST1. Assign WLS_SOA2 to SOAHOST2. Assign WLS_WSM1 to SOAHOST1. Assign WLS_WSM2 to SOAHOST2.
Click Next.
17. In the Target Deployments to Clusters or Servers screen, ensure the following
targets:
Target WSM-PM only to WSM-PM_Cluster. Target the oracle.rules.*, oracle.sdp.*, oracle.bpm.*, and oracle.soa.* deployments only to SOA_Cluster. Target the oracle.wsm.seedpolicies library only to WSM-PM_Cluster and SOA_Cluster (if the SOA_Cluster is going to contain any webservices itself).
Click Next.
18. In the Target Services to Clusters or Servers screen, ensure the following targets:
Target JOC Startup Class and JOC Shutdown Class only to WSM-PM_ Cluster. Target OWSM Startup Class only to WSM-PM_Cluster. Target the mds-owsm, mdw-owsm-rac0 and mds-owsm-rac1 datasources to the WSM-PM_Cluster and the AdminServer
Click Next.
19. In the Configuration Summary screen click Extend. 20. In the Creating Domain screen, click Done.
You must restart the Administration Server for this configuration to take effect. to restart the Administration Server, use the procedure in Section 4.7, "Starting the Administration Server on SOAHOST1."
6-6 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Enabling Communication for Deployment Using Unicast Communication Multicast communication enables Oracle Fusion Middleware SOA to discover all of the members of a cluster to which to it deploys composites dynamically. However, unicast communication does not enable nodes to discover other cluster members in this way. Consequently, you must specify the nodes that belong to the cluster. You do not need to specify all of the nodes of a cluster, however. You need only specify enough nodes so that a new node added to the cluster can discover one of the existing nodes. As a result, when a new node has joined the cluster, it is able to discover all of the other nodes in the cluster. Additionally, in configurations such as SOA enterprise deployments where multiple IPs are available in the same box, you must configure Oracle Coherence to use a specific host name to create the Oracle Coherence cluster.
Tip: To guarantee high availability during deployments of SOA composites, specify enough nodes so that at least one of them is running at any given time.
Specify the nodes using the tangosol.coherence.wka<n> system property, where <n> is a number between 1 and 9. You can specify up to 9 nodes. Start the numbering at 1. This numbering must be sequential and must not contain gaps. In addition, specify the host name used by Oracle Coherence to create a cluster through the tangosol.coherence.localhost system property. This local host name should be the virtual host name used by the SOA server as the listener addresses (SOAHOST1VHN1 and SOAHOST2VHN1). Set this property by adding the -Dtangosol.coherence.localhost parameters to the Arguments field of the Oracle WebLogic Server Administration Consoles Server Start tab (Figure 62).
Note:
SOAHOST1VHN1 is the virtual host name that maps to the virtual IP where WLS_SOA1 listening (in SOAHOST1). SOAHOST2VHN1 is the virtual host name that maps to the virtual IP where WLS_SOA2 is listening (in SOAHOST2).
6-7
Figure 62 Setting the Host Name Using the Start Server Tab of Oracle WebLogic Server Administration Console
Specifying the host name To add the host name used by Oracle Coherence, complete these steps:
1. 2. 3. 4.
Log into the Oracle WebLogic Server Administration Console. In the Domain Structure window, expand the Environment node. Click Servers. The Summary of Servers page appears. Click the name of the server (WLS_SOA1 or WLS_SOA2, which are represented as hyperlinks) in Name column of the table. The settings page for the selected server appears. Click Lock and Edit. Click the Configuration tab, and then the Server Start tab. Enter the following for WLS_SOA1 and WLS_SOA2 into the Arguments field. For WLS_SOA1, enter the following:
-Dtangosol.coherence.wka1=SOAHOST1VHN1 -Dtangosol.coherence.wka2=SOAHOST2VHN1 -Dtangosol.coherence.localhost=SOAHOST2VHN1
5. 6. 7.
Note: There should be no breaks in lines between the different -D parameters. Do not copy or paste the text from above to your Administration Console's arguments text field. This may result in HTML tags being inserted in the Java arguments. The text should not contain other text characters than those included the example above.
8.
6-8 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Note:
You must ensure that these variables are passed to the managed server correctly. (They should be reflected in the servers output log.) Failure of the Oracle Coherence framework can prevent the soa-infra application from starting.
Note:
The multicast and unicast addresses are different from the ones used by the WebLogic Server cluster for cluster communication. SOA guarantees that composites are deployed to members of a single WebLogic Server cluster even though the communication protocol for the two entities (the WebLogic Server cluster and the groups to which composites are deployed) are different.
Log into the Oracle WebLogic Server Administration Console. In the Domain Structure window, expand the Services node, and then the Messaging node. Click JMS Modules, and then SOAJMSModule. Click Lock and Edit. Click the dist_B2BEventQueue_auto, Configuration, and the General tab, and then click Advanced. In the Create Destination Identifier field, add the following jndi name for the queue: jms/b2b/B2BEventQueue
7.
Repeat these steps, creating the following Create Destination Identifiers for the queues listed below:
8.
6.1.6 Disabling Host Name Verification for the WLS_SOA1, WLS_SOA2, Managed Servers
This step is required if you have not set up the appropriate certificates to authenticate the different nodes with the Administration Server (see Chapter 8, "Setting Up Node Manager"). If you have not configured the server certificates, you will receive errors when managing the different WebLogic Servers. To avoid these errors, disable host name verification while setting up and validating the topology, and enable it again once the EDG topology configuration is complete as described in Chapter 8, "Setting Up Node Manager."
6-9
Log in to Oracle WebLogic Server Administration Console. Click Lock and Edit. Expand the Environment node in the Domain Structure window. Click Servers. The Summary of Servers page appears.
5.
Select WLS_SOA1 (represented as a hyperlink) from the Names column of the table. The Settings page appears.
6. 7. 8. 9.
Select the SSL tab. Expand the Advanced section of the page. Set Hostname Verification to None. Click Save.
10. Repeat Steps 4 through 8 for the WLS_SOA2 server. 11. Save and activate the changes. 12. This change requires a restart of the Administration Server and Node Managers.
To restart the Admin Server, follow the steps provided in section Section 4.7, "Starting the Administration Server on SOAHOST1."
a. b.
To restart the Admin Server follow the steps provided in Section 5.3, "Restarting the Administration Server.". To restart Node Manager on SOAHOST1, use the procedure described in Section 5.7, "Restarting the Node Manager on SOAHOST1." Repeat for Node Manager in SOAHOST2
6.1.7 Propagating the Domain Changes to the Managed Server Domain Directory
To propagate the start scripts and classpath configuration from the Administration Server's domain directory to the managed server domain directory:
1. 2.
Create a copy of the managed server domain directory and the managed server applications directory. Run the pack command on SOAHOST1 to create a template pack:
SOAHOST1> cd ORACLE_COMMON_HOME/common/bin SOAHOST1> ./pack.sh -managed=true -domain=ORACLE_BASE/admin/ domain_name/aserver/domain_name -template=soadomaintemplateExtSOABPM.jar -template_name=soa_domain_templateExtSOABPM
3.
Run the unpack command on SOAHOST1 to unpack the propagated template to the domain directory of the managed server:
SOAHOST1> ./unpack.sh -domain=ORACLE_BASE/admin/ domain_name/mserver/domain_name -overwrite_domain=true -template=soadomaintemplateExtSOABPM.jar -app_dir=ORACLE_BASE/admin/domain_name/mserver/applications
6-10 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Note: The -overwrite_domain option in the unpack command, allows unpacking a managed server template into an existing domain and existing applications directories. For any file that is overwritten, a backup copy of the original is created. If any modifications had been applied to the start scripts and ear files in the managed server domain directory they must be restored after this unpack operation.
Start the WLS_SOA1 managed server using the Oracle WebLogic Server Administration Console as follows:
a. b.
Expand the Environment node in the Domain Structure window. Choose Servers. The Summary of Servers screen appears.
c. d. 2.
Verify that the server status is reported as Running. If the server is shown as Starting or Resuming, wait for the server status to change to Started. If another status is reported, such as Admin or Failed, check the server output log files for errors. See Chapter 10.6, "Troubleshooting" for possible causes. Access the following URLs: http://SOAHOST1VHN1:8001/soa-infra to verify status of WLS_SOA1. http://SOAHOST1VHN1:8001/soa/composer to verify status of SOA process composer. http://SOAHOST1:8001/wsm-pm to verify status of WebServices Manager. Click Validate Policy Manager. A list of policies and assertion templates available in the data store appear.
Note:
3.
http://SOAHOST1VHN1:8001/integration/worklistapp to verify status of the worklist application. http://SOAHOST1VHN1:8001/b2bconsole to verify status of B2B. http://SOAHOST1VHN1:8001/sdpmessaging/userprefs-ui to verify status of messaging system preferences http://SOAHOST1VHN1:8001/bpm/composer and login to the composer application. http://SOAHOST1VHN1:8001/bpm/workspace and login to the workspace application.
6.1.9 Propagating the Domain Configuration to SOAHOST2 Using the Unpack Utility
To propagate the domain configuration to SOAHOST2:
1.
Run the following command on SOAHOST1 to copy the template file created in the previous step to SOAHOST2.
SOAHOST1> cd ORACLE_COMMON_HOME/common/bin SOAHOST1> scp soadomaintemplateExtSOABPM.jar oracle@node2:ORACLE_COMMON_ HOME/common/bin
2.
Note: The -overwrite_domain option in the unpack command, allows unpacking a managed server template into an existing domain and existing applications directories. For any file that is overwritten, a backup copy of the original is created. If any modifications had been applied to the start scripts and ear files in the managed server domain directory they must be restored after this unpack operation.
Start the WLS_SOA2 managed server using the Oracle WebLogic Server Administration Console as follows:
a. b.
Expand the Environment node in the Domain Structure window. Choose Servers. The Summary of Servers screen appears.
c. d. 2.
Click the Control tab. Select WLS_SOA2 and then click Start.
Verify that the server status is reported as Running. If the server is shown as Starting or Resuming, wait for the server status to change to Started. If another status is reported, such as Admin or Failed, check the server output log files for errors. See Chapter 10.6, "Troubleshooting" for possible causes. Access the following URLs: http://SOAHOST2VHN1:8001/soa-infra to verify status of WLS_SOA2. http://SOAHOST2VHN1:8001/soa/composer to verify status of soa process composer.
3.
6-12 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
http://SOAHOST2:8001/wsm-pm to verify status of WebServices Manager. Click Validate Policy Manager. A list of policies and assertion templates available in the data store appear.
Note:
http://SOAHOST2VHN1:8001/integration/worklistapp to verify status of the worklist application. http://SOAHOST2VHN1:8001/b2bconsole to verify status of B2B. http://SOAHOST2VHN1:8001/sdpmessaging/userprefs-ui to verify status of messaging system preferences http://SOAHOST2VHN1:8001/bpm/composer and login to the composer application. http://SOAHOST2VHN1:8001/bpm/workspace and login to the workspace application.
On WEBHOST1 and WEBHOST2, add the following lines to the ORACLE_BASE/ admin/instance_name/config/OHS/component_name/mod_wl_ohs.conf file:
# SOA soa-infra app <Location /soa-infra> SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location> # Worklist <Location /integration/> SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location> # B2B <Location /b2bconsole> SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location> # UMS prefs <Location /sdpmessaging/userprefs-ui > SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location> # Default to-do taskflow <Location /DefaultToDoTaskFlow/> SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location>
# Workflow <Location /workflow> SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location> #Required if attachments are added for workflow tasks <Location /ADFAttachmentHelper> SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location> # SOA composer application <Location /soa/composer> SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location> # BPM <Location /bpm/composer > SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location> # BPM <Location /bpm/workspace > SetHandler weblogic-handler WebLogicCluster SOAHOST1VHN1:8001,SOAHOST2VHN1:8001 </Location>
Make sure the httpd.conf file located in the same directory as the mod_wl_ohs file contains the following lines:
NameVirtualHost *:7777 <VirtualHost *:7777> ServerName https://soa.mycompany.com:443 ServerAdmin [email protected] RewriteEngine On RewriteOptions inherit </VirtualHost> NameVirtualHost *:7777 <VirtualHost *:7777> ServerName admin.mycompany.com:80 ServerAdmin [email protected] RewriteEngine On RewriteOptions inherit </VirtualHost>
Note:
Values such as soa.mycompany.com:443, 7777, admin.mycompany:80, and you@youraddress that are noted in this document serve as examples only. Enter values based on the actual environment.
2.
6-14 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
The servers specified in the WebLogicCluster parameter are only important at startup time for the plug-in. The list needs to provide at least one running cluster member for the plug-in to discover other members of the cluster. Note that the listed cluster member must be running when Oracle HTTP Server is started. Oracle WebLogic Server and the plug-in work together to update the server list automatically with new, failed, and recovered cluster members. Some example scenarios:
Example 1: If you have a two-node cluster and then add a third member, you do not need to update the configuration to add the third member. The third member will be discovered on the fly at runtime. Example 2: You have a three-node cluster but only two nodes are listed in the configuration. However, if both listed nodes are down when you start Oracle HTTP Server, then the plug-in would fail to route to the cluster. You must ensure that at least one of the listed nodes is running when you start Oracle HTTP Server. If you list all members of the cluster, then you guarantee you can route to the cluster, assuming at least one member is running when Oracle HTTP Server is started.
For more information on configuring the WebLogic Server plug-in, see the Oracle Fusion Middleware Using Web Server Plug-Ins With Oracle WebLogic Server guide.
http://WEBHOST1:7777/wsm-pm http://WEBHOST2:7777/wsm-pm http://WEBHOST1:7777/soa-infra http://WEBHOST2:7777/soa-infra http://WEBHOST1:7777/soa/composer http://WEBHOST2:7777/soa/composer http://WEBHOST1:7777/integration/worklistapp http://WEBHOST2:7777/integration/worklistapp http://WEBHOST1:7777/sdpmessaging/userprefs-ui http://WEBHOST2:7777/sdpmessaging/userprefs-ui http://WEBHOST1:7777/b2bconsole http://WEBHOST2:7777/b2bconsole http://WEBHOST1:7777/bpm/composer http://WEBHOST2:7777/bpm/composer
http://WEBHOST1:7777/bpm/workspace http://WEBHOST2:7777/bpm/workspace
You can also verify these URLs using your LBR address:
For information on configuring system access through the load balancer, see Section 2.2.2, "Load Balancers."
In the WebLogic Server Administration Console, in the Change Center section, click Lock & Edit. In the left pane, choose Environment in the Domain Structure window and then choose Clusters. The Summary of Clusters page appears. Select the SOA_Cluster cluster. Select HTTP. Set the values for the following:
6. 7. 8.
Click Save. To activate the changes, click Activate Changes in the Change Center section of the Administration Console. Restart the servers to make the Frontend Host directive in the cluster effective.
Note:
If you do not set the frontend HTTP host and port, you get the following message when trying to retrieve a document definition XSD from Oracle B2B:
An error occured while loading the document definitions. java.lang.IllegalArgumentException: Cluster address must be set when clustering is enabled.
Callback URL The SOA system calculates the callback URL as follows:
If a request to SOA originates from an external or internal service, then SOA uses the callback URL specified by the client.
6-16 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
If a request to an external or internal asynchronous service originates from SOA, the callback URL is determined using the following method, in decreasing order of preference:
1.
Use callbackServerURL specified as a binding property for the specific reference. (You can set this when modeling the composite or at runtime using the MBeans). This allows different service calls to have different callback URLs. That is, a callback URL from an external service can be set to be different than one to an internal service In the context of the EDG architecture, typically this will be soa.mycompany.com (443/https) for external services and soainternal.mycompany.com (7777/http) for internal services. At runtime, this property is set using the System MBean Browser, through the corresponding binding mbean. To add a specific URL, add a callbackServerURL property to its Properties attribute, then invoke the save operation. Use the callback URL as specified in soa-infra-config.xml. In this case, only one address can be specified. When a mix of both external and internal services can be invoked, this should be set to soa.mycompany.com (443/https) in the EDG architecture. When only internal services are to be invoked, this can be set to soainternal.mycompany.com (7777/http). Use the callback URL as the frontend host specified in WLS for the SOA_ Cluster. In this case, too, only one address can be specified and the recommendation is same as the one for soa-infra-config.xml. Use the local host name as provided by WLS MBean APIs. This is not recommended in HA environments such as EDG.
2.
3.
4.
6.1.15 Setting the WLS Cluster address for Direct Binding/RMI invocations to composites
When using direct binding composites, you must set the WLS Cluster address for the SOA_Cluster. To set the WLS Cluster address:
1. 2. 3. 4.
In the WebLogic Server Administration Console, in the Change Center section, click Lock & Edit. In the left pane, choose Environment from the Domain Structure window, and then choose Clusters. The Summary of Clusters page appears. Select the SOA_Cluster cluster. In the Configuration, General tab, enter the following in the Cluster Address field: SOAHOST1VHN1:8001,SOAHOST2VHN1:8001
5. 6. 7.
Click Save. To activate the changes, click Activate Changes in the Change Center section of the Administration Console. Restart the servers for the Frontend Host directive to take effect in the cluster.
Note:
For asynch request/response interactions over direct binding, the SOA composites must provide their jndi provider url for the invoked service to look up the beans for callback. If soa-infra config properties are not specified, but the WLS Cluster address is specified, the cluster address from the JNDI provider URL is used. This cluster address can be a single DNS name which maps to the clustered servers' IP addresses or a comma separated list of server ip:port. Alternatively, the soa-infra config property JndiProviderURL/SecureJndiProviderURL can be used for the same purpose if explicitly set by users.
Log into the Oracle WebLogic Server Administration Console. In the Domain Structure window, expand the Services node and then click the Persistence Stores node. The Summary of Persistence Stores page appears.
3.
Select the persistence store (represented as a hyperlink) from the Name column of the table. The Settings page for the persistence store appear.
4.
In the Configuration tab, enter the location on a persistent storage solution (such as NAS or SAN) that is available to other servers in the cluster in the Directory field. Specifying this location enables pending JMS messages to be sent. The location should follow the following directory structure:
ORACLE_BASE/admin/domain_name/soa_cluster_name/jms
Note: Both WLS_SOA1 and WLS_SOA2 must be able to access this directory. This directory must also exist before you restart the server.
5. 6.
Click Save and activate changes. Restart the servers to make the change in the persistent stores effective.
6-18 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Note:
Preferably, this location should be a dual-ported SCSI disk or on a Storage Area Network (SAN).
To set the location for the default persistence store, complete these steps:
1. 2. 3.
Log into the Oracle WebLogic Server Administration Console. In the Domain Structure window, expand the Environment node and then click the Servers node. The Summary of Servers page appears. Click the name of the server (represented as a hyperlink) in Name column of the table. The settings page for the selected server appears and defaults to the Configuration tab. Click the Services tab. In the Default Store section of the page, enter the path to the folder where the default persistent stores will store its data files. The directory structure of the path is as follows:
ORACLE_BASE/admin/domain_name/soa_cluster_name/tlogs
4. 5.
6.
Click Save.
Note:
To enable migration of the Transaction Recovery Service, specify a location on a persistent storage solution that is available to other servers in the cluster. Both WLS_SOA1 and WLS_SOA2 must be able to access this directory. This directory must also exist before you restart the server.
6.1.18 Enabling High Availability for Oracle File and FTP Adapters
The Oracle File and FTP Adapters enable a BPEL process or an Oracle Mediator to read and write files on local file systems and on remote file systems through FTP (File Transfer Protocol).These adapters support high availability for an active-active topology with Oracle BPEL Process Manager and Oracle Mediator service engines for both inbound and outbound operations. To make Oracle File and FTP Adapters highly available for outbound operations, use the database mutex locking operation as described in "High Availability in Outbound Operations" in Oracle Fusion Middleware User's Guide for Technology Adapters. The database mutex locking operation enables these adapters to ensure that multiple references do not overwrite one another if they write to the same directory.
Note:
The File Adapter picks up a file from the inbound directory, processes it, and then outputs a file to the output directory. Because the File Adapter is non-transactional, files can be processed twice. As a result, it is possible to get duplicate files when there is failover in the RAC backend or in the SOA managed servers.
Note:
You must increase global transaction timeouts if you use database as a coordinator.
1.
Create Database Tables You are not required to perform this step since the database schemas are pre-created as a part of soainfra.
2.
Modify Deployment Descriptor for Oracle File Adapter Modify Oracle File Adapter deployment descriptor for the connection-instance corresponding to eis/HAFileAdapter from the Oracle WebLogic Server console:
a. b. c. d. e.
Log into your Oracle WebLogic Server console. To access the console navigate to http://servername:portnumber/console. Click Deployments in the left pane for Domain Structure. Click FileAdapter under Summary of Deployments on the right pane. Click the Configuration tab. Click the Outbound Connection Pools tab, and expand javax.resource.cci.ConnectionFactory to see the configured connection factories. Click eis/HAFileAdapter. The Outbound Connection Properties for the connection factory corresponding to high availability is displayed. The connection factory properties appear as shown in Figure 63.
f. g.
Click on Lock and Edit. After this, the property value column becomes editable (you can click on any of the rows under "Property Value" and modify its value).
6-20 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
The new parameters in connection factory for Oracle File and FTP Adapters are as follows: controlDir: Set it to the directory structure where you want the control files to be stored. You must set it to a shared location if multiple WebLogic Server instances run in a cluster. Structure the directory for shared storage as follows:
ORACLE_BASE/admin/<domain_name>/<cluster_name>/fadapter
inboundDataSource: Set the value to jdbc/SOADataSource. This is the data source, where the schemas corresponding to high availability are pre-created. The pre-created schemas can be found under ORACLE_HOME/ rcu/integration/soainfra/sql/adapter/createschema_adapter_ oracle.sql. If you want to create the schemas elsewhere, use this script. You must set the inboundDataSource property accordingly if you choose a different schema. outboundDataSource: Set the value to jdbc/SOADataSource. This is the data source where the schemas corresponding to high availability are pre-created. The pre-created schemas can be found under ORACLE_HOME/ rcu/integration/soainfra/sql/adapter/createschema_adapter_ oracle.sql. If you want to create the schemas elsewhere, use this script. You must set the outboundDataSource property if you choose to do so. outboundDataSourceLocal: Set the value to jdbc/SOADataSource. This is the datasource where the schemas corresponding to high availability are pre-created. outboundLockTypeForWrite: Set the value to oracle if you are using Oracle Database. By default the Oracle File and FTP Adapters use an in-memory mutex to lock outbound write operations. You must choose from the following values for synchronizing write operations: memory: The Oracle File and FTP Adapters use an in-memory mutex to synchronize access to the file system. oracle: The adapter uses Oracle Database sequence. db: The adapter uses a pre-created database table (FILEADAPTER_MUTEX) as the locking mechanism. You must use this option only if you are using a schema other than the Oracle Database schema. user-defined: The adapter uses a user-defined mutex. To configure the user-defined mutex, you must implement the mutex interface: "oracle.tip.adapter.file.Mutex" and then configure a new binding-property with the name "oracle.tip.adapter.file.mutex" and value as the fully qualified class name for the mutex for the outbound reference.
h. i.
Click Save after you update the properties. The Save Deployment Plan page appears. Enter a shared storage location for the deployment plan. The directory structure is as follows:
ORACLE_BASE/admin/<domain_name>/<cluster_name>/dp/Plan.xml
j. k.
Click Save and Activate. Configure BPEL Process or Mediator Scenario to use the connection factory as shown in the following example:
<adapter-config name="FlatStructureOut" adapter="File Adapter" Extending the Domain to Include Oracle BPM 6-21
xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata"> <connection-factory location="eis/HAFileAdapter" adapterRef=""/> <endpoint-interaction portType="Write_ptt" operation="Write"> <interaction-spec className="oracle.tip.adapter.file.outbound.FileInteractionSpec"> <property../> <property../> </interaction-spec> </endpoint-interaction> </adapter-config>
Note:
Skip locking scales better in a cluster and under load. All work is in one transaction (as opposed to update/reserve, then commit, then select in a new transaction), so the risk of facing a non-recoverable situation in a high availability environment is minimized. No unique MarkReservedValue must be specified. Previously, for this to work you would have to configure a complex variable, such as R${weblogic.Name-2}-${IP-2}-${instance}.
For more information, see "Scalability" and "Polling Strategies" in Oracle Fusion Middleware User's Guide for Technology Adapters.
to a Different Host" in the guide. Also refer to the Oracle Database Backup and Recovery Guide for information on database backup. To back up the installation a this point, complete these steps:
1.
b.
Back up the Middleware Home on the web tier using the following command (as root):
tar -cvpf BACKUP_LOCATION/web.tar MW_HOME
c.
Back up the Instance Home on the web tier using the following command (as root):
tar -cvpf BACKUP_LOCATION/web_instance.tar ORACLE_INSTANCE
d.
2.
Back up the database. This is a full database backup (either hot or cold) using Oracle Recovery Manager (recommended) or OS tools such as tar for cold backups if possible. Back up the Administration Server domain directory to save your domain configuration. The configuration files all exist under the ORACLE_BASE/ admin/<domain_name> directory.
SOAHOST1> tar -cvpf edgdomainback.tar ORACLE_BASE/admin/domain_name
3.
Note:
ORACLE_HOME should be backed up if any changes are made to the XEngine configuration that are part of your B2B setup. These files are located under ORACLE_HOME/soa/thirdparty/ edifecs/XEngine. To back up ORACLE_HOME, execute the following command:
Section 6.2.2, "Running the Configuration Wizard on SOAHOST1 to Extend a SOA Domain to Include BPM" Section 6.2.3, "Configuring a JMS Persistence Store for BPM JMS" Section 6.2.4, "Propagating the Domain Configuration to the managed server directory in SOAHOST1 and to SOAHOST2" Section 6.2.5, "Starting the BPM Suite Components" Section 6.2.6, "Validating the BPM Suite Components in WLS_SOA1 and WLS_ SOA2" Section 6.2.7, "Configuring Oracle HTTP Server for the WLS_SOAn Managed Servers" Section 6.2.8, "Validating Access Through Oracle HTTP Server" Section 6.2.9, "Backing Up the Installation"
These commands create a backup of the installation files for both Oracle WebLogic Server and Oracle Fusion Middleware, as well as the domain configuration.
6.2.2 Running the Configuration Wizard on SOAHOST1 to Extend a SOA Domain to Include BPM
Run the Configuration Wizard from the SOA home directory to extend a domain containing an Administration Server and Oracle Web Services Manager to support SOA and BPM components.
1.
Change the directory to the location of the Configuration Wizard. This is within the SOA home directory. Domain extensions are run from the node where the Administration Server resides).
SOAHOST1> cd ORACLE_HOME/common/bin
2.
3. 4. 5.
In the Welcome screen, select Extend an Existing WebLogic Domain, and click Next. In the WebLogic Domain Directory screen, select the WebLogic domain directory ORACLE_BASE/admin/domain_name/aserver/domain_name, and click Next. In the Select Extension Source screen, do the following:
Select Extend my domain automatically to support the following added products. Select the following products: Select the following product: Oracle BPM Suite - 11.1.1.0 [soa]
6-24 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
6.
In the Configure JDBC Component Schema screen, accept existing values (schemas created in the existing SOA system) and click Next. BPM uses the same DataSources as the existing soa-infra system.
7.
Click Next.
8. 9.
In the Select JMS Distributed Destination Type screen, select UDD from the drop down list for BPMJMSModule. Leave existing modules as they are. In the Target Deployments to Clusters or Servers screen, ensure the following targets:
Target WSM-PM only to WSM-PM_Cluster. Target usermessagingserver and usermessagingdriver-email only to SOA_ Cluster. (The usermessaging-xmpp, usermessaging-smpp, and usermessaging-voicexml applications are optional.) Target the oracle.rules.*, oracle.sdp.*, oracle.bpm.*, and oracle.soa.* deployments only to SOA_Cluster. Target the oracle.wsm.seedpolicies library only to WSM-PM_Cluster and SOA_Cluster.
Click Next.
10. In the Target Services to Clusters or Servers screen, ensure the following targets:
Target JOC Startup Class and JOC Shutdown Class only to WSM-PM_ Cluster. Target OWSM Startup Class only to WSM-PM_Cluster. Target the mds-owsm, mdw-owsm-rac0 and mds-owsm-rac1 datasources to the WSM-PM_Cluster and the AdminServer
Click Next.
11. In the Configuration Summary screen click Extend. 12. In the Creating Domain screen, click Done.
You must restart the Administration Server for this configuration to take effect. To restart the Administration Server, use the procedure in Section 4.7, "Starting the Administration Server on SOAHOST1."
Log into the Oracle WebLogic Server Administration Console. In the Domain Structure window, expand the Services node and then click the Persistence Stores node. The Summary of Persistence Stores page appears.
3.
Select the BPMJMSFileStore_auto_1 persistence store (represented as a hyperlink) from the Name column of the table. The Settings page for the BPMJMSFileStore_auto_1 persistence store appears.
4.
In the Configuration tab, enter the location on a persistent storage solution (such as NAS or SAN) that is available to other servers in the cluster in the Directory field. Specifying this location enables pending JMS messages to be sent. The location should follow the following directory structure:
ORACLE_BASE/admin/domain_name/soa_cluster_name/jms
Note: Both WLS_SOA1 and WLS_SOA2 must be able to access this directory. This directory must also exist before you restart the server.
5. 6. 7.
Click Save and activate changes. Repeat these steps for the BPMJMSFileStore_auto_2 persistence store. Restart the servers to make the change in the persistent stores effective.
6.2.4 Propagating the Domain Configuration to the managed server directory in SOAHOST1 and to SOAHOST2
Oracle BPM Suite requires some updates to the WebLogic Server start scripts. Propagate these changes using the pack and unpack commands. To propagate the start scripts and classpath configuration from the Administration Server's domain directory to the managed server domain directory:
1. 2.
Create a backup copy of the managed server domain directory and the managed server applications directory. Run the pack command on SOAHOST1 to create a template pack:
SOAHOST1> cd ORACLE_COMMON_HOME/common/bin SOAHOST1> ./pack.sh -managed=true -domain=ORACLE_BASE/admin/ domain_name/aserver/domain_name -template=soadomaintemplateExtBPM.jar -template_name=soa_domain_templateExtBPM
3.
Run the unpack command on SOAHOST1 to unpack the propagated template to the domain directory of the managed server:
SOAHOST1> ./unpack.sh -domain=ORACLE_BASE/admin/domain_name/mserver/domain_name -overwrite_domain=true -template=soadomaintemplateExtBPM.jar -app_dir=ORACLE_BASE/admin/domain_name/mserver/applications
4.
5.
6-26 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Note: The -overwrite_domain option in the unpack command, allows unpacking a managed server template into an existing domain and existing applications directories. For any file that is overwritten, a backup copy of the original is created. If any modifications had been applied to the start scripts and ear files in the managed server domain directory they must be restored after this unpack operation.
Since BPM extends an already existing SOA system, the Administration Server and respective Node Managers are already running in SOAHOST1 and SOAHOST2.
Log into the Oracle WebLogic Server Administration Console at: http://ADMINVHN:7001/console.
b.
In the Domain Structure window, expand the Environment node, then select Servers. The Summary of Servers page appears.
c. d. e. f. 2.
Click the Control tab. Select WLS_SOA1 from the Servers column of the table. Click Shutdown. Wait for the shutdown to complete (refresh the WebLogic Server Console page to verify shutdown status). Click Start.
Verify that the server status for WLS_SOA1 and WLS_SOA2 is reported as Running in the WebLogic Server Administration Console. If the server is shown as Starting or Resuming, wait for the server status to change to Started. If another status is reported, such as Admin or Failed, check the server output log files for errors. See Chapter 10.6, "Troubleshooting" for possible causes. Access the following URLs: http://SOAHOST1VHN1:8001/bpm/composer and login to the composer application.
2.
Watch for any errors reported in the out put file for the server:
ORACLE_BASE/admin/domain_name/mserver/domain_ name/servers/WLS_SOA1/logs/WLS_SOA1.log and ORACLE_BASE/admin/domain_name/mserver/domain_ name/servers/WLS_SOA1/logs/WLS_SOA1-diagnostics.log http://SOAHOST2VHN1:8001/bpm/composer and login to the composer application. http://SOAHOST2VHN1:8001/bpm/workspace and login to the workspace application.
Note:
Watch for any errors reported in the out put file for the server:
6.2.7 Configuring Oracle HTTP Server for the WLS_SOAn Managed Servers
To enable Oracle HTTP Server to route to BPM web applications, you must set the WebLogicCluster parameter to the list of nodes in the cluster:
1.
2.
6-28 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
While WLS_SOA is running, stop WLS_SOA1 using the Oracle WebLogic Server Administration Console. Access WebHost1:7777/bpm/composer and WebHost1:7777/bpm/workspace to verify the appropriate functionality for BPM project Composer. Start WLS_SOA1 from the Oracle WebLogic Server Administration Console. Stop WLS_SOA2 from the Oracle WebLogic Server Administration Console. Access WebHost1:7777/bpm/composer and WebHost1:7777/bpm/workspace to verify the appropriate functionality for BPM Workspace.
3. 4. 5.
You can also verify these URLs using your LBR address:
http://soa.mycompany.com:80/bpm/composer http://soa.mycompany.com:80/bpm/workspace
b.
Back up the Middleware Home on the web tier using the following command (as root):
tar -cvpf BACKUP_LOCATION/web.tar MW_HOME
c.
Back up the Instance Home on the web tier using the following command (as root):
tar -cvpf BACKUP_LOCATION/web_instance.tar ORACLE_INSTANCE
d.
2.
Back up the database. This is a full database backup (either hot or cold) using Oracle Recovery Manager (recommended) or OS tools such as tar for cold backups if possible. Back up the Administration Server domain directory to save your domain configuration. The configuration files all exist under the ORACLE_BASE/ admin/<domain_name> directory.
SOAHOST1> tar -cvpf edgdomainback.tar ORACLE_BASE/admin/domain_name
3.
6-30 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
7
7
Section 7.1, "Overview of Adding BAM to a Domain" Section 7.2, "Enabling VIP4 in BAMHOST1" Section 7.3, "Extending the Domain to Include BAM" Section 7.4, "Configuring a JMS Persistence Store for BAM UMS" Section 7.5, "Configuring a Default Persistence Store for Transaction Recovery" Section 7.6, "Untargeting the BAM Server System from WLS_BAM2" Section 7.7, "Propagating the Domain Configuration to BAMHOST1 and BAMHOST2 Using the pack/unpack Utility" Section 7.8, "Disabling Host Name Verification for the WLS_BAMn Managed Servers" Section 7.9, "Starting Node Manager on BAMHOST1 and BAMHOST2" Section 7.10, "Starting the BAM System" Section 7.11, "Configuring the BAM Web Applications to Use the BAM Server in BAMHOST1" Section 7.12, "Configuring the ADCServer to Use the Appropriate BAMServer Address" Section 7.13, "Configuring Oracle HTTP Server for the WLS_BAMn Managed Servers" Section 7.14, "Validating Access Through Oracle HTTP Server" Section 7.15, "Configuring Server Migration for the WLS_BAM1 Server" Section 7.16, "Configuration Changes Applied to BAM components in an EDG Topology" Section 7.17, "Backing Up the Installation"
install any software in these two nodes. For the BAM system to work properly, BAMHOST1 and BAMHOST2 must maintain the same system configuration that was required for installing Oracle FMW in SOAHOST1 and SOAHOST2. Otherwise, unpredictable behavior in the execution of binaries may occur. Performing Backups Before using the Configuration Wizard, you must back up the domain as described in in Oracle Fusion Middleware Administrators Guide. This section describes how to add BAM to the domain that you created in Chapter 4, "Creating a Domain" through the following steps.
Note:
You might have already added SOA components to the domain as described in Chapter 5, "Extending the Domain for SOA Components."
Step 1: Enabling VIP4 in BAMHOST1 Step 2: Extending the Domain to Include BAM Step 3: Configuring a JMS Persistence Store for BAM UMS Step 4: Configuring a Default Persistence Store for Transaction Recovery Step 5: Untargeting the BAM Server System from WLS_BAM2 Step 6: Propagating the Domain Configuration to BAMHOST1 and BAMHOST2 Using the pack/unpack Utility Step 7: Starting Node Manager on BAMHOST1 and BAMHOST2 Step 8: Starting the BAM System Step 9: Configuring the BAM Web Applications to Use the BAM Server in BAMHOST1 Step 10: Configuring the ADCServer to Use the Appropriate BAMServer Address Step 11: Configuring Oracle HTTP Server for the WLS_BAMn Managed Servers Step 12: Configuring Server Migration for the WLS_BAM1 Server
7-2 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
However, a deployment may choose to use a different database service specifically for BAM.
Note:
Before performing these steps, back up the domain as described in Oracle Fusion Middleware Administrators Guide.
1.
Change directory to the location of the Configuration Wizard. This is within the SOA home directory.
SOAHOST1> cd ORACLE_HOME/common/bin
2.
3. 4.
In the Welcome screen, select Extend an existing WebLogic domain, and click Next. In the WebLogic Domain Directory screen, select the WebLogic domain directory (ORACLE_BASE/admin/<domain_name>/aserver/<domain_name>), and click Next. In the Select Extension Source screen, do the following:
5.
Select Extend my domain automatically to support the following added products. Select the following products: Oracle Business Activity Monitoring 11.1.1.1
Click Next.
6.
In the Configure JDBC Component Schema screen (Figure 71), do the following:
a. b. c.
Select BAM Schema. Select Configure selected component schemas as RAC multi data source schemas in the next panel. Click Next.
7-3
7.
In the Configure RAC Multi Data Sources Component Schema screen (Figure 72), do the following:
a. b.
Select BAM Schema. Leave the other data sources as they are. Enter values for the following fields, specifying the connect information for the Oracle RAC database that was seeded with RCU. Driver: Select Oracle driver (Thin) for RAC Service-Instance connections, Versions:10, 11. Service Name: Enter the service name of the database; for example, soaedg.mycompany.com. Username: Enter the complete user name (including prefix) for the schemas. The user names shown in Figure 72 assume thatsoedg was used as prefix for schema creation from RCU. Password: Enter the password to use to access the schemas.
c. d.
Click Add and enter the details for the first RAC instance. Repeat for each RAC instance.
Note:
Leave the SOA Infrastructure, User Messaging Service, OWSM MDS, and SOA MDS Schema information as it is.
e.
Click Next.
7-4 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
8.
In the Test JDBC Data Sources screen, the connections should be tested automatically. The Status column displays the results. Ensure that all connections were successful. If not, click Previous to return to the previous screen and correct your entries. Click Next when all the connections are successful.
9.
JMS Distributed Destinations Managed Servers, Clusters, and Machines Deployments and Services
10. In the Select JMS Distributed Destination Type screen, select UDD from the
Oracle does not support using WDDs for Fusion Middleware components.
11. In the Configure Managed Servers screen, add the required managed servers.
A server called bam_server1 is created automatically. Rename this to WLS_BAM1 and add a new server called WLS_BAM2. Give these servers the attributes listed in Table 71. Do not modify the other servers that appear in this screen; leave them as they are.
7-5
Managed Servers Listen Address BAMHOST1VHN1 BAMHOST2 Listen Port 9001 9001 SSL Listen Port n/a n/a SSL Enabled No No
Click Next.
12. In the Configure Clusters screen, add the following clusters listed in Table 72. Do
not modify the other clusters that display in this screen; leave them as they are.
Table 72 Name BAM_Cluster Clusters Cluster Messaging Mode unicast Multicast Address n/a Multicast Port n/a Cluster Address Leave it empty.
Click Next.
13. In the Assign Servers to Clusters screen, add the following. Do not modify the
other assignments that display in this screen; leave them as they are.
Click Next.
14. In the Configure Machines screen, do the following:
Delete the LocalMachine that appears by default. Click the Unix Machine tab. You should add the BAMHOST1 and BAMHOST2 machines and have the following entries:
Machines Node Manager Listen Address SOAHOST1 SOAHOST2 BAMHOST1 BAMHOST2
Click Next.
16. In the Target Deployments to Clusters or Servers screen, ensure the following
targets:
7-6 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
usermessagingserver and usermessagingdriver-email should be targeted only to SOA_Cluster and BAM_Cluster. (The usermessaging-xmpp, usermessaging-smpp, and usermessaging-voicexml applications are optional.) WSM-PM should be targeted only to WSM-PM_Cluster. The DMS Application should be targeted to BAM_Cluster, SOA_Cluster, WSM-PM_Cluster and Admin Server. The oracle.rules.*, oracle.sdp.* deployments should be targeted to SOA_ Cluster and BAM_Cluster. The oracle.soa.* deployments should be targeted only to SOA_Cluster. The oracle.wsm.seedpolicies library should be targeted only to the WSM-PM_Cluster. Target this library to the SOA_Cluster or BAM_Cluster also, only if you are planning to deploy WebLogic WebServices to them.
Click Next.
17. In the Target Services to Clusters or Servers screen, ensure the following targets:
OWSM Startup Class should be targeted only to WSM_Cluster. mds-owsm, mds-owsm-rac0, and mds-owsm-rac1 should be targeted to both WSM-PM_Cluster and AdminServer. mds-soa, mds-soa-rac0, and mds-soa-rac1 should be targeted to both SOA_ Cluster and AdminServer. OraSDPMDatasource, OraSDPMDatasource-rac0, and OraSDPMDatasource-rac1 should be targeted to both SOA_Cluster and BAM_Cluster. Target JOC Startup Class and JOC Shutdown Class only to WSM-PM_ Cluster.
18. Click Next. 19. In the Configuration Summary screen, click Extend.
Note:
Because you are extending a domain, do not change the values that appear in the Configuration Summary screen.
20. Click OK in the warning dialog about conflicts in ports for the domain. 21. In the Creating Domain screen, click Done. 22. Restart the Administration Server to enable these changes to take effect.
7-7
Middleware Home." You must then change all of the persistent stores to use this shared base directory as follows:
1. 2. 3.
Log into the Oracle WebLogic Server Administration Console. In the Domain Structure window, expand the Services node and then click the Persistence Stores node. The Summary of Persistence Stores page appears. Select the UMSJMSFileStore_auto_3 persistence store (represented as a hyperlink) from the Name column of the table. The Settings page for the persistence store appear. In the Configuration tab, enter the location on a persistent storage solution (such as NAS or SAN) that is available to other servers in the cluster in the Directory field. Specifying this location enables pending JMS messages to be sent. The location should follow the following directory structure:
ORACLE_BASE/admin/<domain_name>/<bam_cluster_name>/jms
4.
5. 6.
Preferably, this location should be a dual-ported SCSI disk or on a Storage Area Network (SAN).
To set the location for the default persistence store, complete these steps for WLS_ BAM1:
1. 2. 3.
Log into the Oracle WebLogic Server Administration Console. In the Domain Structure window, expand the Environment node and then click the Servers node. The Summary of Servers page appears. Click WLS_BAM1 (represented as a hyperlink) in the Name column of the table. The settings page for the WLS_BAM1 server appears and defaults to the Configuration tab. Click the Services tab. In the Default Store section of the page, enter the path to the folder where the default persistent stores will store its data files. The directory structure of the path is as follows:
ORACLE_BASE/admin/<domain_name>/<soa_cluster_name>/tlogs
4. 5.
6.
Click Save.
7-8 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Note:
To enable migration of the Transaction Recovery Service, specify a location on a persistent storage solution that is available to other servers in the cluster. Both BAMHOST1 and BAMHOST2 must be able to access this directory. This directory must also exist before you restart the server.
Log into the Oracle WebLogic Administration Console at http://ADMINVHN:7001/console. In the Domain Structure window, choose Environment and then Servers. The Summary of Servers page appears. Select WLS_BAM2 in Name column of the table. The Settings page for WLS_ BAM2 appears. Click the Deployments tab. Select the oracle-bam application from the Name column of the table. The Settings page for the oracle-bam application appears. Click the Targets tab. Click Lock and Edit. Change the targets for the modules as described in Table 74.
Note:
You must target all of these components as described in Table 74, as incorrect targeting can prevent the BAM system from starting.
Table 74 Component
oracle-bam Component Target Types Type Enterprise Application WEBAPP EJB EJB EJB EJB EJB WEBAPP WEBAPP EJB Target BAM_Cluster WLS_BAM1 WLS_BAM1 WLS_BAM1 WLS_BAM1 WLS_BAM1 WLS_BAM1 BAM_Cluster BAM_Cluster WLS_BAM1
oracle-bam(11.1.1) /oracle/bam oracle-bam-adc-ejb.jar oracle-bam-ems-ejb.jar oracle-bam-eventengine-ejb.jar oracle-bam-reportcache-ejb.jar oracle-bam-statuslistener-ejb.jar OracleBAM OracleBAMWS sdpmessagingclient-ejb.jar
7-9
Propagating the Domain Configuration to BAMHOST1 and BAMHOST2 Using the pack/unpack Utility
7.7 Propagating the Domain Configuration to BAMHOST1 and BAMHOST2 Using the pack/unpack Utility
An EDG topology with WLS_BAM1 and WLS_BAM2 can run in the same nodes as WLS_SOA1 and WLS_SOA2, provided that the nodes have the appropriate capacity. In that case users should run unpack for BAM in the SOA domain directory with the -overwrite_domain=true option. This makes a copy of any existing scripts that get overwritten by the unpack operation. Any contents in the scripts that was modified after the unpack for the SOA servers was executed should be manually merged into the resulting ones for BAM.
1.
Make sure that a similar directory and shared storage configuration as SOAHOST2 is present in BAMHOST1 (described in Chapter 2, "Database and Environment Preconfiguration"). BAMHOST1 and BAMHOST2 should have mounted the MW_ HOME directory as created in Chapter 4, "Creating a Domain." Run the pack command on SOAHOST1 to create a template pack as follows:
a.
2.
Note: Notice that this directory is available as mount point to the MW_HOME created in Chapter 4, "Creating a Domain."
b.
3.
Run the following command on SOAHOST1 to copy the template file created in the previous step to BAMHOST1.
SOAHOST1> scp soadomaintemplateBAM.jar oracle@BAMHOST1:/ORACLE_COMMON_HOME/common/bin
4.
Run the unpack command on BAMHOST1 to unpack the template in the managed server domain directory as follows:
BAMHOST1> cd ORACLE_BASE/fmw/soa/common/bin BAMHOST1> ./unpack.sh -domain= ORACLE_BASE/admin/domain_name/mserver/domain_ name -template=soadomaintemplateBAM.jar -app_dir=ORACLE_BASE/admin/domain_ name/mserver/applications
5.
7.8 Disabling Host Name Verification for the WLS_BAMn Managed Servers
This step is required if you have not set up the appropriate certificates to authenticate the different nodes with the Administration Server (see Chapter 8, "Setting Up Node Manager"). If you have not configured the server certificates, you will receive errors when managing the different WebLogic Servers. To avoid these errors, disable host name verification while setting up and validating the topology, and enable it again
7-10 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
once the EDG topology configuration is complete as described in Chapter 8, "Setting Up Node Manager." Perform these steps to disable host name verification:
1. 2. 3. 4. 5.
Log in to Oracle WebLogic Server Administration Console. In the Administration Console, select WLS_BAM1, then SSL, and then Advanced. Set Hostname Verification to None. In the Administration Console, select WLS_BAM2, then SSL, and then Advanced. Save and activate the changes.
On each server, run the setNMProps.sh script, which is located in the ORACLE_ COMMON_HOME/common/bin directory, to set the StartScriptEnabled property to true before starting Node Manager:
BAMHOSTn> cd ORACLE_COMMON_HOME/common/bin BAMHOSTn> ./setNMProps.sh
Note:
You must use the StartScriptEnabled property to avoid class loading failures and other problems. See also Section 10.6.5, "Incomplete Policy Migration After Failed Restart of SOA Server."
Note:
If the BAM server is sharing the MW_HOME in a local or shared storage with SOA, as suggested in the shared storage configuration described in Chapter 2, "Database and Environment Preconfiguration," it is not required to run setNMProps.sh again. In this case, Node Manager has already been configured to use a startscript.
2.
Log into the Oracle WebLogic Server Administration Console at http://ADMINVHN:7001/console. In the Domain Structure window, expand the Environment node and then select Servers. The Summary of Servers page appears.
Extending the Domain to Include BAM 7-11
Configuring the BAM Web Applications to Use the BAM Server in BAMHOST1
c. d. e. 2.
Click the Control tab. Select WLS_BAM1 from the Servers column of the table. Click Start.
Verify that the PROCESSES initialization parameter for the database is set to a high enough value. See Section 2.1.1.3, "Initialization Parameters" for details. This error often occurs when you start servers that are subsequent the first server.
1.
Log into the Oracle WebLogic Administration Console at http://ADMINVHN:7001/console. In the Domain Structure window, expand the Environment node and then select Servers. The Summary of Servers page appears. Click the Control tab. Select WLS_BAM2 from the Servers column of the table. Click Start.
2.
These instructions assume that the host name verification displayed previously for the WS-M or SOA managed servers in SOAHOST2 and that the Node Manager is already running on SOAHOST2.
7.11 Configuring the BAM Web Applications to Use the BAM Server in BAMHOST1
Perform these steps to configure the OracleBamWeb(WLS_BAM1) and OracleBamWeb(WLS_BAM2) applications to use the BAM server in BAMHOST1:
1. 2. 3. 4. 5.
Access Oracle Enterprise Manager Fusion Middleware Control through http://ADMINVHN:7001/em. Expand BAM in the navigation tree. Right-click OracleBamWeb(WLS_BAM1). Choose BAM Web Properties from the context menu. The BAM Web Properties page appears. Define the following properties:
Enter https://soa.mycompany.com:443 for the application URL. Enter BAMHOST1VHN1 for the server name. See also Table 22 in Section 2.2.3, "IPs and Virtual IPs."
7-12 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
6.
Select OracleBamWeb(WLS_BAM2) from the navigation tree and then repeat these steps.
Access Oracle Enterprise Manager Fusion Middleware Control through http://ADMINVHN:7001/em. Expand BAM in the navigation tree. Right-click OracleBamServer(WLS_BAM1). Choose System MBean Browser from the context menu. In the System MBean Browser, expand oracle.bam.server (located within Application Defined MBeans). Click the BamServerConfig MBean (as illustrated in Figure 73). Update the ADCServerName attribute by entering BAMHOST1VHN1 as the value. Update the ADCServerPort attribute to the listening port of the BAM server. Click Apply.
7.13 Configuring Oracle HTTP Server for the WLS_BAMn Managed Servers
To enable Oracle HTTP Server to route to BAM_Cluster, which contains the WLS_ BAMn managed servers, you must set the WebLogicCluster parameter to the list of nodes in the cluster as follows:
1.
# BAM Web Application <Location /OracleBAM > SetHandler weblogic-handler WebLogicCluster BAMHOST1VHN1:9001,BAMHOST2:9001 </Location> <Location /OracleBAMWS > SetHandler weblogic-handler WebLogicCluster BAMHOST1VHN1:9001,BAMHOST2:9001 </Location> 2.
While WLS_BAM2 is running, stop WLS_BAM1 using the Oracle WebLogic Server Administration Console. Access WebHost1:7777/OracleBAM to verify the appropriate functionality. (Please note that you will not be able to retrieve reports or data since the BAM server is down.) Start WLS_BAM1 from the Oracle WebLogic Server Administration Console. Stop WLS_BAM2 from the Oracle WebLogic Server Administration Console. Access WebHost1:7777/OracleBAM to verify the appropriate functionality.
3. 4. 5.
Step 1: Setting Up the User and Tablespace for the Server Migration Leasing Table Step 2: Creating a Multi-Data Source from the WebLogic Server Administration Console Step 3: Editing the Node Managers Properties File Step 4: Set Environment and Superuser Privileges for the wlsifconfig.sh Script Step 5: Enabling Host Name Verification Certificates Between Node Manager in the BAMHOSTn Nodes and the Administration Server Step 6: Configure Server Migration Targets Step 7: Test Server Migration
7-14 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Note:
If server migration was configured previously for SOA, the BAM stem can use the same data sources and database schemas. In that case, steps 1 through 4 may not be required, but you must also target the corresponding server-migration/leasing datasources to the BAM Cluster.
7.15.1 Setting Up the User and Tablespace for the Server Migration Leasing Table
Perform these steps to create the user and tablespace:
1.
Create a tablespace called leasing. For example, log on to SQL*Plus as the sysdba user and run the following command:
SQL> create tablespace leasing logging datafile 'DB_HOME/oradata/orcl/leasing.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local;
2.
Create a user named leasing and assign it to the leasing tablespace as follows:
SQL> SQL> SQL> SQL> SQL> create user leasing identified by welcome1; grant create table to leasing; grant create session to leasing; alter user leasing default tablespace leasing; alter user leasing quota unlimited on LEASING;
3.
Copy the leasing.ddl file located in the WL_HOME/server/db/oracle/920 directory to your database node. Connect to the database as the leasing user. Run the leasing.ddl script in SQL*Plus as follows:
SQL> @copy_location/leasing.ddl;
7.15.2 Creating a Multi-Data Source from the WebLogic Server Administration Console
Use the Oracle WebLogic Server Administration Console to create a multi-data source for the leasing table. You create a data source to each of the Oracle RAC database instances during the process of setting up the multi-data source, both for these data sources and for the global leasing multi-data source. When you create this data source:
Ensure that it is a non-xa data source The names of the multi-data sources are in the format of <MultiDS>-rac0, <MultiDS>-rac1, and so on. Use Oracles Driver (Thin) Version 9.0.1, 9.2.0, 10, 11 Use Supports Global Transactions, One-Phase Commit, and specify a service name for your database Target these data sources to the BAM Cluster. Make sure the datasources' connection pool initial capacity is set to 0. To do this, select Services, JDBC, and then Datasources. In the Datasources screen, click the Datasource Name, then click the Connection Pool tab, and enter 0 in the Initial capacity field.
For information on using Oracle WebLogic Server Administration to create a multi-data source, see Section 9.2, "Creating a Multi-Data Source Using the Oracle WebLogic Server Administration Console."
Interface This property specifies the interface name for the floating IP (eth0, for example). Do not specify the sub interface, such as eth0:1 or eth0:2. This interface is to be used without the :0, or :1. The Node Managers scripts traverse the different :X enabled IPs to determine which to add or remove. For example, the valid values in Linux environments are eth0, eth1, or, eth2, eth3, ethn, depending on the number of interfaces configured.
Note:
NetMask This property specifies the net mask for the interface for the floating IP.
UseMACBroadcast This property specifies whether or not to use a node's MAC address when sending ARP packets, that is, whether or not to use the -b flag in the arping command.
Perform this configuration in the two nodes where the servers are running. Verify in the output of Node Manager (the shell where the Node Manager is started) that these properties are in use. Otherwise, problems may occur during migration. The output should be similar to the following:
... StateCheckInterval=500 Interface=eth0 NetMask=255.255.255.0 ...
Note:
The following steps are not required if the server properties (start properties) have been properly set and Node Manager can start the servers remotely.
1.
If not done already, set the StartScriptEnabled property in the nodemanager.properties file to true. This is required for the shiphome to enable Node Manager to start the managed servers. Start Node Manager on Node 1 and Node 2 by running the startNodeManager.sh script, which is located in the WL_HOME/server/bin/ directory.
2.
7-16 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Note:
When running Node Manager from a shared storage installation, multiple nodes are started using the same nodemanager.properties file. However, each node may require different NetMask or Interface properties. In this case, specify individual parameters on a per-node basis using environment variables. For example, to use a different interface (eth3) in SOAHOSTn, use the Interface environment variable as follows: SOAHOSTn> export JAVA_OPTIONS=-DInterface=eth3 and start Node Manager after the variable has been set in the shell.
7.15.4 Set Environment and Superuser Privileges for the wlsifconfig.sh Script
Perform these steps to set the environment and superuser privileges for the wlsifconfig.sh script:
1.
Ensure that the PATH environment variable includes the files listed in Table 75.
Required Files for the PATH Environment Directory Location ORACLE_BASE/admin/<domain_name>/mserver/ <domain_name>/bin/server_migration WL_HOME/common/bin WL_HOME/common/nodemanager
Table 75 File
Configure sudo to work without a password prompt. For security reasons, sudo should be restricted to the subset of commands required to run the wlsifconfig.sh script. For example, to set the environment and superuser privileges for the wlsifconfig.sh script, complete these steps:
a.
Grant sudo privilege to the WebLogic user ('oracle') with no password restriction, and grant execute privilege on the /sbin/ifconfig and /sbin/arping binaries. Make sure the script is executable by the WebLogic user ('oracle'). The following is an example of an entry inside /etc/sudoers granting sudo execution privilege for oracle and also over ifconfig and arping:
oracle ALL=NOPASSWD: /sbin/ifconfig,/sbin/arping
b.
Note:
Ask the system administrator for the sudo and system rights as appropriate to this step.
7.15.5 Enabling Host Name Verification Certificates Between Node Manager in the BAMHOSTn Nodes and the Administration Server
See Section 8.3, "Enabling Host Name Verification Certificates for Node Manager in SOAHOST1."
Log into the Oracle WebLogic Server Administration Console. In the Domain Structure window, expand Environment and select Clusters. The Summary of Clusters page appears. Click the cluster for which you want to configure migration (BAM_Cluster) in the Name column of the table. Click the Migration tab. In the Available field, select the machine to which to allow migration and click the right arrow. In this case, select BAMHOST1 and BAMHOST2. Select the data source to be used for automatic migration. In this case select the leasing data source. Click Save. Set the candidate machines for server migration:
Note:
You must perform this task for WLS_BAM1 only, as WLS_ BAM2 does not use server migration.
a. b. c. d.
In Domain Structure window of the Oracle WebLogic Server Administration Console, expand Environment and select Servers. Select the server for which you want to configure migration. Click the Migration tab. In the Available field, located in the Migration Configuration section, select the machines to which to allow migration and click the right arrow. Select BAMHOST2 for WLS_BAM1. Select Automatic Server Migration Enabled. This enables the Node Manager to start a failed server on the target node automatically. Click Save. Restart the Administration Server and the WLS_BAM1 server. To restart the Administration Server, use the procedure in Section 4.7, "Starting the Administration Server on SOAHOST1.".
e. f. g.
where <pid> specifies the process ID of the managed server. You can identify the pid in the node by running this command:
BAMHOST1> ps -ef | grep WLS_BAM1
7-18 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
2. 3. 4.
Watch the Node Manager console: you should see a message indicating that WLS_ BAM1s floating IP has been disabled. Wait for the Node Manager to try a second restart of WLS_BAM1. Node Manager waits for a fence period of 30 seconds before trying this restart. Once Node Manager restarts the server, stop it again. Now Node Manager should log a message indicating that the server will not be restarted again locally.
From Node 2:
1.
Watch the local Node Manager console. After 30 seconds since the last try to restart WLS_BAM1on Node 1, Node Manager on Node 2 should prompt that the floating IP for WLS_BAM1 is being brought up and that the server is being restarted in this node. Access the Oracle BAM console using BAMHOST1VHN1 and soa.mycompany.com/OracleBAM.
2.
Verification From the Administration Console Migration can also be verified in the Administration Console:
1. 2. 3.
Log into the Administration Console. Click on Domain on the left console. Click the Monitoring tab and then on the Migration tab. The Migration Status table provides information on the status of the migration.
Configure the driver for WLS_BAM1 in BAMHOST1. Force a failover of WLS_BAM1 to BAMHOST2. Verify the directory structure for the BAM Server in the failover node:
cd ORACLE_BASE/admin/<domain_name>/mserver/ <domain_name>/servers/<servername>/tmp/_WL_user/oracle-bam_11.1.1 /*/APP-INF/classes/config/
Where '*' represents a directory name randomly generated by Oracle WebLogic Server during deployment, for example, 3682yq.
b.
Back up the Middleware Home on the web tier using the following command (as root):
tar -cvpf BACKUP_LOCATION/web.tar $MW_HOME
c.
Back up the Instance Home on the web tier using the following command (as root):
tar -cvpf BACKUP_LOCATION/web_instance.tar $ORACLE_INSTANCE
d.
2.
Back up the database. This is a full database backup (either hot or cold) using Oracle Recovery Manager (recommended) or OS tools such as tar for cold backups if possible. Back up the AdminServer domain directory. Perform a backup to save your domain configuration. The configuration files all exist under the ORACLE_BASE/ admin/<domain_name> directory.
SOAHOST1> tar -cvpf edgdomainback.tar ORACLE_BASE/admin/<domain_name>
3.
7-20 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
8
8
This chapter describes how to configure Node Manager per the EDG recommendations. Oracle Fusion Middleware EDG recommends using host name verification for the communications between Node Manager and the Administration Server. This requires the use of certificates for the different addresses communicating with the Administration Server. In this chapter, the steps for configuring SOAHOST1 and SOAHOST2 certificates for host name verification are provided. Similar steps would be required for BAMHOST1 and BAMHOST2 in a BAM EDG topology. Although the appropriate hos tname changes in the steps are required for BAM, the procedure and syntax are exactly the same. Oracle also recommends placing your Oracle Fusion Middleware deployments NodeManager's log in a different location from the default (which is inside the MW_ Home where Node Manager is located). See Section 8.2, "Changing the Location of Node Manager Log" for details. This chapter includes the following sections:
Section 8.1, "About the Node Manager" Section 8.2, "Changing the Location of Node Manager Log" Section 8.3, "Enabling Host Name Verification Certificates for Node Manager in SOAHOST1" Section 8.4, "Starting the Node Manager on SOAHOST1" Section 8.5, "Enabling Host Name Verification Certificates for the Node Manager in SOAHOST2" Section 8.6, "Starting the Node Manager on SOAHOST2" Section 8.7, "Configuring WebLogic Servers to Use the Custom Keystores"
8-1
8.3 Enabling Host Name Verification Certificates for Node Manager in SOAHOST1
Perform these steps to set up host name verification certificates for communication between the Node Manager and the Administration Server.
Step 1: Generating Self-Signed Certificates Using the utils.CertGen Utility Step 2: Creating an Identity Keystore Using the utils.ImportPrivateKey Utility Step 3: Creating a Trust Keystore Using the Keytool Utility Step 4: Configuring Node Manager to Use the Custom Keystores
Set up your environment by running the WL_ HOME/server/bin/setWLSEnv.sh script: In the Bourne shell, run the following command:
SOAHOST1> . setWLSEnv.sh
Create a user-defined directory for the certificates. For example, create a directory called certs under the ORACLE_BASE/admin/<domain_ name>/aserver/<domain_name> directory. Note that certificates can be shared across WLS domains.
SOAHOST1> cd ORACLE_BASE/admin/<domain_name>/aserver/<domain_name>/ SOAHOST1> mkdir certs
8-2 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Note:
The directory where keystores and trust keystores are maintained must be on shared storage that is accessible from all nodes so that when the servers fail over (manually or with server migration), the appropriate certificates can be accessed from the failover node. Oracle recommends using central/shared stores for the certificates used for different purposes, for example, an SSL set up for HTTP invocations.
3.
4.
Run the utils.CertGen tool from the user-defined directory to create the certificates for both SOAHOST1 and ADMINVHN. Syntax: java utils.CertGen <key_passphrase> <cert_file_name> <key_ file_name> [export | domestic] [hostname] Examples:
SOAHOST1> java utils.CertGen welcome1 SOAHOST1_cert SOAHOST1_key domestic SOAHOST1.mycompany.com SOAHOST1> java utils.CertGen welcome1 SOAHOST1VHN1_cert SOAHOST1VHN1_key domestic SOAHOST1VHN1.mycompany.com SOAHOST1> java utils.CertGen welcome1 ADMINVHN_cert ADMINVHN_key domestic ADMINVHN.mycompany.com
Create a new identity keystore called appIdentityKeyStore using the utils.ImportPrivateKey utility. Create this keystore under the same directory as the certificates (that is, ORACLE_ BASE/admin/<domain_name>/aserver/<domain_name>/certs.
Note: The Identity Store is created (if none exists) when you import a certificate and the corresponding key into the Identity Store using the utils.ImportPrivateKey utility.
Import the certificate and private key for both SOAHOST1 and VIPHOST1 into the Identity Store. Make sure that you use a different alias for each of the certificate/key pair imported. Syntax: java utils.ImportPrivateKey <keystore_file> <keystore_ password> <certificate_alias_to_use> <private_key_passphrase> <certificate_file> <private_key_file> [<keystore_type>] Examples:
8-3
SOAHOST1> java utils.ImportPrivateKey appIdentityKeyStore.jks welcome1 appIdentity1 welcome1 ORACLE_BASE/admin/domain_name/aserver/domain_name/certs/SOAHOST1_ cert.pem ORACLE_BASE/admin/domain_name/aserver/domain_name/certs/SOAHOST1_ key.pem SOAHOST1> java utils.ImportPrivateKey appIdentityKeyStore.jks welcome1 appIdentity2 welcome1 ORACLE_BASE/admin/domain_name/aserver/domain_ name/certs/SOAHOST1VHN1_cert.pem ORACLE_BASE/admin/domain_name/aserver/domain_ name/certs/SOAHOST1VHN1_key.pem SOAHOST1> java utils.ImportPrivateKey appIdentityKeyStore.jks welcome1 appIdentity3 welcome1 ORACLE_BASE/admin/domain_name/aserver/domain_name/certs/ADMINVHN_ cert.pem ORACLE_BASE/admin/domain_name/aserver/domain_name/certs/ADMINVHN_ key.pem
Copy the standard java keystore to create the new trust keystore since it already contains most of the root CA certificates needed. Oracle does not recommend modifying the standard Java trust key store directly. Copy the standard Java keystore CA certificates located under the WL_HOME/server/lib directory to the same directory as the certificates. For example:
cp WL_HOME/server/lib/cacerts ORACLE_BASE/admin/<domain_name>/aserver/<domain_ name>/certs/appTrustKeyStore.jks
2.
The default password for the standard Java keystore is changeit. Oracle recommends always changing the default password. Use the keytool utility to do this. The syntax is:
keytool -storepasswd -new <NewPassword> -keystore <TrustKeyStore> -storepass <Original Password>
For example:
keytool -storepasswd -new welcome1 -keystore appTrustKeyStore.jks -storepass changeit 3.
The CA certificate CertGenCA.der is used to sign all certificates generated by the utils.CertGen tool and is located at WL_HOME/server/lib directory. This CA certificate must be imported into the appTrustKeyStore using the keytool utility. The syntax is:
keytool -import -v -noprompt -trustcacerts -alias <AliasName> -file <CAFileLocation> -keystore <KeyStoreLocation> -storepass <KeyStore Password>
For example:
keytool -import -v -noprompt -trustcacerts -alias clientCACert -file $WL_HOME/server/lib/CertGenCA.der -keystore appTrustKeyStore.jks -storepass welcome1
8-4 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
The passphrase entries in the nodemanager.properties file get encrypted when you start Node Manager as described in Section 8.4, "Starting the Node Manager on SOAHOST1." For security reasons, you want to minimize the time the entries in the nodemanager.properties file are left unencrypted. After you edit the file, you should start Node Manager as soon as possible so that the entries get encrypted. When using a common/shared storage installation for MW_HOME, Node Manager is started from different nodes using the same base configuration (nodemanager.properties). In that case, it is required to add the certificate for all the nodes that share the binaries to the appIdentityKeyStore.jks identity store. To do this, create the certificate for the new node and import it to appIdentityKeyStore.jks as described above. Once the certificates are available in the store, each node manager needs to point to a different identity alias to send the correct certificate to the Administration Server. To do this, set different environment variables before starting Node Manager in the different nodes:
SOAHOST1>cd WL_HOME/server/bin SOAHOST1>export JAVA_OPTIONS=-DCustomIdentityAlias=appIdentitySOAHOST1 SOAHOSTn>cd WL_HOME/server/bin SOAHOSTn>export JAVA_OPTIONS=-DCustomIdentityAlias=appIdentitySOAHOSTn
If you have not configured and started Node Manager for the first time yet, run the setNMProps.sh script as specified in section Section 4.6, "Starting Node Manager on SOAHOST1." This will enable the use of the start script which is required for SOA and/or BAM.
8-5
Enabling Host Name Verification Certificates for the Node Manager in SOAHOST2
8.5 Enabling Host Name Verification Certificates for the Node Manager in SOAHOST2
Perform these steps to set up SSL for communication between the Node Manager and the Administration Server:
Step 1: Generating Self-Signed Certificates Using the utils.CertGen Utility Step 2: Importing Identities in SOAHOST2 using the "utils.ImportPrivateKey" Utility Step 3: Creating a Trust Keystore Using the Keytool Utility Step 4: Configuring Node Manager to Use the Custom Keystores
Set up your environment by running the WL_ HOME/server/bin/setWLSEnv.sh script: In the Bourne shell, run the following command:
SOAHOST2> . setWLSEnv.sh
The directory where keystores and trust keystores are maintained must be on shared storage that is accessible from all nodes so that when the Administration Server or SOA servers fail over, (manually or with server migration), the appropriate certificates can be accessed. In this case, SOAHOST2 uses the cert directory created for SOAHOST1 certificates. If you are maintaining duplicated stores, create user-defined directory for the certificates.
SOAHOST2> mkdir certs
3.
4.
Run the utils.CertGen tool from the user-defined directory to create the certificates for both SOAHOST2 and VIPHOST1. Syntax: java utils.CertGen <key_passphrase> <cert_file_name> <key_ file_name> [export | domestic] [hostname] Examples:
SOAHOST2> java utils.CertGen welcome1 SOAHOST2_cert SOAHOST2_key domestic SOAHOST2.mycompany.com SOAHOST2> java utils.CertGen welcome1 SOAHOST2VHN1_cert SOAHOST2VHN1_key domestic SOAHOST2VHN1.mycompany.com
8-6 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Enabling Host Name Verification Certificates for the Node Manager in SOAHOST2
Add the following lines to the end of the nodemanager.properties file located in the WL_HOME/common/nodemanager directory. KeyStores=CustomIdentityAndCustomTrust CustomIdentityKeyStoreFileName=<Identity KeyStore> CustomIdentityKeyStorePassPhrase=<Identity KeyStore Passwd> CustomIdentityAlias=<Identity Key Store Alias> CustomIdentityPrivateKeyPassPhrase=<Private Key used when creating Certificate> Make sure to use the correct value for CustomIdentityAlias on each node. For example, on SOAHOST2, use "appIdentity3". Example for Node 2: KeyStores=CustomIdentityAndCustomTrust CustomIdentityKeyStoreFileName=ORACLE_BASE/admin/<domain_ name>/aserver/<domain_name>/certs/appIdentityKeyStore.jks CustomIdentityKeyStorePassPhrase=welcome1 CustomIdentityAlias=appIdentity3 CustomIdentityPrivateKeyPassPhrase=welcome1
Setting Up Node Manager 8-7
Note:
The passphrase entries in the nodemanager.properties file get encrypted when you start Node Manager, as described in Section 8.6, "Starting the Node Manager on SOAHOST2." For security reasons, you want to minimize the time the entries in the nodemanager.properties file are left unencrypted. After you edit the file, you should start Node Manager as soon as possible so that the entries get encrypted.
If you have not configured and started Node Manager for the first time yet, run the setNMProps.sh script as specified in section Section 4.15, "Starting Node Manager on SOAHOST2." This will enable the use of the start script which is required for SOA and/or BAM.
Log in to the Administration Console, and click Lock & Edit. In the left pane, expand Environment, and select Servers. Click the name of the server for which you want to configure the identity and trust keystores. Select Configuration, and then Keystores. In the Keystores field, select the "Custom Identity and Custom Trust" method for storing and managing private keys/digital certificate pairs and trusted CA certificates. In the Identity section, define attributes for the identity keystore.
a.
6.
Custom Identity Keystore: Enter the fully qualified path to the identity keystore:
ORACLE_BASE/admin/domain_name/aserver/domain_ name/certs/appIdentityKeyStore.jks
b. c.
Custom Identity Keystore Type: Leave this field blank, it defaults to JKS. Custom Identity Keystore Passphrase: Enter the password Keystore_Password you provided in Section 8.3.2, "Creating an Identity Keystore Using the utils.ImportPrivateKey Utility." This attribute may be optional or required depending on the type of keystore. All keystores require the passphrase in order to write to the keystore. However, some keystores do not require the passphrase to read from the
8-8 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
keystore. WebLogic Server reads only from the keystore, so whether or not you define this property depends on the requirements of the keystore.
7.
Custom Trust Keystore: Enter the fully qualified path to the trust keystore:
ORACLE_BASE/admin/domain_name/aserver/domain_ name/certs/appTrustKeyStore.jks
b. c.
Custom Trust Keystore Type: Leave this field blank, it defaults to JKS. Custom Trust Keystore Passphrase: The password you provided in as New_ Password in Section 8.3.3, "Creating a Trust Keystore Using the Keytool Utility." This attribute may be optional or required depending on the type of keystore. All keystores require the passphrase in order to write to the keystore. However, some keystores do not require the passphrase to read from the keystore. WebLogic Server reads only from the keystore, so whether or not you define this property depends on the requirements of the keystore.
8. 9.
Click Save. To activate these changes, in the Change Center of the Administration Console, click Activate Changes.
Execute these steps for the Administration Server, the WLS_WSMn and the WLS_ SOAn servers.
8-9
8-10 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
9
9
Server Migration
In this enterprise topology, you must configure server migration for the WLS_SOA1 and WLS_SOA2 managed servers. The WLS_SOA1 managed server is configured to restart on SOAHOST2 should a failure occur. The WLS_SOA2 managed server is configured to restart on SOAHOST1 should a failure occur. For this configuration, the WLS_SOA1 and WLS_SOA2 servers listen on specific floating IPs that are failed over by WLS Server Migration. Configuring server migration for the WLS_SOAn managed servers consists of the following steps:
Step 1: Setting Up a User and Tablespace for the Server Migration Leasing Table Step 2: Creating a Multi-Data Source Using the Oracle WebLogic Server Administration Console Step 3: Enabling Host Name Verification Certificates between SOAHOST1 and SOAHOST2 and the Administration Server Step 4: Editing the Node Managers Properties File Step 5: Setting Environment and Superuser Privileges for the wlsifconfig.sh Script Step 6: Configuring Server Migration Targets Step 7: Testing the Server Migration
9.1 Setting Up a User and Tablespace for the Server Migration Leasing Table
The first step is to set up a user and tablespace for the server migration leasing table:
1.
Create a tablespace called leasing. For example, log on to SQL*Plus as the sysdba user and run the following command:
SQL> create tablespace leasing logging datafile DB_HOME/oradata/orcl/leasing.dbf size 32m autoextend on next 32m maxsize 2048m extent management local;
2.
Creating a Multi-Data Source Using the Oracle WebLogic Server Administration Console
3.
Copy the leasing.ddl file located in either the WL_ HOME/server/db/oracle/817 or the WL_ HOME/server/db/oracle/920 directory to your database node. Connect to the database as the leasing user. Run the leasing.ddl script in SQL*Plus.
SQL> @copy_location/leasing.ddl;
b. c.
9.2 Creating a Multi-Data Source Using the Oracle WebLogic Server Administration Console
The second step is to create a multi-data source for the leasing table from the Oracle WebLogic Server Administration Console: You create a data source to each of the Oracle RAC database instances during the process of setting up the multi-data source, both for these data sources and the global leasing multi-data source. When you create a data source:
Make sure that this is a non-xa data source The names of the multi-data sources are in the format of <MultiDS>-rac0, <MultiDS>-rac1, and so on Use Oracles Driver (Thin) Version 9.0.1, 9.2.0, 10, 11 Use Supports Global Transactions, One-Phase Commit, and specify a service name for your database Target these data sources to the SOA cluster Make sure the datasources' connection pool initial capacity is set to 0. To do this, select Services, JDBC, and then Datasources. In the Datasources screen, click the Datasource Name, then click the Connection Pool tab, and enter 0 in the Initial capacity field.
From Domain Structure window in the Oracle WebLogic Server Administration Console, expand the Services node, then expand the JDBC node. Click Multi Data Sources. The Summary of JDBC Multi Data Source page appears. Click Lock and Edit. Click New. The Create a New JDBC Multi Data Source page appears.
5. 6. 7. 8. 9.
Enter leasing as the Name Enter jdbc/leasing as the JNDI name. Select Failover as algorithm (default). Click Next. Select SOA_Cluster as the target.
9-2 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
11. Select non-XA driver (the default). 12. Click Next. 13. Click Create New Data Source. 14. Enter leasing-rac0 as name. Enter jdbc/leasing-rac0 as JNDI name. Enter oracle as the
database type. For the driver type, enter Oracle Driver (Thin) for RAC server-Instance connection Version 10,11.
Note:
When creating the multi-datasources for the leasing table, enter names in the format of <MultiDS>-rac0, <MultiDS>-rac1, and so on.
15. Click Next. 16. Deselect Supports Global Transactions. 17. Click Next. 18. Enter the service name, database name, host port, and password for your leasing
schema.
19. Click Next. 20. Click Test Configuration and verify the connection works. 21. Click Next. 22. Target the data source to SOA_Cluster. 23. Select the data source and add it to the right screen. 24. Click Create a New Data Source for the second instance of your Oracle RAC
database, target it to SOA_Cluster, repeating the steps for the second instance of your Oracle RAC database.
25. Add the second data source to your multi-data source. 26. Click Activate Changes.
9.3 Enabling Host Name Verification Certificates between SOAHOST1 and SOAHOST2 and the Administration Server
The third step is to create the appropriate certificates for host name verification between the Node Manager and the Administration Server. This procedure is described in Section 8.3, "Enabling Host Name Verification Certificates for Node Manager in SOAHOST1" and Section 8.5, "Enabling Host Name Verification Certificates for the Node Manager in SOAHOST2."
UseMACBroadcast=true
Interface This property specifies the interface name for the floating IP (for example, eth0).
Do not specify the sub interface, such as eth0:1 or eth0:2. This interface is to be used without the :0, or :1. The Node Managers scripts traverse the different :X enabled IPs to determine which to add or remove. For example, the valid values in Linux environments are eth0, eth1, or, eth2, eth3, ethn, depending on the number of interfaces configured.
Note:
NetMask This property specifies the net mask for the interface for the floating IP. The net mask should the same as the net mask on the interface; 255.255.255.0 is used as an example in this document.
UseMACBroadcast This property specifies whether or not to use a nodes MAC address when sending ARP packets, that is, whether or not to use the -b flag in the arping command.
Verify in Node Managers output (shell where Node Manager is started) that these properties are being used, or problems may arise during migration. You should see something like this in the Node Managers output:
... StateCheckInterval=500 Interface=eth0 NetMask=255.255.255.0 ...
Note:
The steps below are not required if the server properties (start properties) have been properly set and the Node Manager can start the servers remotely.
1.
StartScriptEnabled Set this property to true. This is required for the shiphome to enable the Node Manager to start the managed servers.
2.
Start the Node Manager on Node 1 and Node 2 by running the startNodeManager.sh script located in the WL_HOME/server/bin directory.
9-4 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Note:
When running Node Manager from a shared storage installation, multiple nodes are started using the same nodemanager.properties file. However, each node may require different NetMask or Interface properties. In this case, specify individual parameters on a per-node basis using environment variables. For example, to use a different interface (eth3) in SOAHOSTn, use the Interface environment variable as follows: SOAHOSTn> export JAVA_OPTIONS=-DInterface=eth3 and start Node Manager after the variable has been set in the shell.
9.5 Setting Environment and Superuser Privileges for the wlsifconfig.sh Script
The fifth step is to set environment and superuser privileges for the wlsifconfig.sh script:
1.
Table 91 File
Configure sudo to work without a password prompt. For security reasons, sudo should be restricted to the subset of commands required to run the wlsifconfig.sh script. For example, to set the environment and superuser privileges for the wlsifconfig.sh script, complete these steps:
a.
Grant sudo privilege to the WebLogic user ('oracle') with no password restriction, and grant execute privilege on the /sbin/ifconfig and /sbin/arping binaries. Make sure the script is executable by the WebLogic user ('oracle'). The following is an example of an entry inside /etc/sudoers granting sudo execution privilege for oracle and also over ifconfig and arping:
oracle ALL=NOPASSWD: /sbin/ifconfig,/sbin/arping
b.
Note:
Ask the system administrator for the sudo and system rights as appropriate to this step.
1.
Log into the Oracle WebLogic Server Administration Console (http://<host>:<adminPort>/console. Typically, adminPort is 7001 by default). In the Domain Structure window, expand Environment and select Clusters. The Summary of Clusters page appears. Click the cluster for which you want to configure migration (SOA_Cluster) in the Name column of the table. Click the Migration tab. Click Lock and Edit. In the Available field, select the machine to which to allow migration and click the right arrow. In this case, select SOAHOST1 and SOAHOST2. Select the data source to be used for automatic migration. In this case select the leasing data source. Click Save. Click Activate Changes. all of the managed servers as follows:
a. b. c. d.
2. 3. 4. 5. 6. 7. 8. 9.
10. Set the Candidate Machines for Server Migration. You must perform this task for
In Domain Structure window of the Oracle WebLogic Server Administration Console, expand Environment and select Servers. Select the server for which you want to configure migration. Click the Migration tab. In the Available field, located in the Migration Configuration section, select the machines to which to allow migration and click the right arrow. For WLS_ SOA1, select SOAHOST2. For WLS_SOA2, select SOAHOST1. Select Automatic Server Migration Enabled. This enables the Node Manager to start a failed server on the target node automatically. Click Save. Click Activate Changes. Restart the Administration Server and the servers for which server migration has been configured To restsart the Administration Server, use the procedure in Section 4.7, "Starting the Administration Server on SOAHOST1."
Tip: Click Customize this table in the Summary of Servers page, move Current Machine from the Available Window to the Chosen window to view the machine on which the server is running. This will be different from the configuration if the server gets migrated automatically.
e. f. g. h.
9-6 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
pid specifies the process ID of the managed server. You can identify the pid in the node by running this command:
SOAHOST1> ps -ef | grep WLS_SOA1 2. 3. 4.
Watch the Node Manager console: you should see a message indicating that WLS_ SOA1s floating IP has been disabled. Wait for the Node Manager to try a second restart of WLS_SOA1. Node Manager waits for a fence period of 30 seconds before trying this restart. Once Node Manager restarts the server, stop it again. Now Node Manager should log a message indicating that the server will not be restarted again locally.
From Node2:
1.
Watch the local Node Manager console. After 30 seconds since the last try to restart WLS_SOA1on Node 1, Node Manager on Node 2 should prompt that the floating IP for WLS_SOA1 is being brought up and that the server is being restarted in this node. Access the soa-infra console in the same IP.
2.
Verification From the Administration Console Migration can also be verified in the Administration Console:
1. 2. 3.
Log into the Administration Console. Click on Domain on the left console. Click the Monitoring tab and then the Migration subtab. The Migration Status table provides information on the status of the migration.
9-8 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
10
10
This chapter describes some operations that you can perform after you have set up the topology. These operations include monitoring, scaling, and backing up your topology. This chapter contains the following sections:
Section 10.1, "Monitoring the Topology" Section 10.2, "Deploying Composites and Artifacts in SOA Enterprise Deployment Topology" Section 10.3, "Configuring UMS Drivers" Section 10.4, "Scaling the Topology" Section 10.5, "Performing Backups and Recoveries" Section 10.6, "Troubleshooting" Section 10.7, "Best Practices"
Change the nostage property to false in the build.xml file of the Web applications so that ear files are copied to each node. Edit the CreditCardAuthorization and OrderApprvalHumanTask build.xml files, located at FOD_dir\CreditCardAuthorization\bin and FOD_
To:
<target name="deploy-application"> <wldeploy action="deploy" name="${war.name}" source="${deploy.ear.source}" library="false" nostage="true" user="${wls.user}" password="${wls.password}" verbose="false" adminurl="${wls.url}" remote="true" upload="true" targets="${server.targets}" /> </target> 2.
Change the target for the Web applications so that deployments are targeted to the SOA Cluster and not to an individual server. Edit the build.properties file for FOD, located in the FOD_Dir/bin directory, and change the following field:
# wls target server (for shiphome set to server_soa, for ADRS use AdminServer) server.targets=SOA_Cluster (the SOA cluster name in your SOA EDG)
3.
Change the JMS seed templates so that instead of regular Destinations, Uniform Distributed Destinations are used and the JMS artifacts are targeted to the EDG JMS Modules. Edit the createJMSResources.seed file, located in the FOD_ DIR\bin\templates directory, and change:
# lookup the SOAJMSModule - it's a system resource jmsSOASystemResource = lookup("SOAJMSModule","JMSSystemResource") jmsResource = jmsSOASystemResource.getJMSResource() cfbean = jmsResource.lookupConnectionFactory('DemoSupplierTopicCF') if cfbean is None: print "Creating DemoSupplierTopicCF connection factory" demoConnectionFactory = jmsResource.createConnectionFactory('DemoSupplierTopicCF') demoConnectionFactory.setJNDIName('jms/DemoSupplierTopicCF') demoConnectionFactory.setSubDeploymentName('SOASubDeployment') . topicbean = jmsResource.lookupTopic('DemoSupplierTopic') if topicbean is None: print "Creating DemoSupplierTopic jms topic" demoJMSTopic = jmsResource.createTopic("DemoSupplierTopic") demoJMSTopic.setJNDIName('jms/DemoSupplierTopic') demoJMSTopic.setSubDeploymentName('SOASubDeployment')
To:
jmsSOASystemResource = lookup("SOAJMSModule","JMSSystemResource") jmsResource = jmsSOASystemResource.getJMSResource() 10-2 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
topicbean=jmsResource.lookupTopic('DemoSupplierTopic_UDD') if topicbean is None: print "Creating DemoSupplierTopicC jms topic" #create a udd - so clustering is automatically working and done demoJMSTopic = jmsResource.createUniformDistributedTopic("DemoSupplierTopic_UDD") demoJMSTopic.setJNDIName('@jms.topic.jndi@') #Replace the subdeployment name with the one that appears in the WLS AdminConsole as listed for the SOAJMSModule demoJMSTopic.setSubDeploymentName() else: print "Found DemoSupplierTopic_UDD topic noop"
Apply the configuration of UMS drivers in each and every one of the servers in the EDG topology that is using the driver. When server migration is used, servers are moved to a different node's domain directory. It is necessary to pre-create the UMS driver configuration in the failover node. The UMS driver configuration file location is:
ORACLE_BASE/admin/<domain_name>/mserver/<domain_name>/servers/<server_name>/ tmp/_WL_user/<ums_driver_name>/*/configuration/driverconfig.xml
(where * represents a directory whose name is randomly generated by WLS during deployment, for example, "3682yq"). In order to create the file in preparation for possible failovers, users can force a server migration and copy the file from the source node. For example, for BAM:
1. 2.
Configure the driver for WLS_BAM1 in BAMHOST1. Force a failover of WLS_BAM1 to BAMHOST2. Verify the directory structure for the UMS driver configuration in the failover node:
cd ORACLE_BASE/admin/<domain_name>/mserver/<domain_name>/servers/<server_ name>/tmp/_WL_user/<ums_driver_name>/*/configuration/
(where * represents a directory whose name is randomly generated by WLS during deployment, for example, "3682yq").
3.
It is required to restart the driver for these changes to take effect (that is, for the driver to consume the modified configuration). To restart the driver:
1. 2. 3. 4. 5. 6. 7.
Log on to the Oracle WebLogic Administration console. Expand the environment node on the navigation tree. Click on Deployments. Select the driver. Click Stop->When work completes and confirm the operation. Wait for the driver to transition to the "Prepared" state (refresh the administration console page, if required). Select the driver again, and click Start->Servicing all requests and confirm the operation.
Make sure that you verify in Oracle Enterprise Manager Fusion Middleware Control that the properties for the driver have been preserved.
Section 10.4.1, "Scaling Up the Topology (Adding Managed Servers to Existing Nodes)" Section 10.4.2, "Scaling Out the Topology (Adding Managed Servers to New Nodes)"
Because the BAM Server runs in active-passive, you cannot scale a BAM Server Managed Server. You can scale a BAM Web Applications server. The untargeting described in Section 7.6, "Untargeting the BAM Server System from WLS_BAM2" is required. The JMS configuration and the JMS configuration detailed in this section is not required.
1.
Using the Oracle WebLogic Server Administration Console, clone WLS_SOA1 or WLS_WSM1 into a new managed server. The source managed server to clone should be one that already exists on the node where you want to run the new managed server. To clone a managed server, complete these steps:
10-4 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
a.
From the Domain Structure window of the Oracle WebLogic Server Administration Console, expand the Environment node and then Servers. The Summary of Servers page appears. Click Lock and Edit and select the managed server that you want to clone (for example, WLS_SOA1). Click Clone.
b. c.
Name the new managed server WLS_SOAn, where n is a number that identifies the new managed server. In this case, assume that you are adding a new server to Node 1, where WLS_SOA1 was running. The remainder of the steps assume that you are adding a new server to SOAHOST1, which is already running WLS_SOA1.
2.
For the listen address, assign the host name or IP to use for this new managed server. If you are planning to use server migration as recommended for this server, enter the VIP (also called a floating IP) to enable it to move to another node. The VIP should be different from the one used by the managed server that is already running. For WLS_WSM servers, run the Java Object Cache configuration utility again to include the new server in the JOC distributed cache as described in Section 4.17, "Configuring the Java Object Cache for Oracle WSM." You can use the same discover port for multiple WSM-PM servers in the same node. Repeat the steps provided in Section 4.17 for each WSM-PM server and the server list is updated. Create JMS servers for SOA and UMS on the new managed server.
Note:
3.
4.
These steps are not required for scaling up the WSM_PM managed server, only for WLS_SOA managed servers. They are not required either to scale up the BAM Web Applications system.
Create the JMS servers for SOA, UMS and BPM (if applicable) as follows:
a.
Use the Oracle WebLogic Server Administration Console to create a new persistent store for the new SOAJMSServer (which will be created in a later step) and name it, for example, SOAJMSFileStore_N. Specify the path for the store as recommended in Section 2.3, "Shared Storage and Recommended Directory Structure" as the directory for the JMS persistent stores:
ORACLE_BASE/admin/<domain_name>/cluster_name/jms/SOAJMSFileStore_N
Note:
This directory must exist before the managed server is started or the start operation will fail.
b.
Create a new JMS server for SOA: for example, SOAJMSServer_N. Use the SOAJMSFileStore_N for this JMS server. Target the SOAJMSServer_N server to the recently created managed server (WLS_SOAn). Create a new persistence store for the new UMS JMS server (which will be created in a later step) and name it, for example, UMSJMSFileStore_N. Specify the path for the store as recommended in Section 2.3, "Shared Storage and Recommended Directory Structure" as the directory for the JMS persistent stores:
ORACLE_BASE/admin/<domain_name>/cluster_name/jms/UMSJMSFileStore_N
c.
Note:
This directory must exist before the managed server is started or the start operation will fail.
Note:
It is also possible to assign SOAJMSFileStore_N as the store for the new UMS JMS servers. For the purpose of clarity and isolation, individual persistent stores are used in the following steps.
d.
Create a new JMS Server for UMS: for example, UMSJMSServer_N. Use the UMSJMSFileStore_N for this JMS server. Target the UMSJMSServer_N server to the recently created managed server (WLS_SOAn). For BPM Systems only: Create a new persistence store for the new BPMJMSServer, for example, BPMJMSFileStore_N. Specify the path for the store. This should be a directory on shared storage as recommended in Section 2.3, "Shared Storage and Recommended Directory Structure." ORACLE_BASE/admin/domain_name/cluster_name/jms/BPMJMSFileStore_ N.
e.
Note:
This directory must exist before the managed server is started or the start operation fails. You can also assign SOAJMSFileStore_N as store for the new BPM JMS Servers. For the purpose of clarity and isolation, individual persistent stores are used in the following steps.
f.
For BPM systems only: Create a new JMS Server for BPM, for example, BPMJMSServer_N. Use the BPMJMSFileStore_N for this JMSServer. Target the BPMJMSServer_N Server to the recently created Managed Server (WLS_ SOAn). Target the UMSJMSSystemResource to the SOA_Cluster as it may have changed during extend operations. To do this, expand the Services node and then expand the Messaging node. Choose JMS Modules from the Domain Structure window of the Oracle WebLogic Server Administration Console. The JMS Modules page appears. Click UMSJMSSytemResource and open the Targets tab. Make sure all of the servers in the SOA_Cluster appear selected (including the recently cloned WLS_SOAn). Update the SubDeployment Targets for SOA, UMS and BPM JMS Modules (if applicable) to include the recently created JMS servers. To do this, expand the Services node and then expand the Messaging node. Choose JMS Modules from the Domain Structure window of the Oracle WebLogic Server Administration Console. The JMS Modules page appears. Click on the JMS module (for SOA: SOAJMSModule, for BPM: BPMJMSMOdule and for UMS: UMSSYtemResource) represented as a hyperlink in the Names column of the table. The Settings page for module appears. Open the SubDeployments tab. The subdeployment for the deployment module appears.
g.
h.
10-6 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Note:
This subdeployment module name is a random name in the form of SOAJMSServerXXXXXX, UMSJMSServerXXXXXX, or BPMJMSServerXXXXXX, resulting from the Configuration Wizard JMS configuration for the first two servers (WLS_SOA1 and WLS_ SOA2).
Click on it. Add the new JMS Server (for UMS add UMSJMSServer_N, for SOA add SOAJMSServer_N). Click Save and Activate.
5.
Configuring Oracle Coherence for deploying composites for the new server as described in Section 5.4, "Configuring Oracle Coherence for Deploying Composites."
Note:
Only the localhost field must be changed for the server. Replace the localhost with the listen address of the new server added: Dtangosol.coherence.localhost=SOAHOST1VHNn
6.
Configure the persistent store for the new server. This should be a location visible from other nodes as recommended in Section 2.3, "Shared Storage and Recommended Directory Structure." From the Administration Console, select the Server_name , and then the Services tab. Under Default Store, in Directory, enter the path to the folder where you want the default persistent store to store its data files.
7.
Disable host name verification for the new managed server. Before starting and verifying the WLS_SOAN managed server, you must disable host name verification. You can re-enable it after you have configured server certificates for the communication between the Oracle WebLogic Administration Server and the Node Manager in SOAHOSTn. If the source server from which the new one has been cloned had already disabled hostname verification, these steps are not required (the hostname verification settings is propagated to the cloned server). To disable host name verification:
a. b. c.
In the Oracle Fusion Middleware Enterprise Manager Console, select Oracle WebLogic Server Administration Console. Expand the Environment node in the Domain Structure window. Click Servers. The Summary of Servers page appears.
d.
Select WLS_SOAn in the Names column of the table. The Settings page for server appears.
e. f. g. h. 8.
Click the SSL tab. Click Advanced. Set Hostname Verification to None. Click Save.
Note:
Because this is a scale-up operation, the node should already contain a Node Manager and environment configured for server migration that includes netmask, interface, wlsifconfig script superuser privileges, and so on. The floating IP for the new SOA managed server should also be already present.
To configure server migration using the Oracle WebLogic Server Administration Console, complete these steps:
a. b.
In the Domain Structure window, expand the Environment node and then click Servers. The Summary of Servers page appears. Click the name of the server (represented as a hyperlink) in Name column of the table for which you want to configure migration. The settings page for the selected server appears. Click the Migration subtab. In the Migration Configuration section, select the servers that participate in migration in the Available window by clicking the right arrow. Select the same migration targets as for the servers that already exist on the node. For example, for new managed servers on SOAHOST1, which is already running WLS_SOA1, select SOAHOST2. For new managed servers on SOAHOST2, which is already running WLS_SOA2, select SOAHOST1.
Note:
c. d.
The appropriate resources must be available to run the managed servers concurrently during migration.
e. f. g.
Choose the Automatic Server Migration Enabled option. This enables the Node Manager to start a failed server on the target node automatically. Click Save. Restart the Administration Server, managed servers, and Node Manager. To restart the Administration Server, use the procedure in Section 4.7, "Starting the Administration Server on SOAHOST1.".
9.
Test server migration for this new server. To test migration, perform the following from the node where you added the new server:
a.
Stop the WLS_SOAn managed server. To do this, run kill -9 <pid> on the PID of the managed server. You can identify the PID of the node using ps -ef | grep WLS_SOAn.
b. c. d.
Monitor the Node Manager Console for a message indicating that WLS_ SOA1s floating IP has been disabled. Wait for the Node Manager to attempt a second restart of WLS_SOAn. Node Manager waits for a fence period of 30 seconds before trying this restart. Once Node Manager restarts the server, stop it again. The Node Manager should log a message indicating that the server will not be restarted again locally.
10-8 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
10.4.2 Scaling Out the Topology (Adding Managed Servers to New Nodes)
When you scaling out the topology, you add new managed servers configured with SOA and or WSM-PM to new nodes. Before performing the steps in this section, check that you meet these requirements: Prerequisites There must be existing nodes running managed servers configured with SOA and WSM-PM within the topology
The new node can access the existing home directories for WebLogic Server and SOA. (Use the existing installations in shared storage for creating a new WLS_SOA or WLS_WSM managed server. You do not need to install WebLogic Server or SOA binaries in a new location but you do need to run pack and unpack to bootstrap the domain configuration in the new node.) When an ORACLE_HOME or WL_HOME is shared by multiple servers in different nodes, it is recommended that you keep the Oracle Inventory and Middleware home list in those nodes updated for consistency in the installations and application of patches. To update the oraInventory in a node and "attach" an installation in a shared storage to it, use ORACLE_HOME/oui/bin/attachHome.sh. To update the Middleware home list to add or remove a WL_HOME, edit the <user_ home>/bea/beahomelist file. See the steps below.
On the new node, mount the existing FMW Home, which should include the SOA installation and the domain directory, and ensure that the new node has access to this directory, just like the rest of the nodes in the domain. To attach ORACLE_HOME in shared storage to the local Oracle Inventory, execute the following command:
SOAHOSTn>cd ORACLE_COMMON_HOME/oui/bin/attachHome.sh SOAHOSTn>./attachHome.sh -jreLoc ORACLE_BASE/fmw/jrockit_160_<version>
2.
To update the Middleware home list, create (or edit, if another WebLogic installation exists in the node) the $HOME/bea/beahomelist file and add MW_HOME to it.
3. 4. 5. 6.
Log in to the Oracle WebLogic Administration Console. Create a new machine for the new node that will be used, and add the machine to the domain. Update the machines Node Managers address to map the IP of the node that is being used for scale out. Use the Oracle WebLogic Server Administration Console to clone WLS_ SOA1/WLS_WSM1 into a new managed server. Name it WLS_SOAn/WLS_ WSM-PMn, where n is a number.
Note:
These steps assume that you are adding a new server to node n, where no managed server was running previously.
7.
Assign the host name or IP to use for the new managed server for the listen address of the managed server.
If you are planning to use server migration for this server (which Oracle recommends) this should be the VIP (also called a floating IP) for the server. This VIP should be different from the one used for the existing managed server.
8.
For WLS_WSM servers, run the Java Object Cache configuration utility again to include the new server in the JOC distributed cache as described in Section 4.17, "Configuring the Java Object Cache for Oracle WSM." Create JMS Servers for SOA, BPM, (if applicable) and UMS on the new managed server.
Note:
9.
These steps are not required for scaling out the WSM_PM managed server, only for WLS_SOA managed servers. They are not required either to scale up the BAM Web Applications system.
Use the Oracle WebLogic Server Administration Console to create a new persistent store for the new SOAJMSServer (which will be created in a later step) and name it, for example, SOAJMSFileStore_N. Specify the path for the store as recommended in Section 2.3, "Shared Storage and Recommended Directory Structure" as the directory for the JMS persistent stores:
ORACLE_BASE/admin/domain_name/cluster_name/jms/SOAJMSFileStore_N
Note:
This directory must exist before the managed server is started or the start operation will fail.
b.
Create a new JMS server for SOA, for example, SOAJMSServer_N. Use the SOAJMSFileStore_N for this JMS server. Target the SOAJMSServer_N Server to the recently created managed server (WLS_SOAn). Create a new persistence store for the new UMSJMSServer, and name it, for example, UMSJMSFileStore_N. As the directory for the persistent store, specify the path recommended in Section 2.3, "Shared Storage and Recommended Directory Structure" as the directory for the JMS persistent stores:
ORACLE_BASE/admin/domain_name/cluster_name/jms/UMSJMSFileStore _N
c.
Note:
This directory must exist before the managed server is started or the start operation will fail.
Note:
It is also possible to assign SOAJMSFileStore_N as the store for the new UMS JMS servers. For the purpose of clarity and isolation, individual persistent stores are used in the following steps.
d.
Create a new JMS server for UMS: for example, UMSJMSServer_N. Use the UMSJMSFileStore_N for this JMS server. Target the UMSJMSServer_N Server to the recently created managed server (WLS_SOAn). For BPM Systems only: Create a new persistence store for the new BPMJMSServer, for example, BPMJMSFileStore_N. Specify the path for the
e.
10-10 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
store. This should be a directory on shared storage as recommended in Section 2.3, "Shared Storage and Recommended Directory Structure." ORACLE_BASE/admin/domain_name/cluster_name/jms/BPMJMSFileStore_ N.
Note:
This directory must exist before the managed server is started or the start operation fails. You can also assign SOAJMSFileStore_N as store for the new BPM JMS Servers. For the purpose of clarity and isolation, individual persistent stores are used in the following steps.
f.
For BPM systems only: Create a new JMS Server for BPM, for example, BPMJMSServer_N. Use the BPMJMSFileStore_N for this JMSServer. Target the BPMJMSServer_N Server to the recently created Managed Server (WLS_ SOAn). Update the SubDeployment targets for the SOA JMS Module to include the recently created SOA JMS server. To do this, expand the Services node and then expand the Messaging node. Choose JMS Modules from the Domain Structure window of the Oracle WebLogic Server Administration Console. The JMS Modules page appears. Click SOAJMSModuleUDDs (represented as a hyperlink in the Names column of the table). The Settings page for SOAJMSModuleUDDs appears. Open the SubDeployments tab. The SOAJMSSubDM subdeployment appears.
Note:
g.
This subdeployment module results from updating the JMS configuration for the first two servers (WLS_SOA1 and WLS_SOA2) with the Uniform Distributed Destination Script (soa-createUDD.py), which is required for the initial EDG topology setup. Click on it. Add the new JMS server for SOA called SOAJMSServer_N to this subdeployment. Click Save.
h.
Target the UMSJMSSystemResource to the SOA_Cluster as it may have changed during extend operations. To do this, expand the Services node and then expand the Messaging node. Choose JMS Modules from the Domain Structure window of the Oracle WebLogic Server Administration Console. The JMS Modules page appears. Click UMSJMSSytemResource and open the Targets tab. Make sure all of the servers in the SOA_Cluster appear selected (including the recently cloned WLS_SOAn). Update the SubDeployment Targets for SOA, UMS and BPM JMS Modules (if applicable) to include the recently created JMS servers. To do this, expand the Services node and then expand the Messaging node. Choose JMS Modules from the Domain Structure window of the Oracle WebLogic Server Administration Console. The JMS Modules page appears. Click on the JMS module (for SOA: SOAJMSModule, for BPM: BPMJMSMOdule and for UMS: UMSSYtemResource) represented as a hyperlink in the Names column of the table. The Settings page for module appears. Open the SubDeployments tab. The subdeployment for the deployment module appears.
i.
10-11
Note:
This subdeployment module name is a random name in the form of SOAJMSServerXXXXXX, UMSJMSServerXXXXXX, or BPMJMSServerXXXXXX, resulting from the Configuration Wizard JMS configuration for the first two servers (WLS_SOA1 and WLS_ SOA2).
Click on it. Add the new JMS Server (for UMS add UMSJMSServer_N, for SOA add SOAJMSServer_N). Click Save and Activate.
10. Run the pack command on SOAHOST1 to create a template pack as follows: SOAHOST1> cd ORACLE_COMMON_HOME/common/bin SOAHOST1> ./pack.sh -managed=true -domain=ORACLE_BASE/admin/domain_ name/aserver/domain_name -template=soadomaintemplateScale.jar -template_name=soa_domain_templateScale
Run the following command on SOAHOST1 to copy the template file created to SOAHOSTN
SOAHOST1> scp soadomaintemplateScale.jar oracle@SOAHOSTN:/ ORACLE_COMMON_ HOME/common/bin
Run the unpack command on SOAHOSTN to unpack the template in the managed server domain directory as follows:
SOAHOSTN> cd ORACLE_COMMON_HOME/common/bin SOAHOSTN> ./unpack.sh -domain=ORACLE_BASE/admin/domain_name /mserver/domain_name/ -template=soadomaintemplateScale.jar -app_dir=ORACLE_BASE/admin/domain_name/mserver/apps 11. Configuring Oracle Coherence for deploying composites for the new server as
Note:
Only the localhost field needs to be changed for the server. Replace the localhost with the listen address of the new server added: Dtangosol.coherence.localhost=SOAHOST1VHNn
12. Configure the persistent store for the new server. This should be a location visible
from other nodes as recommended in Section 2.3, "Shared Storage and Recommended Directory Structure." From the Administration Console, select the Server_name, and then the Services tab. Under Default Store, in Directory, enter the path to the folder where you want the default persistent store to store its data files.
13. Disable host name verification for the new managed server. Before starting and
verifying the WLS_SOAn managed server, you must disable host name verification. You can re-enable it after you have configured server certificates for the communication between the Oracle WebLogic Administration Server and the Node Manager in SOAHOSTn.
10-12 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
If the source server from which the new one has been cloned had already disabled hostname verification, these steps are not required (the hostname verification settings is propagated to the cloned server). To disable host name verification:
a. b. c.
In the Oracle Fusion Middleware Enterprise Manager Console, select Oracle WebLogic Server Administration Console. Expand the Environment node in the Domain Structure window. Click Servers. The Summary of Servers page appears.
d.
Select WLS_SOAn in the Names column of the table. The Settings page for server appears.
e. f. g. h.
Click the SSL tab. Click Advanced. Set Hostname Verification to None. Click Save.
14. Start Node Manager on the new node. To start Node Manager, use the installation
in shared storage from the existing nodes, and start Node Manager by passing the host name of the new node as a parameter as follows:
SOAHOSTN> WL_HOME/server/bin/startNodeManager 15. Start and test the new managed server from the Oracle WebLogic Server
Administration Console.
a. b. c.
Shut down all the existing managed servers in the cluster. Ensure that the newly created managed server, WLS_SOAn, is running. Access the application on the newly created managed server (http://vip:port/soa-infra or http://vip:port/wsm-pm). The application should be functional.
Note:
Because this new node uses an existing shared storage installation, the node already is using a Node Manager and an environment configured for server migration that includes netmask, interface, wlsifconfig script superuser privileges. The floating IP for the new SOA Managed Server is already present in the new node.
Log into the Oracle WebLogic Server Administration Console and configure server migration following these steps:
a. b.
Expand the Environment node in the Domain Structure windows and then choose Servers. The Summary of Servers page appears. Select the server (represented as hyperlink) for which you want to configure migration from the Names column of the table. The Setting page for that server appears. Click the Migration tab.
c.
10-13
d.
In the Available field of the Migration Configuration section, click the right arrow to select the machines to which to allow migration.
Note:
Specify the least-loaded machine as the migration target for the new server. The required capacity planning must be completed so that this node has enough available resources to sustain an additional managed server.
e. f. g.
Select Automatic Server Migration Enabled. This enables the Node Manager to start a failed server on the target node automatically. Click Save. Restart the Administration Server, managed servers, and the Node Manager. To restart the Administration Server, use the procedure in Section 4.7, "Starting the Administration Server on SOAHOST1.".
17. Test server migration for this new server. Follow these steps from the node where
Abruptly stop the WLS_SOAn managed server by running kill -9 <pid> on the PID of the managed server. You can identify the PID of the node using ps -ef | grep WLS_SOAn. In the Node Manager Console you should see a message indicating that WLS_ SOA1's floating IP has been disabled. Wait for the Node Manager to try a second restart of WLS_SOAn. Node Manager waits for a fence period of 30 seconds before trying this restart. Once Node Manager restarts the server, stop it again. Now Node Manager should log a message indicating that the server will not be restarted again locally.
b. c. d.
MW HOME (OHS) WEBHOST1 and ORACLE_HOME/fmw WEBHOST2 MW HOME (this includes the SOA home as well) Installation-related files SOAHOST1 and MW_HOME SOAHOST2 The SOA home is also under MW_ HOME: ORACLE_HOME OraInventory, <user_home>/bea/ beahomelist, oraInst.loc, oratab
N/A
Table 102 lists the runtime artifacts to back up in the 11g SOA enterprise deployment.
10-14 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Troubleshooting
Run-Time Artifacts to Back Up in the 11g SOA Enterprise Deployment Host Location Tier Application Tier
SOAHOST1 and Find the application artifacts by viewing all of Application Application Tier the deployments through administration artifacts (EAR SOAHOST2 console and WAR files) OHS instance home Oracle RAC databases WEBHOST1 and WEBHOST2 ORACLE_BASE/admin/<instance_name> Web Tier
Data Tier
For more information on backup and recovery of Oracle Fusion Middleware components, see Oracle Fusion Middleware Administrator's Guide.
Note:
ORACLE_HOME should be backed up if any changes are made to the XEngine configuration that are part of your B2B setup. These files are located under ORACLE_HOME/soa/thirdparty/ edifecs/XEngine. To back up ORACLE_HOME, execute the following command:
10.6 Troubleshooting
This section covers the following topics:
Section 10.6.1, "Access to BAM Results in HTTP Error 404" Section 10.6.2, "Page Not Found When Accessing soa-infra Application Through Load Balancer" Section 10.6.3, "Error While Retrieving Oracle B2B Document Definitions" Section 10.6.4, "Soa-infra Application Fails to Start Due to Deployment Framework Issues (Coherence)" Section 10.6.5, "Incomplete Policy Migration After Failed Restart of SOA Server" Section 10.6.6, "SOA, BAM, or WMS Servers Fail to Start Due to Maximum Number of Processes Available in Database" Section 10.6.7, "Administration Server Fails to Start After a Manual Failover" Section 10.6.8, "Error While Activating Changes in Administration Console" Section 10.6.9, "SOA/BAM Server Not Failed Over After Server Migration" Section 10.6.10, "SOA/BAM Server Not Reachable From Browser After Server Migration" Section 10.6.11, "SOA Server Stops Responding after Being Active and Stressed for a Period of Time." Section 10.6.12, "Exceptions While Performing Deploy/Purge/Import Operations in the B2B Console." Section 10.6.13, "OAM Configuration Tool Does Not Remove URLs"
Managing the Topology 10-15
Troubleshooting
Section 10.6.14, "Redirecting of Users to Login Screen After Activating Changes in Administration Console" Section 10.6.15, "Redirecting of Users to Administration Console's Home Page After Activating Changes to OAM" Section 10.6.16, "Configured JOC Port Already in Use"
10.6.2 Page Not Found When Accessing soa-infra Application Through Load Balancer
Problem: A 404 "page not found" message is displayed in the web browser when you try to access the soa-infra application using the load balancer address. The error is intermittent and SOA Servers appear as "Running" in the WLS Administration Console. Solution: Even when the SOA managed servers may be up and running, some of the applications contained in them may be in Admin, Prepared or other states different from Active. The soa-infra application may be unavailable while the SOA server is running. Check the Deployments page in the Administration Console to verify the status of the soa-infra application. It should be in "Active" state. Check the SOA Servers output log for errors pertaining to the soa-infra application and try to start it from the Deployments page in the Administration Console.
Solution: This occurs if you do not set the frontend HTTP host and port for the Oracle WebLogic cluster where Oracle B2B resides. To eliminate this error, set the front end address for the SOA Cluster:
1. 2. 3. 4. 5.
In the WebLogic Server Administration Console, in the Change Center section, click Lock & Edit. In the left pane, choose the Environment in the Domain Structure window and then choose Clusters. The Summary of Clusters page appears. Select the WLS_SOA cluster. Select HTTP. Set the values for the following:
Frontend Host: soa.mycompany.com Frontend HTTPS Port: 443 Frontend HTTP Port: 80
10-16 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Troubleshooting
6. 7. 8.
Click Save. To activate the changes, click Activate Changes in the Change Center section of the Administration Console. Restart the servers to make the Frontend Host directive in the cluster effective.
10.6.4 Soa-infra Application Fails to Start Due to Deployment Framework Issues (Coherence)
Problem: The soa-infra application fails to start after changes to the Coherence configuration for deployment have been applied. The SOA server output log reports the following:
Cluster communication initialization failed. If you are using multicast, Please make sure multicast is enabled on your network and that there is no interference on the address in use. Please see the documentation for more details.
Solutions:
1.
When using multicast instead of unicast for cluster deployments of SOA composites, a message similar to the above may appear if a multicast conflict arises when starting the soa-infra application (that is, starting the managed server on which SOA runs). These messages, which occur when Oracle Coherence throws a runtime exception, also include the details of the exception itself. If such a message appears, check the multicast configuration in your network. Verify that you can ping multicast addresses. In addition, check for other clusters that may have the same multicast address but have a different cluster name in your network, as this may cause a conflict that prevents soa-infra from starting. If multicast is not enabled in your network, you can change the deployment framework to use unicast as described in Oracle Coherence Developer's Guide for Oracle Coherence. When entering well-known address list for unicast (in server start parameters), make sure that the nodes addresses entered for the localhost and clustered servers are correct. Error messages like:
oracle.integration.platform.blocks.deploy.CompositeDeploymentCoordinatorMessage s errorUnableToStartCoherence
2.
are reported in the servers output log if any of the addresses is not resolved correctly.
10-17
Troubleshooting
Solution: Incomplete policy migration results from an unsuccessful start of the first SOA server in a cluster. To enable full migration, edit the <jazn-policy> element the system-jazn-data.xml file to grant permission to bpm-services.jar:
<grant> <grantee> <codesource> <url>file:${oracle.home}/soa/modules/oracle.soa.workflow_11.1.1/bpmservices.jar</url> </codesource> </grantee> <permissions> <permission> <class>java.security.AllPermission</class> </permission> </permissions> </grant>
10.6.6 SOA, BAM, or WMS Servers Fail to Start Due to Maximum Number of Processes Available in Database
Problem: SOA, WSM or BAM Server fails to start. The domain has been extended for new types of managed server (for example, SOA extended for BAM) or the system has been scaled up (added new servers of the same type). The SOA/BAM or WSM Server output log reports the following:
<Warning> <JDBC> <BEA-001129> <Received exception while creating connection for pool "SOADataSource-rac0": Listener refused the connection with the following error: ORA-12516, TNS:listener could not find available handler with matching protocol stack >
Solution: Verify the number of processes in the database and adjust accordingly. As the SYS user, issue the SHOW PARAMETER command:
SQL> SHOW PARAMETER processes
The method that you use to change a parameter's value depends on whether the parameter is static or dynamic, and on whether your database uses a parameter file or a server parameter file. See the Oracle Database Administrator's Guide for details on parameter files, server parameter files, and how to change parameter values.
10-18 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Troubleshooting
Solution: When restoring a node after a node crash and using shared storage for the domain directory, you may see this error in the log for the Administration Server due to unsuccessful lock cleanup. To resolve this error, remove the file ORACLE_BASE/ admin/<domain_name>/aserver/<domain_name>/servers/AdminServer/data/ldap/ldapfiles/ EmbeddedLDAP.lok.
Solution: This may happen when start parameters are changed for a server in the Administration Console. In this case, either provide username/password information in the server start configuration in the Administration Console for the specific server whose configuration was being changed, or remove the <password-encrypted></password-encrypted> entry in the config.xml file (this requires a restart of the Administration Server).
10.6.10 SOA/BAM Server Not Reachable From Browser After Server Migration
Problem: Server migration is working (SOA/BAM Server is restarted in the failed over node) but the <Virtual Hostname>:8001/soa-infra URL is not reachable in the web browser. The server has been "killed" in its original host and Node Manager in the failover node reports that the VIP has been migrated and the server started. The VIP used by the SOA Server cannot be pinged from the clients node (that is, the node where the browser is being used).
10-19
Troubleshooting
Solution: The arping command executed by Node Mnager to update ARP caches did not broadcast the update properly. In this case, the node is not reachable to external nodes. Either update the nodemanager.properties file to include the MACBroadcast or execute a manual arping:
/sbin/arping -b -q -c 3 -A -I $INTERFACE $ADDRESS > $NullDevice 2>&1
Where $INTERFACE is the network interface where the Virtual IP is enabled and $ADDRESS is the virtual IP address.
10.6.11 SOA Server Stops Responding after Being Active and Stressed for a Period of Time
Problem: WLS_SOA starts properly and functions for a period of time, but becomes unresponsive after running an application that uses the Oracle File Adapter or Oracle FTP Adapter. The log file for the server reports the following:
<Error> <Server> <BEA-002606> <Unable to create a server socket for listening on channel "Default". The address X.X.X.X might be incorrect or another process is using port 8001: @ java.net.SocketException: Too many open files.>
Solution: For composites with Oracle File and FTP Adapters, which are designed to consume a very large number of concurrent messages, set the number of open files parameter for your operating system to a greater value. For example, to set the number of open files parameter to 8192 for Linux, use the ulimit -n 8192 command. The value must be adjusted based on the expected system's load.
10-20 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Troubleshooting
10.6.14 Redirecting of Users to Login Screen After Activating Changes in Administration Console
Problem: After configuring OHS and LBR to access the Oracle WebLogic Administration Console, some activation changes cause the redirection to the login screen for the admin console. Solution: This is the result of the console attempting to follow changes to port, channel, and security settings as a user makes these changes. For certain changes, the console may redirect to the Administration Servers listen address. Activation is completed regardless of the redirection. It is not required to log in again; users can simply update the URL to soa.mycompany.com/console/console.portal and directly access the home page for the Administration Console.
Note:
This problem will not occur if you have disabled tracking of the changes described in this section.
10.6.15 Redirecting of Users to Administration Console's Home Page After Activating Changes to OAM
Problem: After configuring OAM, some activation changes cause the redirection to the Administration Consoles home page (instead of the context menu where the activation was performed). Solution: This is expected when OAM SSO is configured and is the result of the redirections performed by the Administration Server. Activation is completed regardless of the redirection. If required, users may "manually" navigate again to the desired context menu.
Solution: Another process is using the same port that JOC is attempting to obtain. Either stop that process, or reconfigure JOC for this cluster to use another port in the recommended port range.
10-21
Best Practices
identity file is used to start the server, these new values are encrypted.
The Managed Server is trying to start for the first time, in MSI (managed server independence) mode. The Server has not been able to retrieve the appropriate configuration for the first start. The Managed Server must be able to communicate with the Administration Server on its first startup. Solution: Make sure communication between the Administration Servers listen address and the Managed Servers listen address is possible (ping the Administration Server's listen address from the Managed Server's node, and telnet to the Administration Server's listen address and port). Once communication is enabled, pack and unpack the domain again to the new node or (if other servers are already running correctly in the same domain directory), delete the OARCLE_ BASE/admin/domain_name/mserver/domain_name/servers/server_ name/data/nodemanager/ directory and restart the server.
Section 10.7.1, "Preventing Timeouts for SQLNet Connections" Section 10.7.2, "Auditing"
10.7.2 Auditing
Oracle Fusion Middleware Audit Framework is a new service in Oracle Fusion Middleware 11g, designed to provide a centralized audit framework for the middleware family of products. The framework provides audit service for platform components such as Oracle Platform Security Services (OPSS) and Oracle Web Services. It also provides a framework for JavaEE applications, starting with Oracle's own JavaEE components. JavaEE applications will be able to create application-specific audit events. For non-JavaEE Oracle components in the middleware such as C or JavaSE components, the audit framework also provides an end-to-end structure similar to that for JavaEE applications. Figure 101 is a high-level architectural diagram of the Oracle Fusion Middleware Audit Framework.
10-22 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Best Practices
The Oracle Fusion Middleware Audit Framework consists of the following key components:
Audit APIs These are APIs provided by the audit framework for any audit-aware components integrating with the Oracle Fusion Middleware Audit Framework. During runtime, applications may call these APIs where appropriate to audit the necessary information about a particular event happening in the application code. The interface allows applications to specify event details such as username and other attributes needed to provide the context of the event being audited.
Audit Events and Configuration The Oracle Fusion Middleware Audit Framework provides a set of generic events for convenient mapping to application audit events. Some of these include common events such as authentication. The framework also allows applications to define application-specific events. These event definitions and configurations are implemented as part of the audit service in Oracle Platform Security Services. Configurations can be updated through Enterprise Manager (UI) and WLST (command-line tool).
Audit Bus-stop Bus-stops are local files containing audit data before they are pushed to the audit repository. In the event where no database repository is configured, these bus-stop files can be used as a file-based audit repository. The bus-stop files are simple text files that can be queried easily to look up specific audit events. When a DB-based repository is in place, the bus-stop acts as an intermediary between the component
10-23
Best Practices
and the audit repository. The local files are periodically uploaded to the audit repository based on a configurable time interval.
Audit Loader As the name implies, audit loader loads the files from the audit bus-stop into the audit repository. In the case of platform and JavaEE application audit, the audit loader is started as part of the JavaEE container start-up. In the case of system components, the audit loader is a periodically spawned process.
Audit Repository Audit Repository contains a pre-defined Oracle Fusion Middleware Audit Framework schema, created by Repository Creation Utility (RCU). Once configured, all the audit loaders are aware of the repository and upload data to it periodically. The audit data in the audit repository is expected to be cumulative and will grow overtime. Ideally, this should not be an operational database used by any other applications - rather, it should be a standalone RDBMS used for audit purposes only. In a highly available configuration, Oracle recommends that you use an Oracle Real Application Clusters (RAC) database as the audit data store.
Oracle Business Intelligence Publisher The data in the audit repository is exposed through pre-defined reports in Oracle Business Intelligence Publisher. The reports allow users to drill down the audit data based on various criteria. For example: Username Time Range Application Type Execution Context Identifier (ECID)
For more introductory information for the Oracle Fusion Middleware Audit Framework, see the "Introduction to Oracle Fusion Middleware Audit Framework" chapter in the Oracle Fusion Middleware Security Guide. For information on how to configure the repository for Oracle Fusion Middleware Audit Framework, see the "Configuring and Managing Auditing" chapter in the Oracle Fusion Middleware Security Guide. The EDG topology does not include Oracle Fusion Middleware Audit Framework configuration. The ability to generate audit data to the bus-stop files and the configuration of the audit loader will be available once the products are installed. The main consideration is the audit database repository where the audit data is stored. Because of the volume and the historical nature of the audit data, it is strongly recommended that customers use a separate database from the operational store or stores being used for other middleware components.
10-24 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
11
11
Section 11.1, "Credential and Policy Store Configuration" Section 11.2, "Oracle Access Manager Integration" Section 11.3, "Backing Up the Installation"
Section 11.1.1, "Overview of Credential and Policy Store Configuration" Section 11.1.2, "Credential Store Configuration" Section 11.1.3, "Policy Store Configuration" Section 11.1.4, "Reassociation of Credentials and Policies"
The backend repository for the policy store and the credential store must use the same kind of LDAP server. To preserve this coherence, note that reassociating one store implies reassociating the other one, that is, the re-association of both the credential and the policy stores is accomplished as a unit using the Fusion Middleware Control or the WLST command reassociateSecurityStore. For more information, see Section 11.1.4, "Reassociation of Credentials and Policies."
11-1
Section 11.1.2.1, "Creating the LDAP Authenticator" Section 11.1.2.2, "Moving the WebLogic Administrator to LDAP" Section 11.1.2.3, "Reassociating the Domain Credential Store"
Also back up the boot.properties file for the Administration Server. To configure the credential store to use LDAP, set the proper authenticator using the WebLogic Server Console:
1. 2. 3. 4. 5. 6. 7. 8.
Log in to the WebLogic Server Console. Click the Security Realms link on the left navigational bar. Click the myrealm default realm entry to configure it. Open the Providers tab within the realm. Observe that there is a DefaultAuthenticator provider configured for the realm. Click Lock and Edit. Click the New button to add a new provider. Enter a name for the provider such as OIDAuthenticator or OVDAuthenticator depending on whether Oracle Internet Directory or Oracle Virtual Directory will be used. Select the OracleInternetDirectoryAuthenticator or OracleVirtualDirectoryAuthenticator type from the list of authenticators depending on whether Oracle Internet Directory or Oracle Virtual Directory will be used.
9.
10. Click OK. 11. In the Providers screen, click the newly created Authenticator. 12. Set the control flag to SUFFICIENT. This indicates that if a user can be
authenticated successfully by this authenticator, then it should accept that authentication and should not continue to invoke any additional authenticators. If
11-2 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
the authentication fails, it will fall through to the next authenticator in the chain. Make sure all subsequent authenticators also have their control flag set to SUFFICIENT; in particular, check the DefaultAuthenticator and set that to SUFFICIENT.
13. Click Save to save this setting. 14. Open the Provider Specific tab to enter the details for the LDAP server. 15. Enter the details specific to your LDAP server, as shown in the following table: Parameter Host Port Principal Credential SSL Enabled User Base DN Value For example: oid.mycompany.com For example: 636 For example: cn=orcladmin NA Checked For example: cn=users,dc=us,dc= mycompany,dc=com Value Description The LDAP server's server ID. The LDAP server's port number. The LDAP user DN used to connect to the LDAP server. The password used to connect to the LDAP server Specifies whether SSL protocol is used when connecting to LDAP server. Specify the DN under which your Users start.
Group Base DN For example: cn=groups,dc=us,dc =mycompany,dc=com Use Retrieved User Name as Principal Checked
11.1.2.1.1 Setting the Order of Providers Reorder the OID/OVD Authenticator and Default Authenticator and ensure that the control flag for each authenticator is set as follows:
Restart the Administration Server using the procedure in Section 4.7, "Starting the Administration Server on SOAHOST1."
Section 11.1.2.2.1, "Provisioning Admin Users and Groups in an LDAP Directory" Section 11.1.2.2.2, "Assigning the Admin Role to the Admin Group" Section 11.1.2.2.3, "Updating the boot.properties File and Restarting the System"
11-3
11.1.2.2.1 Provisioning Admin Users and Groups in an LDAP Directory As mentioned in the introduction to this section, users and groups from multiple WebLogic domains may be provisioned in a central LDAP user store. In such a case, there is a possibility that one WebLogic admin user may have access to all the domains within an enterprise. This is not a desirable situation. To avoid this, the users and groups provisioned must have a unique distinguished name within the directory tree. In this guide, the admin user and group for the SOA EDG WebLogic domain will be provisioned with the DNs below:
Follow these steps to provision the admin user and admin group in Oracle Internet Directory:
1.
Create an ldif file named admin_user.ldif with the contents shown below and then save the file:
dn: cn=weblogic_soa, cn=Users, dc=us, dc=mycompany, dc=com orclsamaccountname: weblogic_soa givenname: weblogic_soa sn: weblogic_soa userpassword: Welcome1 obver: 10.1.4.0 mail: weblogic_soa objectclass: top objectclass: person objectclass: organizationalPerson objectclass: inetorgperson objectclass: orcluser objectclass: orcluserV2 objectclass: oblixorgperson uid: weblogic_soa cn: weblogic_soa description: Admin User for the SOA Domain
2.
Run the ldapadd command located under the ORACLE_HOME/bin directory to provision the user in Oracle Internet Directory.
Note:
The ORACLE_HOME used here is the ORACLE_HOME for the Identity Management installation where Oracle Internet Directory resides. The ORACLE_HOME environment variable must be set for the ldapadd command to succeed.
For example (the command is shown as two lines in the example below for readability purposes, but you should enter the command on a single line):
OIDHOST1> ORACLE_HOME/bin/ldapadd -h oid.mycompany.com -p 389 -D cn="orcladmin" -w welcome1 -c -v -f admin_user.ldif 3.
Create an ldif file named admin_group.ldif with the contents shown below and then save the file:
dn: cn=SOA Administrators, cn=Groups, dc=us, dc=mycompany, dc=com displayname: SOA Administrators
11-4 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
objectclass: top objectclass: groupOfUniqueNames objectclass: orclGroup uniquemember: cn=weblogic_soa,cn=users,dc=us,dc=mycompany,dc=com cn: SOA Administrators description: Administrators Group for the SOA Domain 4.
Run the ldapadd command located under the ORACLE_HOME/bin/ directory to provision the group in Oracle Internet Directory (the command is shown as two lines in the example below for readability purposes, but you should enter the command on a single line):
OIDHOST1> ORACLE_HOME/bin/ldapadd -h oid.mycompany.com -p 389 -D cn="orcladmin" -w welcome1 -c -v -f admin_group.ldif
11.1.2.2.2 Assigning the Admin Role to the Admin Group After adding the users and groups to Oracle Internet Directory, the group must be assigned the Admin role within the WebLogic domain security realm. This enables all users that belong to the group to be administrators for that domain. Follow these steps to assign the Admin role to the Admin group:
1. 2. 3. 4. 5.
Log into the WebLogic Administration Server Console. In the left pane of the console, click Security Realms. On the Summary of Security Realms page, click myrealm under the Realms table. On the Settings page for myrealm, click the Roles & Policies tab. On the Realm Roles page, expand the Global Roles entry under the Roles table. This brings up the entry for Roles. Click on the Roles link to bring up the Global Roles page. On the Global Roles page, click the Admin Role to bring up the Edit Global Role page:
a. b. c.
6.
On the Edit Global Roles page, under the Role Conditions table, click the Add Conditions button. On the Choose a Predicate page, select Group from the drop down list for predicates and click Next. On the Edit Arguments Page, specify SOA Administrators in the Group Argument field and click Add.
7. 8. 9.
Click Finish to return to the Edit Global Rule page. The Role Conditions table now shows the SOA Administrators Group as an entry. Click Save to finish adding the Admin Role to the SOA Administrators Group. Administration Server Console using a web browser. Log in using the credentials for the weblogic_soa user.
10. Validate that the changes were successful by bringing up the WebLogic
11-5
Note: Each SOA application has its own predefined roles and groups defined for administration and monitoring. By default, the "Administrator" group allows these operations. However, the "Administrator" group may be too broad. For example, you may not want B2B Administrators to be Weblogic Server Domain Administrators where SOA is running. Therefore, you may wish to create a a more specific group, such as "SOA Administrators." In order for the different applications to allow the SOA Administrator group to administer the different systems, you must add the required roles to the SOA Administrator group. For example, for B2B's Administration, add the B2BAdmin role to the SOA Administrators group, for Worklistapp's administration, add the SOAAdmin role. Refer to each component's specific roles for the required roles in each case.
11.1.2.2.3 Updating the boot.properties File and Restarting the System The boot.properties file for the Administration Server should be updated with the WebLogic admin user created in Oracle Internet Directory. Follow the steps below to update the boot.properties file:
1.
2.
3.
Use a text editor to create a file called boot.properties under the security directory. Enter the following lines in the file:
username=adminUser password=adminUserPassword
4. 5.
6.
Start the Administrator Server using the procedure in Section 4.7, "Starting the Administration Server on SOAHOST1."
11-6 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Authorization and the Policy Store" chapter in the Oracle Fusion Middleware Security Guide. Oracle Fusion Middleware Security Guide.
Create an LDIF file (assumed to be jpstestnode.ldif in this example) specifying the following DN and CN entries:
dn: cn=jpsroot_soa cn: jpsroot_soa objectclass: top objectclass: OrclContainer
The distinguished name of the root node (illustrated by the string jpsroot_soa above) must be distinct from any other distinguished name. One root node can be shared by multiple WebLogic domains. It is not required that this node be created at the top level, as long as read and write access to the subtree is granted to the Oracle Internet Directory administrator.
2.
Import this data into Oracle Internet Directory server using the command ldapadd, as illustrated in the following example (the command is shown as two lines in the example below for readability purposes, but you should enter the command on a single line):
OIDHOST1> ORACLE_HOME/bin/ldapadd -h ldap_host -p ldap_port -D cn=orcladmin -w password -c -v -f jpstestnode.ldif
3.
Verify that the node has been successfully inserted using the command ldapsearch, as illustrated in the following example (the command is shown as two lines in the example below for readability purposes, but you should enter the command on a single line):
OIDHOST1> ORACLE_HOME/bin/ldapsearch -h ldap_host -p ldap_port -D cn=orcladmin -w password -b "cn=jpsroot_soa" objectclass="orclContainer"
4.
When using Oracle internet Directory as the LDAP-Based Policy Store run the utility oidstats.sql in the INFRADBHOSTs to generate database statistics for optimal database performance:
OIDHOSTn> ORACLE_HOME/ldap/admin/oidstats.sql
The oidstats.sql utility must be run just once after the initial provisioning. For details about this utility, consult the Oracle Fusion Middleware User Reference for Oracle Identity Management.
11-7
For example, the above command can be used with the following sample LDIF file to catalog the attributes createtimestamp and modifytimestamp:
dn: cn=catalogs changetype: modify add: orclindexedattribute orclindexedattribute: modifytimestamp orclindexedattribute: createtimestamp
2.
Connect to the WebLogic Administration Server using the wlst connect command shown below: Syntax:
connect('AdminUser',"AdminUserPassword",t3://hostname:port)
11-8 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
For example:
connect("weblogic","welcome1","t3://ADMINVHN:7001") 3.
For example:
wls:/SOAEDGDomain/serverConfig>reassociateSecurityStore(domain="soaedg_domain", admin="cn=orcladmin",password="welcome1",ldapurl="ldap://oid.mycompany.com:389" ,servertype="OID",jpsroot="cn=jpsroot_soa")
done.
Restart the Administration Server after the command completes successfully. To restart the Administration Server, use the procedure in Section 4.7, "Starting the Administration Server on SOAHOST1."
Note:
For credential and policy changes to take effect, the servers in the domain must be restarted.
11-9
The SOA EDG topology described in this book uses a Single Sign-On configuration where both the SOA System and the Single Sign-On System are in the same network domain (mycompany.com) For a multi-domain configuration, please refer to the required configuration steps in "Chapter 7, Configuring Single Sign-On," of the Oracle Access Manager Access Administration Guide.
A Form Authentication scheme in OAM Policies to enable authentication in WebLogic Server A WebGate entry in OAM to enable Oracle HTTP Server WebGates (from your Web Tier) to protect your configured application A Host Identifier, depending on the scenario chosen (a default host identifier would be used, if not provided) Policies to protect and unprotect application specific URLs.
Section 11.2.3.1, "Collecting the Information for the OAM Configuration Tool" Section 11.2.3.2, "Running the OAM Configuration Tool" Section 11.2.3.3, "Verifying Successful Creation of the Policy Domain and AccessGate" Section 11.2.3.4, "Updating the Host Identifier" Section 11.2.3.5, "Updating the WebGate Profile"
11-10 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Section 11.2.3.6, "Adding Additional Access Servers" Section 11.2.3.7, "Configuring Delegated Form Authentication"
Password: Create a secure password. This will be used as the password for the WebGate installation created later. LDAP Host: host name of the Directory Server or Load Balancer address in the case of an HA/EDG configuration. LDAP Port: port of the Directory Server. LDAP USER DN: DN of the LDAP admin user. This will be a value such as "cn=orcladmin." LDAP password: password of the LDAP admin user oam_aa_host: host name of an Oracle Access Manager oam_aa_port: port of the Oracle Access Manager
SOA only: $URI_LIST="/DefaultToDoTaskFlow,/integration/worklistapp, /b2b,/sdpmessaging/userprefs-ui,/em,/soa/composer,/console,/b2bconsole, /bpm/composer (For BPM systems only),/bpm/workspace (For BPM systems only)"
If BAM is installed later or other additional URLs need to be protected, the OAM configuration tool should be executed again using the same app_domain and including all the URLs that would be protected (not just the new ones).
If your command ran successfully, you should see the following output:
Processed input parameters Initialized Global Configuration Successfully completed the Create operation Operation Summary: Policy Domain: SOA_EDG Host Identifier: SOA_EDG Access Gate ID: SOA_EDG_AG
Log on to the Oracle Access Manager: http://OAMADMINHOST:<port>/access/oblix/ Click Policy Manager. Click the My Policy Domains link on the left panel, you will see a list of all policy domains, among which the domain you just created will be listed. It will have the suffix _PD (for example, SOA_EDG_PD ). In the third column (URL prefixes, you will also see the URIs you specified during the creation of this domain). Click the link to the policy domain you just created. you will land in the General area of this domain. Click the Resources tab, you will see the URIs you specified. You can also click other tabs to view other settings.
4. 5.
Verifying the AccessGate Configuration To verify the AccessGate configuration, complete these steps:
1. 2. 3. 4.
Click the Access System Console link on the top right hand side (this acts like a toggle; after you click it, it becomes the Policy Manager link). Click the Access System Configuration tab. Click the AccessGate Configuration link on the left panel. Enter SOA_EDG as the search criterion (or any other substring you may have used as the app_domain name in Section 11.2.3.2, "Running the OAM Configuration Tool"), and click Go. Once the AccessGate for the domain you just created shows up (this will have the suffix _AG (for example, SOA_EDG_AG), click it, you will see the details of the AccessGate which you just created.
5.
11-12 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Navigate to the Access System Console by specifying the following URL in your web browser:
http://hostname:port/access/oblix
where hostname refers to the host where WebPass Oracle HTTP Server instance is running and port refers to the HTTP port of the Oracle HTTP Server instance.
2. 3. 4. 5. 6. 7. 8.
When prompted for a username and password, log in as an administrator. Click OK. On the Access System main page, click the Access System Console link. On the Access System Console page, click the Access System Configuration tab. On the Access System Configuration page, click Host Identifiers at the bottom left. On the List all host identifiers page, click on the host identifier created by the OAM Configuration Tool. For example, select SOA_EDG. On the Host Identifier Details page, click Modify. On the Modifying host identifier page, add all the possible host name variations for the host. Click the plus and minus symbols to add or delete fields as necessary. The Preferred HTTP Host value used in the Access System Configuration must be added as one of the host name variations. For example: soedg_wd, webhost1.mycompany.com:7777, admin.mycompany.com:7777. Select the check box next to Update Cache and then click Save. A message box with the following message is displayed: "Updating the cache at this point will flush all the caches in the system. Are you sure?". Click OK to finish saving the configuration changes.
9.
Navigate to the Access System Console by specifying the following URL in your web browser:
http://hostname:port/access/oblix
where hostname refers to the host where WebPass Oracle HTTP Server instance is running and port refers to the HTTP port of the Oracle HTTP Server instance.
2.
On the Access System main page, click the Access System Console link, then log in as an administrator.
3.
On the Access System Console main page, click Access System Configuration, and then click the Access Gate Configuration link on the left pane to display the AccessGates Search page. Enter the proper search criteria and click Go to display a list of AccessGates. Select the AccessGate created by the OAM Configuration Tool. For example: SOA_ EDG_AG. On the AccessGate Details page, select Modify to display the Modify AccessGate page. On the Modify AccessGate page, update:
4. 5. 6. 7.
Hostname: Update the hostname with the name of the computer where WebGate is running, for example: webhost1.mycompany.com. Preferred HTTP Host: Update the Preferred_HTTP_Host with one of the hostname variations specified in the previous section, for example: admin.mycompany.com:7777. Primary HTTP Cookie Domain: Update the Primary HTTP Cookie Domain with the Domain suffix of the host identifier, for example: mycompany.com
8. 9.
Click Save. A message box with the "Are you sure you want to commit these changes?" message is displayed. Click OK to finish updating the configuration. updates were successful.
10. Verify the values displayed on the Details for AccessGate page to confirm that the
Log in as the Administrator on the Access System Console. Navigate to the Details for AccessGate page, if necessary. From the Access System Console, select Access System Configuration, then AccessGate Configuration, then the link for the WebGate (SOA_EDG_AG). On the Details for AccessGate page, click List Access Servers. A page appears showing the primary or secondary Access Servers currently configured for this WebGate. Click Add.
3. 4.
5.
On the Add a New Access Server page, select an Access Server from the Select Server list, specify Primary Server, and define two connections for the WebGate. Click the Add button to complete the association.
6. 7.
A page appears, showing the association of the Access Server with the WebGate. Click the link to display a summary and print this page for later use. Repeat steps 3 through 6 to associate more Access Servers to the WebGate.
11-14 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
2. 3. 4. 5.
In the Access System Configuration screen, select Authentication Management from the left-hand bar. Select OraDefaultFormAuthNScheme. Click Modify. In the Challenge Redirect field, enter the host and port of the IDM installation; for example: http://sso.mycompany.com.
A WebGate should already be installed in the IDM installation. Refer to Oracle Fusion Middleware Enterprise Deployment Guide for Oracle Identity Management for details.
Launch the WebGate installer (see Section 1.5.5, "What to Install" for information on where to obtain it) using the following command:
./Oracle_Access_Manager10_1_4_3_0_linux_OHS11g_WebGate gui
2. 3.
The Welcome screen is displayed. Click Next. In the Customer Information screen (Figure 111), enter the user name and user group that the web server is running as. Click Next to continue.
4.
In the installation target screen (Figure 112), specify the directory where WebGate should be installed. Click Next to continue.
5. 6.
In the installation summary screen, click Next. Download the required GCC runtime libraries for WebGate as instructed in the WebGate configuration screen (Figure 113), and use Browse to point to their location on the local computer. Click Next to continue.
7. 8.
The installer now creates the required artifacts. After that is completed, click Next to continue. In the transport security mode screen (Figure 114), select "Open Mode: No Encryption" and click Next to continue.
11-16 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
9.
In the WebGate configuration screen, provide the details of the Access Server that will be used. You must provide the following information:
WebGate ID, as provided when the OAM configuration tool was executed Password for WebGate Access Server ID, as reported by the OAM Access Server configuration Access Server host name, as reported by the OAM Access Server configuration Access Server port number, as reported by the OAM Access Server configuration
Note:
The Access Server ID, host name, and port are all required.
You can obtain these details from your Oracle Access Manager administrator. Click Next to continue.
10. In the Configure Web Server screen, click Yes to automatically update the web
containing the httpd.conf file. This file is located in the following directory:
ORACLE_BASE/admin/<OHS_Instance>/config/OHS/<OHS_ComponentName>
For example:
/u01/app/oracle/admin/ohs_instance2/config/OHS/ohs2/httpd.conf
Next to continue.
14. In the next Configure Web Server screen, the following message is displayed: "If
the web server is set up in SSL mode, then the httpd.conf file needs to be configured with the SSL related parameters. To manually tune your SSL configuration, please follow the instructions that come up". Click Next to continue.
15. In the next Configure Web Server screen, a message with the location of the
document that has information on the rest of the product setup and Web server configuration is displayed. Choose No and click Next to continue.
16. The final Configure Web Server screen appears with a message to manually launch
a browser and open the HTML document for further information on configuring your Web server. Click Next to continue.
17. The Oracle COREid Readme screen appears. Review the information on the screen
11-18 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
11.2.5 Changing the CacheControl Headers in the SOA_EDG_AG for Oracle BAM
Some Oracle BAM objects are required to be present in the browsers cache or temp folder in order to be executed. When Oracle Access Manager is used as the Single Sign-On system for Oracle BAM, the HTTP cache header for Web pages is, by default, set to "no-cache" for security reasons. This prevents Internet Explorer from properly accessing some objects, as described in this Microsoft Knowledge Base note http://support.microsoft.com/kb/316431, and can cause exceptions while clicking different menu items in Oracle BAM's console. You must change the CacheControl headers settings in the SOA_EDG_AG Access Gate to prevent these errors. To change these settings:
1.
Navigate to the Access System Console using the following URL: http://hostname:port/access/oblix Where hostname refers to the host where the WebPass Oracle HTTP Server instance is running, and port refers to the HTTP port of the Oracle HTTP Server instance.
2. 3.
On the Access System main page, click the Access System Console link, then log in as an administrator. On the Access System Console main page, click Access System Configuration, and then click the Access Gate Configuration link on the left pane to display the AccessGates Search page. Enter the proper search criteria and click Go to display a list of AccessGates. Select the AccessGate created by the Oracle Access Manager configuration tool. Click Modify at the bottom of the page. In the CachePragmaHeader and CacheControlHeader fields, replace the no-cache field with private. Click Save at the bottom of the page.
4. 5. 6. 7. 8.
Navigate to the Access System Console using the following URL: http://hostname:port/access/oblix Where the hostname refers to the host where the WebPass Oracle HTTP Server instance is running, and port refers to the HTTP port of the Oracle HTTP Server instance.
2. 3.
On the Access System main page, click the Access System Console link, and then log in as an administrator. On the Access System Console main page, click Access System Configuration, and then click the Access Gate Configuration link on the left pane to display the AccessGates Search page. Enter the proper search criteria and click Go to display a list of AccessGates. Select the AccessGate created by the Oracle Access Manager configuration tool.
4. 5.
6. 7. 8.
Click Modify at the bottom of the page. In the IPValidationException filed, enter the address of the load balancer used to front-end the deployment. Click Save at the bottom of the page.
Section 11.2.7.1, "Back Up Configuration Files" Section 11.2.7.2, "Setting Up the OAM ID Asserter" Section 11.2.7.3, "Setting the Order of Providers"
Log into Weblogic Console, if not already logged in. Navigate to SecurityRealms\<Default Realm Name>\Providers. Click New and Select "OAM Identity Asserter" from the dropdown menu. Name the asserter (for example, "OAM ID Asserter") and click Save. Click the newly added asserter to see the configuration screen for OAM Identity Asserter. Set the control flag to REQUIRED and click Save. Open the Provider Specific tab to configure the following required settings:
Primary Access Server: provide OAM server endpoint information in HOST:PORT format. AccessGate Name: name of the AccessGate (for example, SOA_EDG_AG). AccessGate Password: password for the AccessGate (optional).
8.
11-20 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
OID LDAP Authenticator (or OVD LDAP Authenticator): SUFFICIENT Default Authenticator: SUFFICIENT
b.
Back up the Middleware Home on the web tier using the following command (as root):
tar -cvpf BACKUP_LOCATION/web.tar $MW_HOME
c.
Back up the Instance Home on the web tier using the following command (as root):
tar -cvpf BACKUP_LOCATION/web_instance.tar $ORACLE_INSTANCE
d.
2.
Back up the AdminServer domain directory. Perform a backup to save your domain configuration. The configuration files all exist under the ORACLE_BASE/ admin/<domain_name> directory.
SOAHOST1> tar -cvpf edgdomainback.tar ORACLE_BASE/admin/<domain_name>
11-22 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
12
12
Miscellaneous
Section 12.1, "Recovering Failed BPEL and Mediator Instances" Section 12.2, "Configuring Web Services to Prevent Denial of Service and Recursive Node Attacks" Section 12.3, "Running the SOA Fusion Order Demo Application in an EDG Environment" Section 12.4, "Oracle Business Activity Monitoring (BAM) Configuration Properties" Section 12.5, "Using Shared Storage for Deployment Plans and SOA Infrastructure Applications Updates"
For the steps that require you to run SQL statements, you connect to the database as the soainfra schema.
To check for recoverable instances, run the following SQL statements in the database:
// Find recoverable activities SQL> select * from work_item where state = 1 and execution_type != 1; // Find recoverable invoke messages SQL> select * from dlv_message where dlv_type = 1 and state = 0; // Find recoverable callback messages SQL> select * from dlv_message where dlv_type = 2 and (state = 0 or state = 1);
To recover failed BPEL instances: In Enterprise Manager, select <domain_name>, then Fusion Middleware, then SOA, then soa-infra (server_soa), then Service Engine, then BPEL Engine, and then Recovery.
Miscellaneous 12-1
Configuring Web Services to Prevent Denial of Service and Recursive Node Attacks
In Enterprise Manager, select Mediator composite, and then Fault and Recoverable Instances.
To check data in the instance tracking table, run the following SQL query:
SQL> select ID, STATE from COMPOSITE_INSTANCE where CREATED_TIME > datetime
where datetime specifies the date and time to narrow the query. The adapter enters data into the COMPOSITE_INSTANCE table before anywhere else. When the adapter publishes data to the Adapter BC, the BC inserts an entry into the COMPOSITE_INSTANCE table with STATE as 0. After the message has been processed, the STATE becomes 1. In case of errors, STATE >= 2.
12.2 Configuring Web Services to Prevent Denial of Service and Recursive Node Attacks
Configure SCABindingProperties.xml and oracle-webservices.xml to configure Web services against denial of service attack and recursive node attack. Configuring SCABindingProperties.xml To prevent denial of service attacks and recursive node attacks, set the envelope size and nesting limits in SCABBindingProperties.xml as illustrated in Example 121.
Example 121 Configuring Envelope Size and Nesting Limits in SCABBindingProperties.xml <bindingType type="ws"> <serviceBinding> <bindingProperty> <name>request-envelope-max-kilobytes</name> <type>xs:integer</type> <defaultValue>-1</defaultValue> </bindingProperty> <bindingProperty> <name>request-envelope-nest-level</name> <type>xs:integer</type> <defaultValue>-1</defaultValue> </bindingProperty> </serviceBinding>
Configuring oracle-webservices.xml For standalone Web services, configure the envelope size and nesting limits in oracle-webservices.xml. For example:
<request-envelope-limits kilobytes="4" nest-level="6" />
Note:
Setting the envelope and nesting limits to extremely high values, or setting no values at all, can lead to denial of service attacks.
12-2 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Using Shared Storage for Deployment Plans and SOA Infrastructure Applications Updates
12.3 Running the SOA Fusion Order Demo Application in an EDG Environment
To run the Fusion Order Demo Application (FOD) in an environment described in the Enterprise Deployment Guide, you must update the FODs createJMSResources.seed file (located at ./bin/templates) by replacing the SOAJMSModule with SOAJMSModuleUDDS as the system resource name before running the ANT task that creates the JMS artifacts required for the FulFillment Mediator demo application.
12.5 Using Shared Storage for Deployment Plans and SOA Infrastructure Applications Updates
When redeploying a SOA infrastructure application or resource adapter within the SOA cluster, the deployment plan along with the application bits should be accessible to all servers in the cluster. SOA applications and resource adapters are installed using nostage deployment mode. Because the administration sever does not copy the archive files from their source location when the nostage deployment mode is selected, each server must be able to access the same deployment plan. Use ORACLE_BASE/ admin/<domain_name>/<cluster_name>/dp as the location for the deployment plan and applications, which should be accessible from all nodes in the EDG topology (as per the recommendation in Section 2.3, "Shared Storage and Recommended Directory Structure").
Miscellaneous 12-3
Using Shared Storage for Deployment Plans and SOA Infrastructure Applications Updates
12-4 Oracle Fusion Middleware Enterprise Deployment Guide for Oracle SOA Suite
Index
A
access gate, 11-12 ADCServer, 7-13 adding BAM to a domain, 7-1 adding BAM to domain extend domain to include BAM, 7-2 adding clusters, 5-6, 6-5 adding managed servers, 5-5, 6-5 adding managed servers to existing nodes, 10-4 adding managed servers to new nodes, 10-9 Administration Console frontend URL, 4-18 redirecting to home page, 10-21 redirecting to login screen, 10-21 server migration verification, 7-19, 9-7 Administration Server, 9-3 administration server, 4-9, 4-11, 4-17 failover, 4-20, 4-21 host name verification, 4-12, 4-14 restarting, 5-7 SSL communication, 8-2, 8-6 starting, 4-10 validating, 4-11 admin.mycompany.com, 2-6 application tier, 1-11 arping, 4-4 artifacts, 10-1 ASM, see Automatic Storage Management (ASM) assigning servers to clusters, 5-6, 6-5, 7-6 assigning servers to machines, 5-6, 6-6, 7-6 audit APIs, 10-23 audit bus-stops, 10-23 audit events, 10-23 Audit Framework, 10-22 audit loader, 10-24 audit repository, 10-24 auditing, 10-22 authenticators, 11-20 Automatic Storage Management (ASM), 2-2 backups, 7-2 configuration files, 11-2, 11-20 database, 2-6 domain, 5-2 enterprise deployments, 10-14 installation, 4-4, 4-22, 5-22, 6-22, 6-29, 11-21 Oracle HTTP Server, 3-4 BAM, see Oracle Business Activity Monitoring (BAM) BAMHOST nodes, 1-11, 7-11 BAMServer address, 7-13 best practices auditing, 10-22 timeouts for SQLNet connections, 10-22 boot.properties, 4-9 BPEL, 12-1 built-in security, 1-5 Business Activity Monitoring, see Oracle Business Activity Monitoring (BAM) bus-stops, 10-23
C
callback URL, 5-16, 6-16 cluster agent, 1-3 clusters, 1-2, 4-8 adding, 5-6, 6-5 assigning servers, 5-6, 6-5 BAM, 7-6 clusterware, 1-3 Coherence, see Oracle Coherence composites, 10-1 configuration ADCServer (for BAM), 7-13 BAM Web applications, 7-12 database, 2-1 delegated form authentication, 11-14 directory structure, 2-12 domain on SOAHOST1, 4-5 frontend HTTP host and port, 5-16, 6-16 high availability for Oracle File and FTP Adapters, 5-19, 6-19 load balancer, 2-7 network, 2-6 Oracle Coherence, 5-8, 6-7 Oracle HTTP Server, 4-17
B
B2B document definitions, 10-16 B2B queues, 6-9 backing up the existing installation, 6-2
Index-1
Oracle HTTP Server for BAM managed servers, 7-13 Oracle HTTP Server for WLS managed servers, 5-14 persistence store for transaction recovery, 5-18, 6-18, 7-8 scaling Oracle Database Adapter, 5-21, 6-22 security in web services, 12-2 shared JMS persistence store, 5-18, 6-18, 6-25 shared storage, 2-12, 2-18 targets for server migration, 9-5 UMS drivers, 10-3 use of custom keystores, 8-5, 8-7 WebGate, 11-15 Configuration Wizard, 4-5, 5-2 configuration wizard, running, 6-2 Configure JDBC Component Schema screen, 5-3 Configure RAC Multi Data Source Component Schema screen, 5-4, 6-5, 6-25 configure-joc.py script, 4-15 connection destination identifiers, setting, 6-9 connection factory parameters, 5-20, 6-21 CREATE_SERVICE, 2-3 creating identity keystore, 8-3, 8-7 creating trust keystore, 8-4 CUSTDBHOST nodes, 1-12, 2-2 custom keystores, 8-5, 8-7
adding BAM, 7-1 backing up, 5-2, 7-2 creating on SOAHOST1, 4-5 extend to include BAM, 7-2 extending for SOA components, 5-1, 5-2 domain configuration propagating, 4-13, 5-11, 5-13, 6-10, 6-11, 6-26, 7-10 DOMAIN directory, 2-12 domain directory, 4-11
E
enabling SOAHOST1VHN1 on SOAHOST1, 4-4 enabling VIP2, 6-2 enabling VIP3, 6-2 enterprise deployment, 1-1 backups and recoveries, 10-14 topology, 1-6 environment privileges, 9-5 extending current domain, 6-2 extending domain for SOA components, 5-1, 5-2 extending domain to include BPM, 6-1 external communication, 1-5
F
failback, 1-2 failed BPEL instance, 12-1 failed Mediator instance, 12-1 failover, 1-2, 10-19 failover of administration server, 4-20, 4-21 firewalls, 2-10 frontend HTTP host and port, 5-16, 6-16 frontend URL for Administration Console, 4-18 Fusion Middleware Audit Framework, 10-22 Fusion Middleware, see Oracle Fusion Middleware Fusion Order Demo (FOD) application, 12-3
D
data source, 9-2 data sources, 4-6 data tier, 1-12 database backing up, 2-6 and BAM, 10-16 CREATE_SERVICE, 2-3 host requirements, 2-2 initialization parameters, 2-2 loading repository, 2-4 mutex locking, 5-19, 6-19 processes, 10-18 services, 2-3 setting up, 2-1 supported versions, 2-2 database listener port, 1-12 database preconfiguration, 2-1 default persistence store for transaction recovery, 5-18, 6-18, 7-8 delegated form authentication, 11-14 demo application, running in EDG environment, 12-3 denial of services attacks in Web services preventing, 12-2 deploying composites and artifacts, 10-1 directory structure, 2-12, 2-13, 2-14, 2-17 disabling host name verification, 4-12, 4-14, 5-10, 6-9, 7-10 DMZ, 1-5, 1-10, 1-11 domain
G
generating self-signed certificates, 8-2, 8-6 grid servers, 1-1
H
hardware cluster, 1-2 hardware requirements, 1-6 high availability, 1-1, 1-6, 5-8, 6-7 Oracle File and FTP Adapters, 5-19, 6-19 home page, redirecting to, 10-21 host identifier, 11-13 host name, 5-9, 6-8 network, 1-3 physical, 1-4 virtual, 1-4 host name verification, 4-12, 4-14, 5-10, 6-9, 7-10 HTTP error 404 ("not found"), 10-16 HTTP port, 1-10 httpd.conf, 3-3, 4-17 HTTPS port, 1-10
Index-2
I
ID Asserter, 11-20 identity keystore, 8-3, 8-7 ifconfig, 4-4 incomplete policy migration, 10-17 incorrect URLs, 10-20 initialization parameters for database, 2-2 installation Oracle Fusion Middleware, 4-3 Oracle Fusion Middleware Home, 4-2 Oracle HTTP Server, 3-1 Oracle WebLogic Server, 4-2 procedure, 1-13 strategies, 1-14 WebGate, 11-15 what to install, 1-12 IPs, 2-8, 2-9
manual failover of administration server, 4-20 mapping of IPs and VIPs, 2-8, 2-9 Mediator, 12-1 Middleware home, 1-2 migration of policies, 10-17 migration of servers, see also server migration, 9-1 mod_wl_ohs.conf file, 4-17 monitoring the topology, 10-1 multi-data source, 9-2 mutex locking, 5-19, 6-19 MW_HOME, 2-12
N
names of virtual servers, 2-6 network firewalls, 2-10 IPs, 2-8 load balancers, 2-7 ports, 2-10 shared storage, 2-17 virtual IPs (VIPs), 2-8 virtual servers, 2-6 network host name, 1-3 network preconfiguration, 2-6 Node Manager, 9-3 properties file, 9-3 restarting, 5-11, 5-13 setup, 8-1 SSL communication, 8-2, 8-6 starting, 4-10, 4-14, 7-11, 8-5, 8-8 use of custom keystores, 8-5, 8-7 nodemanager.properties, 7-16 nodes adding servers to existing --, 10-4 adding servers to news --, 10-9 application tier, 1-11 BAMHOST, 1-11, 7-11 CUSTDBHOST, 1-12, 2-2 data tier, 1-12 primary, 1-3 secondary, 1-3 SOAHOST, 1-11, 4-4, 4-5, 4-9, 4-10, 4-14, 5-11, 5-13, 7-9 web tier, 1-10 WEBHOST, 1-10, 3-1
J
JDBC component schema, 5-3 JDK, 4-3 JMS persistence store, 5-18, 6-18, 6-25 JRockit, 4-3
K
keystores custom, 8-5, 8-7 identity, 8-3, 8-7 trust, 8-4 keytool utility, 8-4
L
LDAP moving WebLogic administrator to --, 11-3 leading.ddl script, 9-2 leasing table for server migration, 9-1 load balancer, 1-10, 3-3 configuration, 2-7 requirements, 1-10 locations of directories, 2-13, 2-14, 2-17 login screen, redirecting to, 10-21
M
managed servers, 4-8, 4-11 adding, 5-5, 6-5 adding to existing nodes, 10-4 adding to new nodes, 10-9 BAM, 7-13 Business Activity Monitoring (BAM), 7-5 propagating domain changes, 5-11 validation, 5-12, 5-13, 6-11, 6-12, 6-27 WLS_BAM, 7-10 WLS_SOA, 5-10, 5-12, 5-13, 6-9 WLS_WSM, 4-9, 4-12, 4-13, 4-14, 4-15, 4-17 managing the topology, 10-1 manual failover, 10-19
O
OAM, see Oracle Access Manager (OAM) OAMCFG tool, 10-20 collecting information, 11-11 overview, 11-10 running, 11-11 OAP port, 1-12 OID authenticator, 11-2 OID ports, 1-12 Oracle Access Manager, 1-10 Oracle Access Manager (OAM) delegated form authentication, 11-14
Index-3
ID Asserter, 11-20 OAMCFG tool, 11-10 order of providers, 11-20 overview, 11-10 prerequisites, 11-10 updating host identifier, 11-13 updating WebGate profile, 11-13 verifying access gate, 11-12 verifying policy domain, 11-12 WebGate, 11-15 WebLogic authenticators, 11-20 Oracle Access Protocol (OAP), 1-10 Oracle BPM, 6-1 Oracle Business Activity Monitoring (BAM), 12-3 adding to domain, 7-1 configuring ADCServer, 7-13 configuring Oracle HTTP Server, 7-13 configuring server migration for WLS_BAM servers, 7-14 configuring Web applications, 7-12 error 404 ("not found"), 10-16 extending domain to include BAM, 7-2 propagating domain configuration, 7-10 restarting administration server, 7-7 starting BAM system, 7-11 untargeting BAM server system, 7-9 validating access through Oracle HTTP Server, 6-29, 7-14 Oracle Business Intelligence Publisher, 10-24 Oracle Business Monitoring (BAM) targets, 7-9 Oracle Coherence, 5-8, 6-7, 10-17 enabling unicast communication, 5-8, 6-7 specifying host name, 5-9, 6-8 Oracle Database Adapter, scaling, 5-21, 6-22 Oracle File and FTP Adapters, 5-19, 6-19 Oracle Fusion Middleware installation, 4-3 installing Home, 4-2 installing Oracle WebLogic Server, 4-2 Oracle Fusion Middleware Audit Framework, 10-22 Oracle Fusion Middleware Configuration Wizard, 4-5 Oracle home, 1-2 Oracle HTTP Server backup, 3-4 configuration, 4-17 configuring, 6-13 configuring for BAM, 7-13 installation, 3-1 registering, 4-18 validating access, 4-19, 4-21, 5-15, 6-15, 6-29, 7-14 validation, 3-3 Oracle instance, 1-2 Oracle WebLogic Server installation, 4-2 registering Oracle HTTP Server, 4-18 Oracle WebLogic Server Administration Console, 9-2 ORACLE_BASE, 2-12
P
pack utility, 7-10 parameters for connection factory, 5-20, 6-21 performance, enterprise deployment and, 1-1 persistence store shared JMS, 5-18, 6-18, 6-25 transaction recovery, 5-18, 6-18, 7-8 physical host name, 1-4 physical IP, 1-4 policy domain, 11-12 policy migration, 10-17 ports database listener, 1-12 frontend HTTP, 5-16, 6-16 HTTP, 1-10 HTTPS, 1-10 Oracle HTTP Server, 3-1 Oracle Internet Directory (OID), 1-12 used in topology, 2-10 preconfiguration database, 2-1 directory structure, 2-12 network, 2-6 shared storage, 2-12 primary node, 1-3 PROCESSES parameter for database, 2-2, 10-18 propagating domain changes, 5-11 propagating domain configuration, 4-13, 5-13, 6-10, 6-11, 6-26, 7-10 properties file of Node Manager, 9-3 provider order for OAM, 11-20
Q
Quartz, 5-2
R
RAC database, 1-12, 4-6 RAC failover disabling retries for BAM, 12-3 RAC multi-data source component schema, 5-4, 6-5, 6-25 recovering failed BPEL and Mediator instances, 12-1 recovery of enterprise deployments, 10-14 recursive node attacks in Web services preventing, 12-2 redeploying SOA applications, 12-3 redirecting to home page, 10-21 redirecting to login screen, 10-21 reference topology, 1-6 registering Oracle HTTP Server, 4-18 Repository Creation Utility (RCU), 2-1, 2-4 requirements database host, 2-2 load balancer, 1-10
Index-4
requirements, hardware, 1-6 restarting administration server, 5-7, 7-7 restarting Node Manager, 5-11, 5-13
S
scaling Oracle Database Adapter, 5-21, 6-22 scaling out the topology, 10-9 scaling the topology topology scaling, 10-4 scaling up the topology, 10-4 screens Configure JDBC Component Schema, 5-3 Configure RAC Multi Data Source Component Schema, 5-4, 6-5, 6-25 scripts configure-joc.py, 4-15 leasing.ddl, 9-2 setNMProps.sh, 4-10, 4-14, 7-11 wlsifconfig.sh, 7-17, 9-5 secondary node, 1-3 security, 1-5 security in web services, 12-2 self-signed certificates, 8-2, 8-6 server migration, 9-1 BAM servers, 7-14 configuring targets, 9-5 creating a multi-data source, 9-2 editing Node Managers properties file, 9-3 enabling SSL communication, 9-3 leasing table, 9-1 multi-data source, 9-2 setting environment and superuser privileges, 9-5 setting up user and tablespace, 9-1 testing, 9-6 troubleshooting, 10-19 verification from Administration Console, 7-19, 9-7 servers, 4-8 assigning to clusters, 5-6, 6-5, 7-6 assigning to machines, 5-6, 6-6, 7-6 WLS_BAM, 7-14 service level agreements, 1-1 services, security in web --, 12-2 setNMProps.sh script, 4-10, 4-14, 7-11 setting up Node Manager, 8-1 setting up WebLogic authenticators, 11-20 shared JMS persistence store, 5-18, 6-18, 6-25 shared storage, 1-3, 2-12, 2-17, 12-3 configuration, 2-18 SOA application updates, 12-3 SOA Fusion Order Demo, 12-3 SOAHOST nodes, 1-11, 4-4, 4-5, 4-9, 4-10, 4-14, 5-11, 5-13, 7-9 SOAHOST1VHn virtual hosts, 5-8, 6-7 soa-infra application, 10-16, 10-17 soainternal.mycompany.com, 2-7 soa.mycomany.com, 2-6
SQLNet connections, timeouts, 10-22 SSL acceleration, 1-11 SSL communication, 8-2, 8-6, 9-3 starting administration server, 4-10 starting BAM system, 7-11 starting Node Manager, 4-10, 4-14, 7-11, 8-5, 8-8 starting WLS_SOA managed server, 5-12, 5-13 starting WLS_WSM managed server, 4-13, 4-15 staticports.ini, 3-2 storage, 2-12, 2-17 strategies for installation, 1-14 superuser privileges, 9-5 supported database versions, 2-2 switchback, 1-4 switchover, 1-4 System MBean Browser, 7-13
T
targeted applications, 5-7, 6-6, 6-25 targeting deployments, 4-9 targets for BAM, 7-9 targets for server migration, 9-5 testing of server migration, 9-6 timeouts for SQLNet connections, 10-22 topology, 1-6 application tier, 1-11 data tier, 1-12 database, 2-1 directory structure, 2-12 managing, 10-1 monitoring, 10-1 network, 2-6 scaling out, 10-9 scaling up, 10-4 shared storage, 2-12 web tier, 1-10 transaction recovery, 5-18, 6-18, 7-8 troubleshooting activating changes in Admin Server, 10-19 BAM results in 404 error, 10-16 Coherence, 10-17 deployment framework issues, 10-17 error while retrieving B2B document definitions, 10-16 incomplete policy migration, 10-17 incorrect URLs, 10-20 manual failover, 10-19 maximum number of processes in database, 10-18 redirecting to home page, 10-21 redirecting to login screen, 10-21 server migration, 10-19 SOA server stops responding, 10-20 soa-infra application, 10-16, 10-17 soa-infra application cannot be access through load balancer, 10-16 trust keystore, 8-4
Index-5
U
UMS drivers, 10-3 unicast communication, 1-12, 5-8, 6-7 unpack utility, 4-13, 5-13, 6-10, 6-11, 6-26, 7-10 untargeting BAM server system, 7-9 updating SOA applications, 12-3 updating the host identifier, 11-13 updating WebGate profile, 11-13 URL, callback, 5-16, 6-16 utils.CertGen utility, 8-2, 8-6 utils.ImportPrivateKey utility, 8-3, 8-7
disabling host name verification, 5-10, 6-9 WLS_WSM, 4-9, 4-17 disabling host name verification, 4-12, 4-14 starting, 4-13, 4-15 validating, 4-13, 4-15 wlsifconfig.sh script, 7-17, 9-5
X
XEngine, 5-13, 6-12
V
validation access through Oracle HTTP Server, 4-19, 4-21, 5-15, 6-15 access through Oracle HTTP Server (BAM), 6-29, 7-14 administration server, 4-11 Oracle HTTP Server, 3-3 server migration, 9-6 WLS_SOA managed server, 5-12, 5-13, 6-11, 6-27 WLS_SOA2 managed server, 6-12 WLS_WSM managed server, 4-13, 4-15, 5-12, 6-11, 6-27 verification of host names, 4-12, 4-14, 5-10, 6-9, 7-10 VIPs, 2-8, 2-9 enabling SOAHOST1VHN1 on SOAHOST1, 4-4 virtual host name, 1-4 virtual IP, 1-4 virtual IPs (VIPs), 2-8, 2-9 virtual server names, 2-6 virtual servers, 1-11 admin.mycompany.com, 2-6 soainternal.mycompany.com, 2-7 soa.mycompany.com, 2-6 <VirtualHost> entries in httpd.conf, 3-3, 4-17
W
Web applications for BAM, 7-12 Web services securing, 12-2 web services, 12-2 web tier, 1-10 WebGate, 1-10, 11-15 WebGate profile, 11-13 WEBHOST nodes, 1-10, 3-1 WebLogic administrator, moving to LDAP, 11-3 WebLogic authenticators, 11-20 WebLogic Configuration Wizard, 4-5 WebLogic Server home, 1-2 WebLogic Server, see Oracle WebLogic Server WL_HOME, 2-12 WLS_BAM disabling host name verification, 7-10 migration, 7-14 WLS_BAM servers, 7-14 WLS_SOA
Index-6