Deploying WebLogic Integration Solutions

     Previous  Next    Open TOC in new window  Open Index in new window  View as PDF - New Window  Get Adobe Reader - New Window
Content starts here

Configuring a Clustered Deployment

This section describes the tasks that you must perform to configure WebLogic Integration for deployment in a clustered environment.

After planning the architecture of your clustered domain, as described in Designing a Clustered Deployment, you are ready to set up WebLogic Integration in a clustered environment. To do this, you must configure a router (hardware or software), an administration server, and managed servers, and then deploy WebLogic Integration resources to the servers. The persistent configuration for a domain of WebLogic Server instances and clusters is stored in an XML configuration file (config.xml) on the administration server.

To set up and deploy WebLogic Integration in a clustered domain, complete the following steps:

For information about deploying WebLogic Integration on a single server, see Configuring a Single-Server Deployment. For a detailed list of deployment tasks associated with WebLogic Platform applications in general, see Deployment Checklist in Deploying WebLogic Platform Applications.

 


Step 1. Comply with Configuration Prerequisites

This section describes prerequisites for configuring WebLogic Integration to run in a clustered environment:

Note: In test environments, it is possible to have multiple WebLogic Server instances on a single machine. In these circumstances, you can have some WebLogic Server instances on the same node with different port numbers and some on different nodes with the same port number.

For more information about setting up clustered WebLogic Server instances, see Setting Up WebLogic Clusters in Using WebLogic Server Clusters.

 


Step 2. Prepare a WebLogic Integration Domain

When preparing a WebLogic Integration domain, you must add a definition for each managed server to the domain configuration file (config.xml), assign all managed servers to a cluster, specify the WebLogic Integration components on the servers in your domain, and so on.

To prepare a WebLogic Integration environment in a clustered domain, complete the tasks described in the following sections:

Creating a WebLogic Integration Domain Using the Configuration Wizard

You begin the definition of a clustered WebLogic Integration deployment by creating a domain using the BEA Configuration Wizard.

Note: The procedure described in this section for setting up your domain is based on the assumption that you are running the Configuration Wizard in GUI mode from the Windows Start menu. For information about using the Configuration Wizard in different modes, see Creating WebLogic Configurations Using the Configuration Wizard.

To create a WebLogic Integration domain using the Configuration Wizard, complete the following steps:

  1. From the Start Menu, choose ProgramsArrow symbolBEA WebLogic Platform 8.1Arrow symbolConfiguration Wizard.
  2. The Configuration Wizard is launched. It prompts you for data with which to configure your domain.

  3. Respond to the Configuration Wizard prompts by providing the information described in the following table.
  4. Table 4-2

    In this window . . .
    Perform the following action . . .
    Create or Extend a Configuration
    Select Create a new WebLogic configuration.
    Select a Configuration Template
    Select the Basic WebLogic Integration Domain template
    Choose Express or Custom Configuration
    Select Custom.
    Configure the Administration Server
    Select or enter the administration server machine name or IP address for the Listen address.

    Note: When you configure the administration server, we recommend that you accept the default Server Name (cgServer), as prompted by the Configuration Wizard.

    Managed Servers, Clusters, and Machine Options
    Do you want to distribute your WebLogic configuration across managed servers, clusters and physical machines? Select Yes.
    Configure Managed Servers
    Add as many managed servers as required.

    Note: If you need a http router for load balancing, add it here.

    Configure Clusters
    Add a cluster.

    Note: WebLogic Integration is intended to work with no more than one WebLogic Integration cluster per domain. The domain can also include a WebLogic Server cluster.

    Assign Servers to Clusters
    Add all of the previously created managed servers to the cluster.

    Note: If you had previously configured a managed server as an http router, do not add it to the cluster.

    Configure Machines
    Configure the type of physical machines used in the cluster.
    Assign Servers to Machines
    Assign each instance of WebLogic Server to the machine in the cluster on which it runs.
    Database (JDBC) Components
    Do you want to define JDBC components, such as Connection Pools, Data Sources, and MultiPools? Select Yes.
    Configure JDBC Connection Pools
    Configure the JDBC Connection Pools for WebLogic Integration.
    For a description of the correct JDBC settings for an XA domain, see "How Do I: Create a WebLogic Integration Domain Using Oracle with an XA Driver?" in How Do I ...? in Creating WebLogic Configurations Using the Configuration Wizard.
    You must configure cgPool for WebLogic Integration to function. If the reporting data tables are referenced through a different data store than cgPool, then you must define bpmArchPool as a valid pool and configure it as the Reporting Data DataStore in the WebLogic Integration Administration Console. These configuration changes take effect on the next start of WebLogic Server. (For information on configuring the Reporting Data DataStore in the WebLogic Integration Administration Console, see "Configuring the Archive Data Store" in System Configuration in Managing WebLogic Integration Solutions.)
    You can choose additional Connection Pools for application use.
    If you are going to define a JDBC datastore, you must define at least one non-XA JDBC connection pool. JDBC datastores work only with non-XA JDBC connection pools.

    Note: WebLogic Integration may not be certified with all drivers. For a list of certified drivers, see "Supported Databases and Drivers" in Supported Configurations for WebLogic Platform in Supported Configurations.

    Assign JDBC Connection Pools to MultiPools
    Configure any Multipools needed by the application. Multipools are not required for the operation of WebLogic Integration itself.
    Configure JDBC Data Sources
    Accept the defaults for cgDataSource and bpmArchDataSource. Add any application-specific data sources.

    Note: No more than one non-XA datasource can be used in the same transaction. Data sources cannot share an XA JDBC connection pool.

    Test JDBC Connection Pools and Setup JDBC Database
    Optional test.
    For information about loading WebLogic Integration tables in the JDBC database, see "Creating the WebLogic Integration Tables" in Configuring a Production Database in Managing WebLogic Integration Solutions.
    Messaging (JMS) Options
    Do you want to define JMS components, such as Stores, Topics, and Queues? Select Yes.

    Note: Exercise caution in changing JMS option settings. Inappropriate settings may cause your cluster to function unpredictably. For more information about setting JMS options, see "Step 7: Configure the JMS Options" in "Tutorial: Creating a Custom Domain with Managed Servers, a Cluster and Application Services" in Tutorials: Using the Configuration Wizard in Creating WebLogic Configurations Using the Configuration Wizard.

    Configure JMS Connection Factories
    Accept the defaults for cgQueue and WLI-B2B System Topic Factory.
    Configure JMS Destination Key(s)
    Configure any keys needed for the application. None are needed for the operation of WebLogic Integration.
    Configure JMS Template(s)
    Configure any templates needed for the application. None are needed for the operation of WebLogic Integration.
    Configure JMS File Stores
    Accept the defaults for rmfilestore and add any file stores needed by the application.
    Configure JMS JDBC Store
    You should see one JMS Server for the administration server and one for each of the managed servers. Select the appropriate connection pool from the list, then add any JDBC stores needed by the application.
    Configure JMS Servers
    We recommend that you use one JMS Server per server rather than creating additional servers. WebLogic Integration System Queues can be mixed with Application Queues within the same JMS Server.
    Assign JMS Servers to WebLogic Servers
    Accept the defaults.
    Configure JMS Topics
    Accept the defaults, and add any user-defined topics.
    Configure JMS Queues
    Accept the defaults, and add any user-defined queues.
    Configure JMS Distributed Topics
    Accept the defaults, and add any user-defined distributed topics.
    Configure JMS Distributed Queues
    Accept the defaults, and add any user-defined distributed queues.
    Assign JMS Distributed Destinations to Servers or Clusters
    Accept the defaults.
    Configure JMS Distributed Topic Members
    Accept the defaults. There should be members for each configured managed server.
    Configure JMS Distributed Queue Members
    Accept the defaults.
    Applications and Services Targeting Options
    Do you want to target servers and clusters onto which Applications, JMS component services, JDBC component services, and other services are deployed? Select yes.
    Target Applications to Servers or Clusters
    Click Next.
    For information on the default targets for application components, see WebLogic Integration Deployment Resources..
    Target Services to Servers or Clusters
    Accept the defaults for non-XA data sources. Configure the appropriate target for XA data sources.
    For more information, see "Creating XA Domains Using Configuration Templates" in How Do I... in Creating WebLogic Configurations Using the Configuration Wizard.
    Configure Administrative Username and Password
    Select user names and passwords.
    Configure Windows Options
    Define operating system configuration information for Windows platforms.

    Note: Windows platform users only will encounter this page while using the Configuration Wizard. Configuring Windows options is not a requirement of a cluster domain configuration.

    Configure Server Start Mode and Java SDK
    Select Production Mode, and then select either the Sun SDK or JRockit SDK.
    Note: When running WebLogic Integration in a cluster with JRockit, the JVM may report a Stack Overflow. If not addressed, the problem can eventually result in a JVM core dump. To prevent the stack overflow issue, you must set the Thread Stack Size parameter appropriately. For more information about this parameter, see "Setting the Thread Stack Size" in Tuning WebLogic JRockit JVM.
    Note: If the thread stack size has not been set, the default value depends on the threading system and the platform on which WebLogic JRockit is running:
    • 32-bit Default
      On either Windows or Linux IA32 machines, the default thread stack size values for native threads are:

      Win32: 64 kB
      Linux32: 128 kB
    • 64-bit Default
      On either Windows or Linux IA64 machines, the default thread stack size values for native threads are:

      Win64: 320 kB
      Linux64: 1 MB
    Create WebLogic Configuration
    Select the name of your custom domain.

When you complete the domain configuration using the Configuration Wizard, your new domain is created in the location you specified.

For information about configuring domains without using the Configuration Wizard, see "Tools for Configuring the Target Domain" in Creating and Configuring the WebLogic Domain in Deploying WebLogic Platform Applications.

Editing Domain Configuration Files

Two configuration files are created in your WebLogic Integration domain:

For information about specifying security features in your configuration by editing config.xml, see Adding Proxy Server or Firewall Information to your Domain Configuration. For more information about config.xml, see WebLogic Server Configuration Reference.

For information about wli-config.properties, see wli-config.properties Configuration File.

Adding Proxy Server or Firewall Information to your Domain Configuration

If you will be using a Web service behind a proxy server or firewall, you must edit the config.xml file to include information about that proxy server or firewall.

To add proxy server or firewall information to your domain configuration, complete the following steps:

  1. Open config.xml with an ASCII editor.
  2. Find the line that starts with the following tag in the config.xml file:
  3. <Cluster
  4. Add the following three attributes to the Cluster attribute list:
  5. FrontendHTTPPort="proxyPort" FrontendHTTPSPort="proxySSLPort" FrontendHost="proxyServerHost" 

    For example, the following listing is an example of a cluster address with a firewall specified in a config.xml file for a cluster named MyCluster and a proxy server named MyProxy:

    <Cluster ClusterAddress="127.0.0.1:7001,127.0.0.2:7001,127.0.0.3,127.0.0.4:7001" FrontendHTTPPort="7006" FrontendHTTPSPort="7007" FrontendHost="MyProxy" MulticastAddress="127.0.0.5" MulticastPort="7010" Name="MyCluster"/>
  6. Save your changes and close the config.xml file.

Creating the Database Tables

You create database tables in a clustered environment following the same procedure as for a single-server deployment. For information about creating the WebLogic Integration database tables, see Creating the Database Tables.

 


Step 3. Configure WebLogic Integration Security

If you want to configure SSL for your cluster, you can do so by using the WebLogic Server Administration Console. For a domain in which security functionality is deployed in a multinode cluster, you also need to configure keystores, server certificate and private key for each managed server, and so on, for every machine in a cluster. You either need to use a separate keystore for each machine or you can use a single keystore if it is available to all machines.

The security administrator also has to make sure that the contents of shared or individual keystores in a cluster is consistent. Inconsistencies can be introduced when adding new certificates, if private keys must also be added. For example, if you add certificates for remote trading partners using the WebLogic Integration Administration Console, they can optionally be imported in the identity keystore used by each managed server in a cluster. However, this mechanism is not available (for security reasons) if private keys must be inserted in these keystores.

For information about the tasks you must complete, see:

For general information about configuring security for WebLogic Platform applications, see Configuring Security in Deploying WebLogic Platform Applications.

Step 4. Start and Monitor the Managed Servers in the Domain

This section describes how to start the servers in your clustered domain:

For information concerning starting servers for WebLogic Platform applications, see "Starting the Servers" in Creating and Configuring the WebLogic Domain in Deploying WebLogic Platform Applications.

Starting the Managed Servers

To start servers in a domain for which the Node Manager is configured, complete the following procedure:

  1. If you have not done so already, start the Node Manager on each machine that hosts managed servers.
  2. For information about starting the Node Manager, see in Configuring, Starting, and Stopping Node Manager in Configuring and Managing WebLogic Server.

  3. If you have not done so already, start the WebLogic Server Administration Console.
  4. For the procedure to start the WebLogic Server Administration Console (and the administration server, if necessary), see "Starting the Administration Console" in Overview of WebLogic Server System Administration in Configuring and Managing WebLogic Server.

  5. In the WebLogic Server Administration Console navigation tree, select the name of each managed server, in turn.
  6. Select the Configuration tab, and then select the Remote Start tab. Set the properties for Node Manager to use for the managed server.
  7. For information about the setting the properties for Node Manager use, see "Configure Startup Arguments for Managed Servers" in "Starting Managed Servers from the Administration Console" in Starting and Stopping Servers in WebLogic Server Adminstration Console Online Help.

  8. Select the Control tab.
  9. Click Start this Server.
  10. For information about how the Start Server command is affected by other settings made via the WebLogic Server Administration Console, see the WebLogic Server Administration Console Online Help.

Monitoring and Shutting Down Your Servers

Once startup is complete, you can use the WebLogic Server Administration Console to verify deployments and status. For information about using WebLogic Server Administration Console to monitor your servers, see Monitoring a WebLogic Server Domain in Creating WebLogic Configurations Using the Configuration Wizard. For information about monitoring your WebLogic Integration domain, see "Run-Time Tuning Issues" in Performance Tips in the WebLogic Integration Solutions Best Practices FAQ.

Note: In cluster configurations, while running business processes or using the WebLogic Integration Administration Console, the following error message may appear in the WebLogic Server console window for the WebLogic Server that hosts the WebLogic Server Administration Console:
Note: Failed to initialize clustered process configuration backend
Note: If you encounter this problem, you must set the ClusterAddress attribute for the cluster. To learn how, see "Cluster Address" in Setting up WebLogic Clusters in Using WebLogic Server Clusters.

If you need to shut down your WebLogic Integration application, use the WebLogic Server Administration Console.

Note: It is recommended that you do not close the command window or press Ctrl+c to stop WebLogic Integration.

For the procedure to shut down your application gracefully, see "Graceful Shutdown of All Servers" and "Start/Stop a Server" in Clusters in the WebLogic Server Administration Console Online Help.

 


Step 5. Deploy a WebLogic Integration Application

Once you have configured and secured your WebLogic Integration domain, you can deploy a WebLogic Integration application to your cluster. You use the WebLogic Server Administration Console to deploy the EAR file that contains your WebLogic Integration application.

If you did not configure all the queues necessary for your application while configuring your WebLogic Integration domain as described in Creating a WebLogic Integration Domain Using the Configuration Wizard, you can configure and target them manually using the WebLogic Server Administration Console.

Note: Async request and async request error queues, as well as conversational state tables, are created automatically for applications in the WebLogic Workshop development environment. You must create these queues and tables manually for production environments. For cluster deployments, these queues should be distributed destinations with physical members on each managed server.
Note: For information on how to configure these resources, see "Adding Resources Required by the Application From the wlw-manifext.xml File" in Creating and Configuring the WebLogic Domain in Deploying WebLogic Platform Applications.

For information on how to configure JMS resources using the WebLogic Server Administration Console, see "How Do I: Deploy WebLogic Workshop Web Services to a Production Server?" in How Do I... in WebLogic Workshop Help.

Note: If your WebLogic Integration solution uses the RDBMS Event Generator, be sure to configure the redelivery settings appropriately for its queues. For the procedure to configure the redelivery settings, see RDBMS Event Generator.

For the procedure to deploy an EAR file, see "Configuring and Deploying a New Enterprise Application or Web Service" in Enterprise Applications in WebLogic Server Administration Console Online Help.

Note: You can update environment-specific information in your Application Views and adapter instances either before or after deploying your WebLogic Integration application:

For examples of automation scripts that build, configure, and deploy WebLogic Integration applications outside of an interactive console environment, see the WebLogic Integration Solution Samples and the PO Sample that is available in the BEA dev2dev Code Library at the following URL:


http://dev2dev.bea.com/code/wli.jsp
Note: Code samples and utilities are posted on dev2dev for your convenience. They are not products supported by BEA.

For a complete list of tools available to automate the application deployment process, see "Automating the Promotion Process" in Overview of WebLogic Platform Development in Deploying WebLogic Platform Applications.

 


Step 6. Update Your Domain as Your Production Environment Changes

Production environments change over time and as application use increases. This section describes how to update your domain in response to common production environment change scenarios:

For information about promoting WebLogic Platform applications from development environments to production environments, see "Steps to Promote WebLogic Platform Applications" in Overview of WebLogic Platform Development in Deploying WebLogic Platform Applications.

Adding a New Managed Server

As the use of an application grows, you may need to add new managed servers to a WebLogic Server cluster to provide extra capacity. For information about adding a new managed server to a cluster, see "Adding and Removing Servers in an Existing Domain" in Creating, Configuring, and Monitoring Servers in WebLogic Server Administration Console Online Help.

Once you have added the new managed server and started it within the cluster, you can begin to move processing responsibility onto that new server. To do this, complete the following procedure.

  1. Decide which Application Views will be targeted at the new managed server.
  2. Determine the list of adapters required to support the list of Application Views you arrived at in step 1.
  3. Using the WebLogic Server Administration Console, target the RAR component of all the adapters identified in step 2 to the new managed server. Wait for the deployment to complete.
  4. For information about targeting a RAR component, see " Connector Component-->Configuration-->General" in the WebLogic Server Administration Console Online Help.

  5. Using the WebLogic Server Administration Console, target the Application View EJBs to the new managed server. Wait for the deployment to complete.
  6. For information about targeting Application View EJBs, see "Deploying a New EJB Module" in EJB in the WebLogic Server Administration Console Online Help.

  7. Using the WebLogic Integration Administration Console, verify that the Application Views you just targeted appear in the application view list as having a Deployed status.
  8. For information about verifying Application View status, see "Listing and Viewing Application Views" in Application Integration in the Managing WebLogic Integration Solutions.

  9. If you have targeted the event connection for the Application Views to the cluster, event delivery will automatically begin from the new managed server. Otherwise, you (optionally) can specify the new managed server in the targets list for the event connection in the WebLogic Integration Administration Console on the Adapter Instance Event Connection page (Application IntegrationArrow symbolAdapter InstancesArrow symbolAdapter_Instance_IDArrow symbolEdit Event Connections).
  10. For more information about setting target lists for event connections, see "Changing Event Generation Targets" in Application Integration in the Managing WebLogic Integration Solutions.

After completing this procedure, Application View events should be coming from (if so configured) and Application View services should be invoked on the new managed server.

Changing an EIS Instance in a Cluster

The procedure for changing an EIS instance is the same in both single-server and cluster environments. For information about changing an EIS instance, see Changing an EIS Instance.

Installing a New Version of Your Application in a Cluster

The procedure for installing a new version of your application is the same in both single-server and cluster environments. For information about installing a new version of your application, see Installing a New Version of Your Application.


  Back to Top       Previous  Next