Вы находитесь на странице: 1из 87

S s

Guide

BusinessManager 6.5

Clustering

End User License Agreement


IMPORTANT! PLEASE READ CAREFULLY. This License Agreement is a legal agreement between you and Savvion for Savvion Software Product(s) purchased hereby which include computer software and may include associated media, printed materials, and online or electronic documentation. Before installing any Savvion Software Product (the Software), you should carefully read the following terms and conditions. If you do not accept the terms and conditions of this License Agreement, please do not install the Software. BY INSTALLING, COPYING, OR OTHERWISE USING THE SOFTWARE, YOU ARE CONSENTING TO BE BOUND BY AND ARE BECOMING A PARTY TO THIS AGREEMENT. REDISTRIBUTION OR RENTAL NOT PERMITTED. Software Product License. The Software is protected by copyright laws and international copyright treaties, as well as other intellectual property laws. A patent for Savvion BusinessManager (SBM) is pending. The Software is licensed, not sold. This Agreement sets forth the terms and conditions of your use of the Software. License Grant. Savvion (the Licensor) grants you (the Licensee) a non-exclusive license to use the Software. Disclaimer Of Warranty. The Software is provided on an AS IS basis, without warranty of any kind, including without limitation the warranties that the Software is free of defects, merchantable, fit for a particular purpose, or non-infringing. This disclaimer of warranty constitutes an essential part of this License Agreement. Scope Of License Grant. The Licensee may use the Software on any single computer or server, or on a network as defined under the terms of the specific Software License(s) acquired by the Licensee for each Savvion Software Product. The Licensee may not permit other individuals to use the Software except under the terms listed above. The Licensee shall not modify, translate, reverse engineer, decompile, disassemble, or remove any proprietary notices or labels on the Software. Title. Title, ownership rights, and intellectual property rights in the Software shall remain in Savvion. Permissions. No part of this publication may be stored in a retrieval system, transmitted, translated, or reproduced in any way onto any medium, including but not limited to photocopy, photograph, microfilm, magnetic or other record, without the prior agreement and written consent of Savvion. Termination. This License Agreement and the license granted hereunder will terminate automatically if you fail to comply with the limitations described herein. Upon termination, you must destroy all copies of the Software and Documentation. Export Restriction. The Licensee acknowledges that the Software hereunder shall be subject to the Export Restriction Regulations of USA. The licensee agrees not to export the Licensed Software nor knowingly provide the same to any third party who exports or re-exports the Licensed Software, in whole or in part, directly or indirectly, to countries which are subject to Export Restrictions. Disclaimer. IN NO EVENT SHALL THE LICENSOR BE LIABLE FOR INDIRECT, INCIDENTAL, SPECIAL, PUNITIVE OR CONSEQUENTIAL DAMAGES WHETHER IN AN ACTION OF CONTRACT, TORT, INCLUDING NEGLIGENCE, OR OTHERWISE, OR LOSS OF DATA, USE, REVENUE OR PROFIT WHETHER OR NOT THE PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH LIABILITY LIMITATION.

General. This Agreement represents the complete agreement concerning the License granted hereunder and may be amended only, in whole or in part, by an addendum in writing executed by duly authorized representatives of Savvion. If any provision of this Agreement is held to be unenforceable, such provision shall be removed only to the extent necessary to make it enforceable. This Agreement shall be governed by the laws of the State of California.
Third Party Software. SBM provides a modified PNGencoder from http://www.keypoint.com/. Original com.keypoint.PngEncoder is a Java class that converts Image objects to PNG byte arrays. Copyright (C) 1999 J. David Eisenberg. This library is free. You can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed for your use, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should receive a copy of the GNU Library General Public License along with this library. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. SBM includes software developed by the jfor project (http://www.jfor.org). Copyright (c) 2002 by the jfor project. All rights reserved. For more information, go to http://www.jfor.org/jfor-license.html. SBM includes a JDBC driver from Oracle for Oracle database 9i/10g. (c) Copyright 2004, Oracle Corporation. All rights reserved. Review the license terms and agreements for the JDBC driver at http://otn.oracle.com/software/tech/java/sqlj_jdbc/htdocs/jdbc9201.html. Oracle is a trademark of the Oracle Corporation. SBM includes a jConnect 5.5 driver from Sybase. Review the license terms and agreements for the driver at http://www.sybase.com. (c) Copyright 2004 Sybase Inc. SBM provides an embedded application server, evaluation version, from Pramati. Copyright 2004 Pramati Technologies. All rights reserved. Review the copyright for Pramati app server at http://www.pramati.com/. Contact Savvion, Inc. to obtain full licenses for this application server. The source code, object code, and documentation in the com.oreilly.servlet package are copyrighted and owned by Jason Hunter. Binary code of some servlets in this package is included in SBM. Copyright (c) 1998-2004 Jason Hunter. All rights reserved. Review the copyright and agreements at http://www.servlets.com/copyright.html. SBM includes software developed by the Apache Software Foundation (http://www.apache.org/) and therefore is subject to the terms of the Apache Software License, Version 1.1 (http://www.apache.org/LICENSE). SBM includes Mozilla Rhino JavaScript implementation in Java. See Mozilla Public License at http://www.mozilla.org/MPL/MPL-1.1.html. Copyright (c) 1999-2006 by Savvion Incorporated, 5104 Old Ironsides Drive, Suite 205, Santa Clara, California 95054, USA.

Table of Contents

Preface
Audience....................................................................................................................................................... 7 Information on SBM Documentation.............................................................................................................8 Conventions Used in this Manual ................................................................................................................. 9 Product Support Contact Information ........................................................................................................... 9

Chapter 1Introduction
Clustering Terminology ...............................................................................................................................10 Designing Server Clusters.......................................................................................................................... 11

Chapter 2Clustering in SBM


Whats New ................................................................................................................................................ 13 Clustering Features .................................................................................................................................... 13 Clustering SBM Servers ............................................................................................................................. 14 Load Balancing........................................................................................................................................ 14 Failover.................................................................................................................................................... 14 Vertical Clustering ................................................................................................................................... 15 Installing Applications in Clustered Environment........................................................................................ 15 BPM Portal Clustering ................................................................................................................................ 15 Using BPM Studio in Clustered Environment ............................................................................................. 16 Using Managed Adapters in Clustered Environment.................................................................................. 16

Chapter 3Using the Cluster Configuration Tool


Starting the Cluster Configuration Tool ....................................................................................................... 19 Configuration Panel................................................................................................................................. 20 Cluster Panel........................................................................................................................................... 20 Server Panel............................................................................................................................................ 21 Setting Up the Cluster ................................................................................................................................ 21 EJB Cluster ............................................................................................................................................. 21 JMS Cluster............................................................................................................................................. 23
3 CLUST-DG-6502

Web Cluster............................................................................................................................................. 24 Standalone Servers ................................................................................................................................. 26 Proxy Server............................................................................................................................................ 27 Document Server .................................................................................................................................... 28 URL for the Document Server .......................................................................................................... 28 Viewing the XML File...............................................................................................................................29 Running modifyprop Utility ...................................................................................................................... 29 Updating the JNDI Properties File...........................................................................................................29 Running the Cluster.................................................................................................................................... 29 Adding New and Recovered Nodes ...........................................................................................................30 Editing and Deleting Nodes ........................................................................................................................ 30

Chapter 4Editing the Cluster Configuration File


Understanding the Tags.............................................................................................................................. 33 General Tags ........................................................................................................................................... 33 <cluster-configuration> ..................................................................................................................... 33 <domain-name>................................................................................................................................ 33 <protocol> ......................................................................................................................................... 33 <synchronize-time> .......................................................................................................................... 33 <authentication> ...............................................................................................................................34 <multicast> ....................................................................................................................................... 34 <cluster> ........................................................................................................................................... 34 <node>.............................................................................................................................................. 34 JMS Cluster Tags .................................................................................................................................... 35 <file-store> ........................................................................................................................................ 35 <persistence> ................................................................................................................................... 35 Single Server Tags .................................................................................................................................. 36 Order of Tags........................................................................................................................................... 36 Configuring the Cluster...............................................................................................................................37 EJB Setup ............................................................................................................................................... 37 Single EJB Server............................................................................................................................. 37 EJB Cluster ....................................................................................................................................... 37 JMS Setup............................................................................................................................................... 38 Single JMS Server ............................................................................................................................ 38 JMS Cluster ...................................................................................................................................... 38 JMS Cluster Persistence .................................................................................................................. 38 Portal Setup............................................................................................................................................. 39 Single Portal Server .......................................................................................................................... 39 Web Cluster ...................................................................................................................................... 39 Proxy Server............................................................................................................................................ 39 Document Server .................................................................................................................................... 39 URL for the Document Server .......................................................................................................... 40 Setting the Cluster in Stages ...................................................................................................................... 40 EJB Cluster ............................................................................................................................................. 40 JMS Cluster............................................................................................................................................. 41 Web Cluster............................................................................................................................................. 41 Running the Cluster Setup ......................................................................................................................... 41 Cluster Setup Log File............................................................................................................................. 41 Adding New and Recovered Nodes ...........................................................................................................41
Clustering Guide 4

Database Storage of Cluster Files.............................................................................................................. 42

Chapter 5Configuring Pramati Application Server


Before Clustering........................................................................................................................................ 43 Using Ports.............................................................................................................................................. 44 Configuring Clusters ................................................................................................................................... 45 Setting up EJB Cluster ............................................................................................................................ 46 Setting up Web Cluster ........................................................................................................................... 46 Setting Up the Cluster ................................................................................................................................ 46 Setting up High Availability JMS Cluster ................................................................................................. 46 Modifying SBM Properties .......................................................................................................................... 47 Restoring Original Configuration ............................................................................................................. 47 Configuring BizPulse for Failover ............................................................................................................... 48 BizPulse Application Loading in a Cluster............................................................................................... 48 Working with the Cluster............................................................................................................................. 48 Starting the Cluster.................................................................................................................................. 49 Starting the Servers................................................................................................................................. 49 Starting the BizLogic Server.............................................................................................................. 49 Starting the BizPulse Server ............................................................................................................. 50 Stopping the Cluster ................................................................................................................................ 50 Performance Tuning ................................................................................................................................... 50

Chapter 6Configuring WebLogic Application Server


Before Clustering........................................................................................................................................ 53 Using Ports.............................................................................................................................................. 53 Configuring Clusters ................................................................................................................................... 55 Specifying Environment Variables ...........................................................................................................56 Setting up JMS Cluster............................................................................................................................ 56 JMS Cluster with Standalone EJB Server......................................................................................... 56 JMS Cluster with EJB Cluster ...........................................................................................................57 Setting up Web Cluster ........................................................................................................................... 57 Setting Up the Cluster ................................................................................................................................ 58 Modifying SBM Properties .......................................................................................................................... 58 Restoring Original Configuration ............................................................................................................. 59 Configuring BizPulse for Failover ............................................................................................................... 59 BizPulse Application Loading in a Cluster............................................................................................... 59 Working with the Cluster............................................................................................................................. 60 Starting the Cluster.................................................................................................................................. 60 Stopping the Cluster ................................................................................................................................ 61 JMS Migration in a JMS Cluster ................................................................................................................. 62 Performance Tuning ................................................................................................................................... 62

Chapter 7Configuring WebSphere Application Server


Before Clustering........................................................................................................................................ 65 Using Ports.............................................................................................................................................. 67 Configuring Clusters ................................................................................................................................... 68 Setting up EJB and Portal Clusters ......................................................................................................... 68
Clustering Guide 5

Configuring for QuickRules Support........................................................................................................ 69 Setting Up the Cluster ................................................................................................................................ 69 Configuring Portal Load Balancing.......................................................................................................... 69 Modifying SBM Properties .......................................................................................................................... 70 Configuring BizPulse for Failover ............................................................................................................... 71 BizPulse Application Loading in a Cluster............................................................................................... 71 Working with the Cluster............................................................................................................................. 71 Starting EJB and Portal Clusters ............................................................................................................. 71 Starting IBM HTTP Server ................................................................................................................ 72 Starting the BizLogic Server .................................................................................................................... 72 Starting the BizPulse Server.................................................................................................................... 72 Stopping the Cluster ................................................................................................................................ 73 Restoring Original Configuration ................................................................................................................ 73 Working with Two-Node Clusters ............................................................................................................... 74

Appendix ABizLogic Server Commands


Starting BizLogic Server Instances............................................................................................................. 76 Stopping BizLogic Server Instances ...........................................................................................................77

Appendix BBizPulse Server Commands


Starting and Stopping BizPulse Server....................................................................................................... 78 Starting and Stopping BizPulse Monitoring................................................................................................. 79

Glossary Index

Clustering Guide

Preface

This guide is part of the documentation set for Savvion BusinessManager, version 6.5 SP2.

Audience
The range of Savvion BusinessManager (SBM) modules creates the opportunity for four types of users, summarized in the following table:
Table 1 SBM User Types and Responsibilities User Type SBM User Responsibilities Responsible for carrying out specific business tasks using SBM applications. Examples include: SBM Manager An office administrator submitting an online purchase request. HR personnel scheduling interviews for a potential hire. A sales representative responding to a customer request. An engineer reviewing a trouble ticket reported by a customer.

Responsible for automating business processes in a particular business domain. BPM Portals Management module serves as the primary interface to SBM for the SBM Manager, enabling the manager to monitor, analyze, and control business processes. Also uses the Process Modeler for modeling and simulation. Responsible for creating customized applications for implementing business processes and developing interfaces associated with tasks. SBM application developers may work closely with SBM business managers to define the requirements of an application, and determine the business processes. Responsible for configuring SBM components, managing user/group profiles, and administering SBM applications and utilities.

Application Developer

SBM Administrator

Information on SBM Documentation


SBM documentation contains information for the entire range of SBM users. In the following table, we recommend the guides that are most relevant to each type of user.
Table 2 SBM Documentation If you are the SBM User Read the BPM Portal Users Guide Quick Start Guide Terminology Guide SBM Manager Tutorial Guide BPM Portal Managers Guide BPM Portal Users Guide Terminology Guide Application Developer Tutorial Guide API Reference Guide Application Developers Guide BizLogic Developers Guide BizPulse Users Guide BizSolo Users Guide BPM Portal Managers Guide BPM Portal Users Guidea BPM Studio Users Guide Clustering Guide Customization Guide Managed Adapters Guide Quick Start Guide Terminology Guide Tutorial Guide SBM Administrator Web Services Developers Guide BizPulse Users Guideb BPM Portal Administrators Guide BPM Portal Managers Guide BPM Portal Users Guide Installation Guide Managed Adapters Guide Terminology Guide Troubleshooting Guide for Administrators
a. Demonstrates how to thoroughly test SBM applications. b. Refer to the sections detailing BizPulse Admin.

Information on SBM Documentation

Conventions Used in this Manual


This document uses the following conventions and terminology notations.
Table 3 Conventions in this Manual Convention bold bold italic italic Purpose Indicates titles of command buttons, check boxes, options, lists, dialog boxes and portal page names. Represents notes that alert you on specific SBM elements and similar advisory information. Indicates directory paths, file names and book titles. Represents code segments or examples. Indicates the path in Windows environment. For UNIX environment, replace with forward slash / Represents the installation directory of SBM.

monospace
backward slash \ SBM_HOME or %SBM_HOME%

Product Support Contact Information


If the product documentation does not provide a solution to your specific issue, or if you need clarification on the issue, please contact the Savvion Product Support Team. You can contact the team through the Internet, e-mail, telephone, or by postal mail, as provided in Table 4. To enable us to quickly answer your questions, please have the following information available:

Your name, installation site address and the license key for Savvion software. Your SBM version and build number. Your operating system, application server and browser, with version and service pack details, if any. Your database management system and version, and information on JVM and JDBC used.
Table 4 Savvion BusinessManager Product Support Team Contact Information To contact by... Web Site Use... http://www.savvion.com/support/ If you are a first time user, you can send an e-mail to Product Support and request them to provide you with a user name and password to access this site. If you are already a customer, you can also access SBM discussion groups at: http://www.savvion.com/support/tsgsupport/discus/ E-mail Telephone support@savvion.com 1-877-SAVVION in the United States or 1-408-330-3000 for local calls 408-330-3111 for international calls 1-408-330-3444 for the Product Support Fax Line Postal Address Savvion BusinessManager Product Support Team 5104 Old Ironsides Drive, Suite 205 Santa Clara, CA 95054 USA

This contact information is for customer support ONLY.


9 Conventions Used in this Manual

Chapter 1

Introduction

Clustering involves grouping independent nodes together to work as a single system that allows shared processing. A cluster is a loosely coupled group of nodes collaborating to provide shared access to the services that each node hosts. To the other systems, or to the other components of the same system, the cluster appears as a single system. The objectives of clustering are:

Providing high availability by balancing resource requests. Ensuring reliability through reduced system failure, by managing failover. Offering scalability by allowing dynamic addition of resources to improve performance.
Together, a clustered system provides higher availability, increased reliability, and greater scalability than each node can provide independently.

Clustering Terminology
Some important clustering terminology is explained below. Node. Refers to the individual system that is part of a cluster. Each node in the cluster will have its own local resources. However, the cluster also has common resources, such as a common data storage. These common resources are accessible to each node in the cluster. Load Balancing. Is the ability to switch between the locations where similar requests are handled. For example, a request for a database connection might be handled on any one of four different servers in a cluster. Deciding which server handles the request depends on the load-balancing logic. Availability. Refers to the quality of the system's response to process a request, denoting the amount of time that an application or system is available to perform work. Availability is typically measured in percentage uptime. High Availability. Is defined as support to backup services in case of a system or node failure. A system with high availability uses load balancing so that all requests are routed to one or more preferred servers until one of the servers becomes unavailable, and then routed to another server that is still operational.
10

Failover. Is the ability for a request that is being serviced, to have a high availability switchover to another node without disruption of the service. A successful failover means to transfer the service without any intervention by client or manual process. Scalability. Denotes capability of a system to scale up to provide sustained system availability and throughput, without unacceptable degradation under increase in load. The increase in load could be due to increase in the number of users accessing the application, or in the volume or size of user transactions or actions. Reliability. Is the ability of a system to perform its required functions and sustain a requested service under stated conditions for a specified period of time. Horizontal Cluster. This refers to multiple installations of SBM, each hosting a cluster node, running in the same physical machine or multiple machines, but are part of the same cluster and runs homogeneously. Vertical Cluster. This refers to a single installation of SBM hosting multple cluster nodes, running in the same physical machine. A vertical cluster could be part of a horizontal cluster that is, a cluster having three nodes could have two nodes running in the same machine (vertical cluster) and the third node in a different machine (horizontal cluster). For more definitions, see the Glossary on page 80 of this guide. For a fuller listing of SBM terminology, see the Terminology Guide in the SBM_HOME\docs folder.

Designing Server Clusters


The cluster design depends on several factors such as:

Extent of high availability needs Users, and the volume of the user transactions Network design and capacity Database design and dependencies Systems management
If the load requirements are unpredictable, more servers are needed in the configuration to ensure high availability and good performance at all times. On the other hand, if the risk of failure is high, along with the possibility of multiple failures, then more servers are required to be available for failover.

Clustering Guide

11

Designing Server Clusters

The design process is explained in the following diagram.


Figure 1 Cluster Design

Clustering Guide

12

Designing Server Clusters

Chapter 2

Clustering in SBM

This chapter lists the new Clustering functions introduced in SBM 6.5 SP2, and describes the basic Clustering features.

Whats New
SBM provides the following new features for clustering:

Support for High Availability JMS with Pramati Cluster Ability to refresh configuration parameters across all nodes Support for Vertical Clustering

Clustering Features
SBM continues to support the following clustering features:

Load balancing and Failover Automatic clustering


o

XML based cluster configuring. For more information, refer to Editing the Cluster Configuration File on page 32.

Support to different application server:


o o o

Pramati WebLogic WebSphere

For more information, refer to Configuring Pramati Application Server on page 43, Configuring WebLogic Application Server on page 52, and Configuring WebSphere Application Server on page 64.
NOTE: On cluster, SBM Server as a Windows service is not supported. 13

Clustering SBM Servers


In SBM, server clustering is used for Load Balancing and for Failover. This section describes how the servers are configured. The following figure shows a setup with three nodes in a cluster.
Figure 2 Clustering SBM Servers

Load Balancing
Large-scale business solutions require that the system is scalable to meet the performance and throughput demands with increase in workload. SBM employs load balancing to meet these demands. In Figure 2, the client sees the cluster as a single SBM setup. All three nodes have a common database. The requests sent by the client are shared by the three nodes. In case of BizLogic server load balancing, a group of application server clusters work as a single system sharing the load.
Note: BizLogic/BizPulse Web Services API and Process Repository are not supported in the clustered environment.

Failover
Large organizations focus on high availability of their systems, where the system must be configurable to support backup services in case of infrastructure component failure. The setup shown in Figure 2 represents three nodes, where only one node is always active. When the active node fails, one of the remaining nodes takes over, assuring failover. BizPulse is clustered for failover to ensure high availability.
Clustering Guide 14 Clustering SBM Servers

Vertical Clustering
SBM also provides support for vertical clustering, where a single SBM installation may host more than one node. This is achieved transparently and without any parameter or configuration changes. Log information for individual nodes is recorded in separate log files. Each component log file name would be appended with _<nodeName>. For example, if the nodes in vertical cluster are node1 and node2 then, bizlogic.log would be bizlogic_node1.log and bizlogic_node2.log.

Installing Applications in Clustered Environment


For installing applications in a clustered environment, we recommend that you use BPM Studio. The BPM Studio will automatically deploy applications to every node in the cluster. For more information, see Using BPM Studio in Clustered Environment on page 16. If you want to use the BPM Portal to install applications, first you need to manually copy the application directory to the SBM directory and the application server web directory of each node in the cluster. Then you can install single or multiple applications from the BPM Portal Administration module. For example, if you want to install the Hiring application, first you need to copy the Hiring directory to SBM_HOME\ebmsapps and SBM_HOME\pramati\server\nodes\portalServer\archives\public_html\sbm\ebmsapps (in case of Pramati application server). Then you can login to the BPM Portal, go to the Administration module, and install the application Hiring.
Note: In the clustered environment, we recommend user management realms other than PAKRealm.

BPM Portal Clustering


In SBM architecture, the Web container, or the Portal server is a run-time environment for SBM, JSPs, and servlets. SBM Portal servers (Web containers), are clustered mainly for load balancing to obtain high scalability and required performance. BPM Portal clustering refers to configuring the Portal servers in a cluster for load balancing and for failover. In this configuration, a single proxy server provides the load balancing and failover. This proxy server is referred as the Web Load Balancer Node. Typically, the users from different browser instances log in to the SBM using a single URL that actually points to the proxy Portal server. The proxy server then directs the request to any node in the cluster. Hence, a physical copy of the installed SBM applications must be available in all the nodes. When you install an application in the clustered environment, it creates the application files on any one node in the cluster. You need to copy them from the node where it got installed, to all the other nodes in the cluster. After the application is copied to all the nodes, it is available in the BizLogic/BizSolo Applications list, when the request is served by any one of the nodes.
Note: You can avoid copying the files manually by using the BPM Studio. Refer to Using BPM Studio in Clustered Environment on page 16 for more information.

Clustering Guide

15

Installing Applications in Clustered Environment

In case of Balanced Scorecard Designer, the actual design is carried out from the BPM Portal, and the new application may get saved in any one node in the cluster. You must ensure that the physical copies of the application are available in all the nodes before installing the application. When you actually install the new Balanced Scorecard application, you need to copy the installed application from the node where it got installed, to all the other nodes in the cluster, similar to other BizLogic/ BizSolo applications. Similarly, publishing applications/worksteps as web services generates WSDL files on one of the nodes. You need to copy these files to all nodes to make web services run in the clustered environment.

Using BPM Studio in Clustered Environment


You can use BPM Studio to deploy an application to a cluster of machines. If, for example, you have a cluster of three machinesserver1, server2 and server3, deploy an application to this cluster by performing the following steps: 1. Navigate to the file BPMStudio_HOME\conf\DesignerDeployment.xml. 2. Edit the Deployment element by adding a Target element, as shown in the following example. <Deployment> <Target> <Label>Cluster</Label> <Description>Clustered SBM environment</Description> <Server url="http://server1.savvion.com:8181/sbm/deployment"/> <Server url="http://server2.savvion.com:8181/sbm/deployment"/> <Server url="http://server3.savvion.com:8181/sbm/deployment"/> </Target> </Deployment> If required, you can add multiple Target elements to the Deployment element. 3. Navigate to BPM Studio and click Project > Deploy, opening the Deployment Wizard (for more information, see the BPM Studio Users Guide). 4. Select Cluster (the Label in the code sample in Step 2), which is now in the Server drop-down list of available deployment targets. If you have added other Target elements to the Deployment element, the label of these targets will also appear in the Server drop-down list. 5. Deploy as usual (see the steps in the Deploying an Application on an SBM Server section in the BPM Studio Users Guide) and the application will be available on each machine in the Cluster.

Using Managed Adapters in Clustered Environment


Savvion's Managed Adapters act as a translating module that converts the SBM-specific protocol to another application-specific protocol. In SBM, a Managed Adapter is a pluggable component that connects SBM to an external system such as database and ERP system, or performs its own function of data transformation. Part of the functions related to the operation of the managed adapters (such as adapter configuration, input/ output mapping) are handled by standardized SBM components, simplifying the development process of such adapters.

Clustering Guide

16

Using BPM Studio in Clustered Environment

Currently, Savvion offers nine Managed Adapters: J-Integra Excel Adapter, Database Adapter, iWay Adapter, File Adapter, Email Adapter, FTP Adapter , JMS Adapter, QuickRules Adapter and Web Service Adapter. When using a managed adapter in a clustered environment, you must ensure that all the files required for the work of the adapter are present in all the cluster nodes. These issues are described for the various managed adapters in the following section.

A J-Integra Excel Adapter requires a temporary directory to store its work files. You can specify this
directory through the Excel Adapter Configurator (for more information, see Chapter 3 in the Managed Adapters Guide). This temporary directory must be present on all the cluster nodes.

If you configured the J-Integra Excel Adapter to use a static Workbook file (as opposed to obtaining
the Workbook from a Document dataslot), make sure the Workbook is present at the same location on all the cluster nodes.

For iWay Adapters, the SBM_HOME\Schema directory and the Dictionary file must be available on
each of the cluster nodes at the same location.

The adapter jar and other jar files that the iWay Adapter needs, must be in the server classpath for
each node in the cluster. For example, if you are using the iWay RDBMS Adapter, include the iwrdbms.jar and any related database drivers in the server classpath on all the nodes.

Clustering Guide

17

Using Managed Adapters in Clustered Environment

Chapter 3

Using the Cluster Configuration Tool

The Cluster Configuration Tool is a quick way of configuring the SBM cluster by providing the required system details and running the cluster setup directly from the Tool after it validates the settings. The cluster configuration is specified for the EJB cluster, JMS cluster, Web cluster, or any combination of these. The Cluster Configuration Tool works in environments that support graphics, and procedures for using this tool are covered in this chapter. For environments that do not support graphics, the file sbm-cluster.xml can be edited manually as described in Editing the Cluster Configuration File on page 32. The remaining chapters of this guide describe procedures for individual application servers providing advanced information, and you may require to refer to them.

18

Starting the Cluster Configuration Tool


To start the Cluster Configuration Tool, go to SBM_HOME\cluster\bin and run setupcluster.bat|sh. The following figure shows the Cluster Configuration Tool screen for a fresh SBM installation.
Figure 3 Cluster Configuration Tool Interface

In the left pane, the top node SBM Cluster Configuration displays the application server details.The Cluster Configuration Tool automatically detects and displays the application server and its relevant details. For example, the above figure shows the application server as pramati, and displays its version and protocol. If the application server is WebLogic, the tool will additionally display WebLogic domain and location. The Cluster Configuration Tool has the following tabs:

Setup: This tab shows the configuration panel, Cluster panel, and the Server panel. These are
described in detail in the following sections.

View XML: This tab displays the generated XML file after the setup configuration is verified. Run: This tab displays the log messages when the cluster is being deployed.
Depending on the selection in the left pane, the right pane displays different panels - Configuration panel, Cluster panel, and Server panel.

Clustering Guide

19

Starting the Cluster Configuration Tool

Configuration Panel
In the left pane, click the Clusters node or the Standalone Servers node. The Configuration panel is displayed in the right pane as shown in the following figure.
Figure 4 Configuration Panel

The Configuration panel displays links to the clusters or servers available as an alternative way of navigation.

Cluster Panel
In the left pane, click the Clusters node, and then click any cluster. Click any existing node, or click Add Node to display the Cluster panel in the right pane as shown in the following figure.
Figure 5 Cluster Panel

The Cluster panel displays information about the selected cluster.


Clustering Guide 20 Starting the Cluster Configuration Tool

Server Panel
In the left pane, click on the Standalone Servers node, and then click any server. The Server panel is displayed in the right pane as shown in the following figure.
Figure 6 Server Panel

The Server panel displays information about the selected server. Note that EJB, JMS and Portal (Web) servers can be standalone or in cluster. If you have chosen a cluster for any of them, then the standalone server is disabled.
Note: The document server is required in case of Web cluster.

Setting Up the Cluster


This section describes setting up the EJB, JMS, and Web clusters.

EJB Cluster
In your SBM setup, you can have either a single EJB server, or a cluster of EJB servers. To set up the EJB cluster, carry out the following steps: 1. In the left pane, under the node SBM Cluster Configuration, click Clusters.

Clustering Guide

21

Setting Up the Cluster

2. Under the Clusters node, click EJB to display the EJB cluster setup as shown in the following figure.
Figure 7 Setting EJB Cluster

3. In the Cluster panel, click Add Node to display the node information as shown in the following figure.
Figure 8 EJB Cluster- Adding node

4. Specify Name for the node, which should be unique. We recommend that you do not use the character . in the node name to avoid any cluster start problems. 5. Specify the IP Address, HTTP Port and JNDI Port on which the node listens. 6. Enter the location of SBM Home, which is the installation directory of SBM.

Clustering Guide

22

Setting Up the Cluster

7. Click Add to add the node to the EJB cluster. Click Add & Continue to add more nodes. Click Cancel to go back to the previous screen. 8. Click Save to save the configuration.

JMS Cluster
In your SBM setup, you can have either a single JMS server, or a cluster of JMS servers. To set up the JMS cluster, carry out the following steps: 1. In the left pane, under the node SBM Cluster Configuration, click Clusters. 2. Under the Clusters node, click JMS to display the JMS cluster setup as shown in the following figure.
Figure 9 Setting JMS Cluster

Clustering Guide

23

Setting Up the Cluster

3. In the Cluster panel, click Add Node to display node information as shown in the following figure.
Figure 10 JMS Cluster- Adding node

4. Specify Name for the node, which should be unique. We recommend that you do not use the character . in the node name to avoid any cluster start problems. 5. Specify the IP Address and JNDI Port on which the node listens. 6. Enter the location of SBM Home, which is the installation directory of SBM. 7. Name the Target Node. 8. Click Add to add the node to the JMS cluster. Click Add & Continue to add more nodes. Click Cancel to go back to the previous screen. 9. Click Save to save the configuration.

Web Cluster
In your SBM setup, you can have either a single Portal server, or a Web cluster of Portal servers. To set up the Web cluster carry out the following steps: 1. In the left pane, under the node SBM Cluster Configuration, click Clusters.

Clustering Guide

24

Setting Up the Cluster

2. Under the Clusters node, click Web to display the Web cluster setup as shown in the following figure.
Figure 11 Setting Web Cluster

3. In the Cluster panel, click Add Node to display node information as shown in the following figure.
Figure 12 Web Cluster- Adding node

4. Specify Name for the node, which should be unique. We recommend that you do not use the character . in the node name to avoid any cluster start problems. 5. Specify the IP Address, HTTP Port and JNDI Port on which the node listens. 6. Enter the location of SBM Home, which is the installation directory of SBM. 7. Click Add to add the node to the Web cluster. Click Add & Continue to add more nodes. Click Cancel to go back to the previous screen.
Clustering Guide 25 Setting Up the Cluster

8. Click Save to save the configuration.


Note: For Pramati Web cluster, you need to manually update the files <SBM_HOME>\pramati\server\nodes\portalServer\config\server-config.xml and <SBM_HOME>\pramati\server\nodes\portalServer\config\qos-config.xml with the port numbers specified in the file sbm-cluster.xml. For Pramati Web cluster vertical clustering is not supported.

Standalone Servers
In your SBM setup, you can have either clusters of EJB/JMS/Portal servers, or standalone single servers. The following procedure describes the configuration of the standalone servers. 1. In the left pane, under the node SBM Cluster Configuration, click Standalone Servers. 2. In the Server panel, click the server you want to configure, to display its information as shown in the following figure.
Figure 13 Setting Standalone Servers

3. Specify Name for the server, which should be unique.


NOTE:

portalServer respectively. 4. Specify other information.

The names of the Standalone EJB and Portal servers must be ejbServer and

5. Click Save to save the configuration.


Note: If a single EJB server is specified, then it uses the embedded JMS server, and an additional JMS server should not be created. SBM validates that the EJB server and JMS server are identical in name, address, and jndi-port number.

Clustering Guide

26

Setting Up the Cluster

Proxy Server
A proxy server is required with a Web cluster. When a Web cluster is set up, the external clients send their request to the proxy server. Then, it is the proxy server that routes the request to one of the servers in the Web cluster. Therefore the proxy server configuration is essential with the Web cluster. The proxy server is provided as a plugin by the application server vendor and is different for different Web servers. For installation of plugin in Web servers, refer to the vendor specific documentation. If you are using WebLogic as httpserver, then it already includes the plugin and the cluster setup utility configures the proxy server. A proxy server need not always be a new server instance. In case of WebSphere, the IBM HTTP Server is used as a proxy server. In case of Pramati and WebLogic, a new server instance is created. The following procedure describes the configuration of the Proxy server. 1. In the left pane, under the node SBM Cluster Configuration, click Standalone Servers. 2. In the Server panel, click Proxy Server to display its information as shown in the following figure.
Figure 14 Setting Proxy Server

3. Specify Name for the server, which should be unique. 4. Specify the IP Address and HTTP Port on which the server listens. 5. Click Save to save the configuration.

Clustering Guide

27

Setting Up the Cluster

Document Server
The Document server in SBM that deals with the documents related to the Document dataslots also needs to be configured. In case of the Web cluster, the documents must be stored on a shared drive so that all nodes can access this location. The document location properties are also modified in the files sbm.conf and designer.conf when the modifyprop.bat utility is run.
Note: The document server is required in case of Web cluster.

The following procedure describes the configuration of the Document server. 1. In the left pane, under the node SBM Cluster Configuration, click Standalone Servers. 2. In the Server panel, click Document Server to display its information as shown in the following figure.
Figure 15 Setting Document Server

3. Specify Name for the server, which should be unique. 4. Specify the URL and the Document Location of the server. Click Browse to search the location. 5. Click Save to save the configuration. URL for the Document Server The URL for the Document server depends on whether a single Portal server has been configured or a Web cluster. For a single Portal server, the Document server URL is the same as the URL of the single Portal server.

Clustering Guide

28

Setting Up the Cluster

For a Web cluster, if there is a drive controller in Windows using RAID controller or a shared drive on UNIX, then the document server URL can be specified as the proxy server URL. This will provide failover. SBM validates if the Document server URL is same as the Proxy server URL and also if the document location is specified for the Document server. If validation fails, an exception is thrown. The validation can be disabled by setting the system property sbm.cluster.extdocserver to True in the file SBM_HOME\cluster\conf\sbmclusterprops.xml.

Viewing the XML File


Click the View XML tab to view the saved XML file.

Running modifyprop Utility


Verify that SBM is installed on all machines, and the individual application servers are set up. You can modify the SBM configuration files appropriately using the modifyprop utility. Refer to the section, Modifying SBM Properties for individual application servers.

Updating the JNDI Properties File


After setting up the cluster, you need to manually update the property java.naming.provider.url in the file JNDIProperties.properties with the EJB cluster URL. This file needs to be updated in all the nodes of the portal cluster. This file is located in the following directories

Pramati application server:


SBM_HOME\pramati\server\nodes\portalServer\archives\public_html\quickrules-bui\WEB-INF

WebLogic application server:


BEA_HOME\user_projects\domains\%SBMDOMAIN%\applications\quickrules-bui\WEB-INF

WebSphere application server:


WEBSPHERE_HOME\AppServer\profiles\%PROFILE%\installedApps\%CELL%\quickrules_war.e ar\quickrules.war\WEB-INF WEBSPHERE_HOME\AppServer\profiles\%PROFILE%\config\cells\%CELL%\applications\quick rules_war.ear\deployments\quickrules_war\quickrules.war\WEB-INF

Running the Cluster


Click the Run tab, and click Run Setup. The trace messages are displayed. You can click Clear Messages to remove the trace messages. After clicking Run Setup, refer to the <SBM_HOME>\cluster\logs\clustersetup.log file; when you see the cluster setup completed message, you can exit the Cluster Configuration Tool.
Note: Once you have set up cluster using the Cluster Tool, you need not go through the remaining chapters of this guide.

Clustering Guide

29

Running the Cluster

Adding New and Recovered Nodes


In case of failure of any cluster node or addition of new nodes to the existing cluster, you will need to reconfigure the cluster and synchronize it with the cluster already running. Note that while reconfiguring, you need not stop the existing cluster. 1. Fix the problem on the crashed node and restart the machine. Alternately, if it is a new node, verify that SBM is installed on that machine, and the configuration files are appropriately modified using the modifyprop utility. Refer to the section, Modifying SBM Properties of the individual application server. 2. Start the application server node as required for the individual application server and verify that it is started properly. 3. From SBM_HOME\bin, run the command: addBizLogicNodes -u <user> -p <password> -nc <count> Where count is the number of new nodes to be added. This will synchronize the BizLogic server on the new node. 4. For BizPulse, when you add a new node, you need to start BizPulse monitoring on that node for failover. Refer to Starting and Stopping BizPulse Monitoring on page 79 for related procedures.
Note: BizPulse runs in a failover configuration and need not be re-synchronized.

Editing and Deleting Nodes


You can modify node configuration to accommodate system changes after the cluster configuration. 1. Click any node to display its configuration as shown in the following figure.
Figure 16 Editing Node Configuration

Clustering Guide

30

Adding New and Recovered Nodes

2. Click Edit to modify the contents as shown in the following figure.


Figure 17 Updating Node Configuration

3. Make changes as necessary. 4. Click Update to save the changes. Click Cancel to go back to the previous screen. 5. In Figure 16, click Delete to remove the node from the cluster. When the last node in a cluster is deleted, the cluster no longer exists.

Clustering Guide

31

Editing and Deleting Nodes

Chapter 4

Editing the Cluster Configuration File

The Cluster Configuration Tool works in environments that support graphics. If you are using an environment that supports graphics, we recommend you use the Cluster Configuration Tool for configuration as described in Using the Cluster Configuration Tool on page 18. For environments that do not support graphics, you can manually edit the cluster configuration file sbm-cluster.xml to provide the cluster details. The remaining chapters of this guide describe procedures for individual application servers providing advanced information, and you may require to refer to them.
Note: You can specify a custom file name to the cluster configuration file other than sbm-cluster.xml while ensuring that the file conforms to sbm-cluster.dtd. If no custom file name is specified, the default name sbm-cluster.xml is used.

The cluster configuration is specified in an XML file placed in SBM_HOME\cluster\conf. Using this configuration file, you can specify the EJB cluster, JMS cluster, Web cluster, or any combination of these. Clustering in SBM has the following common prerequisites:

Each node should have a static IP address. Standalone EJB and Portal servers must not be running. Machines and port numbers must be selected after proper planning.
For clustering with Pramati application servers, refer to Configuring Pramati Application Server on page 43. For clustering with WebLogic application servers, refer to Configuring WebLogic Application Server on page 52. For clustering with WebSphere application servers, refer to Configuring WebSphere Application Server on page 64.
32

Understanding the Tags


The different tags used in the configuration file sbm-cluster.xml are explained in the following sections.

General Tags
The configuration file uses the following general tags. <cluster-configuration> This is the main tag in the configuration file. Attributes:

appserver: This is the name of the application server. For example, Pramati. appversion: This is the version of the application server.
<domain-name> This is an optional tag for Pramati. This is a mandatory tag for WebLogic. Specify the domain name with which SBM is installed under WebLogic in the file SBM_HOME\cluster\conf\sbm-cluster.xml.
Note: The domain name is case sensitive.

Along with the domain-name, you need to specify the location, which is the absolute path of the directory under which your SBM is installed in WebLogic. For example, <domain-name location="C:\bea\user_projects\domains\sbm50">sbm50 </domain-name> <protocol> A <cluster-configuration> has a protocol that is required to communicate to the application server and create the URLs for lookup. For example t3:// for WebLogic. The protocol can be overridden for an individual <cluster> by defining it within the cluster. For example, in case of a Web cluster which uses HTTPS connection, it will look as follows: <cluster name="WebCluster" type="web"> <protocol>https://</protocol> ... This tag is optional. <synchronize-time> A <cluster-configuration> has a <synchronize-time> tag that is required for synchronizing the time of all the node machines in the cluster. In this tag, the node attribute should have the name of the node, which is taken as the reference and all the other nodes time is synchronized with the reference node.

Clustering Guide

33

Understanding the Tags

The cluster nodes are synchronized with the target node time only during the cluster setup. Any exception during the synchronization of node time will be ignored and the cluster setup will continue.
Note: This tag is supported only for Windows and Solaris operating systems.

Any errors during synchronization are ignored and the cluster setup is continued. Note that the utility does not log any errors outside its control. You can also use third-party tools for synchronizing time. <authentication> A <cluster-configuration> has an <authentication> tag that provides the user name and password to connect to the application server for the cluster setup. The user name and password should have administration rights. For example, system/wlsysadmin can be used for WebLogic and root/pramati can be used for Pramati. <multicast> IP multicast is a simple broadcast technology that enables multiple applications to "subscribe" to a given IP address and port number and listen for messages. A multicast address is an IP address in the range from 224.0.0.0 to 239.255.255.255. The cluster requires a <multicast> tag for WebLogic that corresponds to the multicast address. It has a port attribute that has the multicast port number.
Note: The multicast address or port should be different for each application cluster. An Application cluster may include EJB cluster, JMS cluster and Web cluster types. This is important if more than one application cluster runs in the same intranet.

<cluster> A <cluster-configuration> can have multiple <cluster> tags corresponding to each cluster to be set up, for example, one for EJB cluster, one for JMS cluster and one for Web cluster. There could be only one cluster defined for a type. Each cluster will have more than one node defined under the <nodes> tag. The <nodes> tag has as many <node> tags as the number of nodes in the cluster. Attributes:

name: This is the unique name of the cluster.


NOTE: Cluster name should not contain spaces or special characters that are not allowed by the underlying operating system.

type: This is the type of cluster. Valid types are ejb, jms and web.
<node> This represents a node in the cluster. It has a single attribute:

name: The unique name of the node. It may be same as the host name, or different from the host
name.

Clustering Guide

34

Understanding the Tags

A node is characterized by the following:

<address>: This is the IP address of the node or its host name. <jndi-port>: This is the JNDI port on which the node listens. Normally the naming service runs on
this port. This tag is valid for EJB, JMS and WEB nodes.

<http-port>: This is the HTTP port on which the node listens. This tag is valid for EJB, WEB and
PROXY server.

<sbm-home>: This is the location where SBM is installed in the cluster nodes.
The cluster utility creates a server instance for each node with the server name as the node name. For example, in case of WebLogic, two servers will be created with the name ejb1 and ejb2 for the following configuration: <cluster name="ejb_cluster" type="ejb" > <nodes> <node name="ejb1"> . . . </node> <node name="ejb2"> . . . </node> </nodes> </cluster>

Note:

We recommend that you do not use the character . in the node name to avoid any cluster start problems.

JMS Cluster Tags


The JMS cluster can have either file store or the database store for persistence. Depending on the store, different tags need to be defined. <file-store> In case of file store, a <file-store> tag needs to be defined for each node in the JMS cluster. This will have the absolute path of the file to be used as the store. In case of file store, if one node of the JMS cluster goes down, then the migration of messages has to be done manually. <persistence> This tag is used for the JMS cluster setup if the cluster uses database store. Application servers such as Pramati also require persistence for all clusters. Persistence is characterized by the following:

<url>: The database URL. <driver>: The fully qualified class name of the database driver. <user>: Database user name.
Clustering Guide 35 Understanding the Tags

<password>: The password for the above user. <provider>: The database used: for example, oracle, db2. <databasename>: Name of the database: for example, db2. <connection-pool-name>: Name of the connection pool defined in the appserver, required only for
WebLogic JMS cluster database persistence. For application servers like Pramati, if all the clusters (EJB, JMS and Web) use the same database, then similar persistence information needs to be replicated for each cluster. But keeping the persistence with each cluster provides the flexibility to have a different database or the same database but different users for different clusters. For example, the JMS and EJB clusters might use different databases.

Single Server Tags


You may have to set up an EJB cluster, but not JMS cluster and Web cluster. In this scenario, the single servers can be defined in the configuration file as <jmsserver> and <portalserver> respectively for JMS and Portal single server. Both of them have a name attribute that is the unique name for the server. They also have the elements <address>, <jndi-port>, and <http-port> for the IP address/host name and the port on which the server listens. While using a single server, the name of the server should be as follows:

For JMS server: jmsServer For Portal server: portalServer For Admin server: adminServer
Note that adminServer, ejbServer, and portalServer should be valid active server instances which should already exist before the cluster setup is started. Also note that jmsServer and documentServer are the logical references pointing to a valid active WebLogic server instance. The proxyServer is a server instance created by the cluster utility. The port specified for proxyServer should be unique; that is, it should not conflict with any of the running servers ports in the cluster.
Note: For a particular type (JMS/Web) there can either be a single server or a cluster, however, both single server and cluster for the same type cannot exist together.

Order of Tags
Ensure that the order of tags in the file sbm-cluster.xml is the same as defined in the file sbm-cluster.dtd. If the sequence is not the same as defined in the DTD file, then while starting the cluster setup, you will get the following exception: java.io.IOException: IO error: The content of element type "cluster-configuration" must match "(domain-name?,protocol?,synchronize-time?,authentication?,multicas t?,cluster+,adminserver?,proxyserver?,documentserver?,ejbserver?,po rtalserver?,jmsserver?,deploy?)"
Clustering Guide 36 Understanding the Tags

The order of the elements as defined in the DTD file is as follows: <!ELEMENT cluster-configuration (domain-name?, protocol?, synchronize-time?, authentication?, multicast?, cluster+, adminserver?, proxyserver?, documentserver?, ejbserver?,portalserver?, jmsserver?, deploy?)> If you want to set up both EJB and JMS clusters, then definitions of both the clusters should come at the top after the multicast element.

Configuring the Cluster


This section lists information needed for different cluster setups.

EJB Setup
In your SBM setup, you can have either a single EJB server, or a cluster of EJB servers.
Note: If a single EJB server is specified, then it uses the embedded JMS server, and an additional JMS server should not be created. SBM validates that the EJB server and JMS server are identical in name, address, and jndi-port number.

Single EJB Server Single EJB server is specified with the help of the <ejbserver> element. The name attribute holds the unique name of the EJB server. The IP address and the port on which the server listens are specified with the help of the <address> and <jndi-port> elements under the <ejbserver>.
Note: If a single EJB server is specified, then an EJB cluster cannot be specified and vice versa.

EJB Cluster For an EJB cluster, you need to provide the following information:

The name attribute of <cluster> element should contain a unique name for the EJB cluster. The type attribute of the <cluster> element should be "ejb". For each ejb node in the cluster, specify a <node> element under the <nodes> in <cluster>. The name attribute of the <node> will contain the unique name of the ejb node. The IP address of
the EJB node and the port on which it listens are specified with the <address> and <jndi-port> elements under the <node>.
Note: For any validation related to the EJB cluster, SBM refers to the attribute if-cluster-type in the file SBM_HOME\cluster\conf\sbm-properties.xml.

Clustering Guide

37

Configuring the Cluster

JMS Setup
In your SBM setup, you can have either a single JMS server, or a cluster of JMS servers.
Note: If a single EJB server is specified, then it uses the embedded JMS server, and an additional JMS server should not be created. SBM validates that the EJB server and JMS server are identical in name, address, and jndi-port number.

Single JMS Server Single JMS server is specified with the help of the <jmsserver> element. The name attribute holds the unique name of the JMS server. The IP address and the port on which the server listens are specified with the help of the <address> and <jndi-port> elements under the <jmsserver>.
Note: If a single JMS server is specified, then a JMS cluster cannot be specified and vice versa.

JMS Cluster For a JMS cluster, you need to provide the following information:

The name attribute of <cluster> element should contain a unique name for the JMS cluster. The type attribute of the <cluster> element should be "jms". The store attribute of the <cluster> element should be "db" for database persistence or "file" for file
persistence.

For each JMS server in the cluster, specify a <node> element under the <nodes> in <cluster>. The name attribute of the <node> will contain the unique name of the JMS server. The IP address of
the JMS server and the port on which it listens have to be specified with the <address> and <jndi-port> elements under the <node>.

The target of the JMS server specified under <target-node> should be any server instance. The tag
<target-node> is required only for WebLogic JMS cluster.

If file persistence is used, then a <file-store> is to be specified under each <node> that will contain
the absolute path to the file that is to be used as the store.

If database persistence is used, then a single <persistence> tag needs to be defined under the
<cluster>. JMS Cluster Persistence The persistence properties are defined with the help of <persistence> element under the <cluster> element. You need to provide the values for the provider, url, driver, user name, password and name of the connection pool such as SBMCommonDBPool.

Clustering Guide

38

Configuring the Cluster

Portal Setup
In your SBM setup, you can have either a single Portal server, or a Web cluster of Portal servers. Single Portal Server A single Portal server is specified with the help of the <portalserver> element. The name attribute holds the unique name of the Portal server. The IP address and the port on which the server listens are specified with the help of the <address> and <http-port> elements under the <portalserver>.
Note: If a single Portal server is specified, then a Web cluster cannot be specified and vice versa.

Web Cluster For a Web cluster, you need to provide the following information:

The name attribute of <cluster> element should hold a unique name for the Web cluster. The type attribute of the <cluster> element should be "web". For each Web server in the cluster, specify a <node> element under the <nodes> in <cluster>. The name attribute of the <node> will contain the unique name of the Web server. The IP address of
the Web server and the port on which it listens have to be specified with the <address> and <http-port> elements under the <node>.

Proxy Server
A proxy server is required with a Web cluster. When a Web cluster is set up, the external clients have to send their request to the proxy server only. Then, it is the proxy server that routes the request to one of the servers in the Web cluster. Therefore the proxy server is essential with the Web cluster. A proxy server is specified with the help of the <proxyserver> element. The name attribute holds the unique name of the proxy server. The IP address and the port on which the server listens, are specified with the help of the <address> and <http-port> elements under the <proxyserver>. The proxy server is provided as a plugin by the appserver vendor and is different for different Web servers. If you are using WebLogic as httpserver, then it already includes the plugin and the cluster setup utility configures the proxy server. A proxy server need not be a new server instance. In case of WebSphere, the IBM HTTP Server is used as a proxy server. In case of Pramati and WebLogic, a new server instance is created. For installation of plugin in Web servers, refer to the vendor specific documentation. The values for the <address> tag under <proxyserver> tag should be of the server where you installed the plugin.

Document Server
The Document server in SBM that deals with the documents related to the Document dataslots also needs to be configured in the configuration file. This can be done with the help of the <documentserver> element under <cluster-configuration>. The <documentserver> element has a name attribute that is the unique name of the document server. It consists of the elements: <doc-location> and <url>.

Clustering Guide

39

Configuring the Cluster

The <documentserver> element is mandatory for the Web cluster. The documents must be stored on a shared drive so that all nodes can access this location. The <doc-location> element specifies the exact location of the documents directory used for storing the document dataslot contents. This element is optional. The document location properties can also be modified in the files sbm.conf and designer.conf when the modifyprop.bat | sh utility is run. In this case, the <doc-location> element need not be specified.
Note: The element <documentserver> is required with the Web cluster.

URL for the Document Server The URL for the Document server depends on whether a single Portal server has been configured or a Web cluster. For a single Portal server, the Document server URL is the same as the URL of the single Portal server. For a Web cluster, if there is a drive controller in Windows using RAID controller or a shared drive on UNIX, then the document server URL can be specified as the proxy server URL. This will provide failover. SBM validates if the Document server URL is same as the Proxy server URL and also if the document location is specified for the Document server. If validation fails, an exception is thrown. The validation can be disabled by setting the system property sbm.cluster.extdocserver to True in the file SBM_HOME\cluster\conf\sbmclusterprops.xml.

Setting the Cluster in Stages


You can also carry out the cluster setup in stages. That is, you can set up the EJB cluster first, and then the JMS cluster and/or the Web cluster. This can be achieved with the help of the create attribute for the <cluster> element. When the cluster setup is run, the cluster is set up only for those configurations for which the create attribute is set to true.
Note: While setting up a cluster, you must comment out the corresponding single server, as the single server and the cluster cannot exist together.

EJB Cluster
For an EJB cluster, the following tags should be included in the file sbm-cluster.xml:

<cluster name="sbm_cluster" type="ejb" create="true"> <adminserver name="wladmin"> <documentserver name="docServer"> <portalserver name="portalServer"> <jmsserver name="sys97">

Clustering Guide

40

Setting the Cluster in Stages

JMS Cluster
Once the EJB cluster setup is done, the XML file should have the following tags for the JMS cluster setup:

<cluster name="sbm_cluster" type="ejb" create="false"> <cluster name="sbmjmscluster" type="jms" store="db/file"


create="true">

<adminserver name="wladmin"> Web Cluster


Once the EJB and JMS cluster setup is done, the XML file should have the following tags for the Web cluster setup:

<cluster name="sbm_cluster" type="ejb" create="false"> <cluster name="sbmjmscluster" type="jms" store="db/file"


create="false">

<cluster name="web_cluster" type="web" create="true"> <adminserver name="wladmin"> <documentserver name="docServer"> <proxyserver name="proxy" type="pramati">

Running the Cluster Setup


To start the Cluster Setup, go to SBM_HOME\cluster\bin and run setupcluster.bat|sh [-cmd] [-f clusterFile] where [-cmd] specifies that this is a command line operation, and [-f clusterFile] denotes the application server-specific configuration file.

Cluster Setup Log File


The file SBM_HOME\cluster\logs\clustersetup.log contains all the logged messages and exceptions during the setup.

Adding New and Recovered Nodes


In case of failure of any cluster node or addition of new nodes to the existing cluster, you will need to reconfigure the cluster and synchronize it with the cluster already running. Note that while reconfiguring, you need not stop the existing cluster. 1. Fix the problem on the crashed node and restart the machine. Alternately, if it is a new node, verify that SBM is installed on that machine, and the configuration files are appropriately modified using the modifyprop utility. Refer to the section, Modifying SBM Properties for individual application servers.
Clustering Guide 41 Running the Cluster Setup

2. Start the application server node and verify that it is started properly. 3. From SBM_HOME\bin, run the command: addBizLogicNodes -u <user> -p <password> -nc <count> Where count is the number of new nodes to be added. This will synchronize the BizLogic server on the new node. 4. For BizPulse, when you add a new node, you need to start BizPulse monitoring on that node for failover. Refer to Starting and Stopping BizPulse Monitoring on page 79 for related procedures.
Note: BizPulse runs in a failover configuration and need not be re-synchronized.

Database Storage of Cluster Files


The following files can be read from the database or from the file system. These files are directly read from the database without checkout.

The file SBM_HOME\cluster\conf\sbmclusterprops.xml specifies properties for the cluster utility


itself. It contains the property propertyfilestorage which is used to specify if database storage is required.
NOTE: If the database file storage is enabled, then the cluster utility assumes that the files are already stored in the database.

Cluster configuration file sbm-cluster.xml is read from the file system by default. If the property
propertyfilestorage is set to True, the file will be read from the database.

If the database storage is enabled, the following files must be present in database:
o o sbm-cluster.xml sbm-properties.xml

For WebLogic Application Server, sbm-resources-weblogic.xml must also be present in the database.

You can check in and check out the cluster files using the script
SBM_HOME\cluster\bin\DBFileManager.

Clustering Guide

42

Database Storage of Cluster Files

Chapter 5

Configuring Pramati Application Server

This chapter describes the details of Pramati application server required for manual editing of the file sbm-cluster.xml. For basic reference information on manual cluster configuration, refer to the chapter Editing the Cluster Configuration File on page 32. If you plan to use the Cluster Configuration Tool instead, refer to the chapter Using the Cluster Configuration Tool on page 18. You can also use the file SBM_HOME\cluster\docs\readme_pramati.txt for quick reference.
Note: Portal cluster is not supported in vertical clustering using Pramati application server. When you install a BizLogic/BizSolo application in a clustered environment, it creates the application files on any one node in the cluster. You need to copy them from the node where it got installed, to all the other nodes in the cluster. You can avoid copying the files manually by using the BPM Studio. Refer to Using BPM Studio in Clustered Environment on page 16 for more information.

Before Clustering
Before clustering, ensure that:

Pramati Admin Service must be running on all intended nodes before starting the cluster setup. This
can be done by running the following command: SBM_HOME\pramati\server\bin\runstartupsvc.bat

Copy the file SBM_HOME\cluster\conf\sbm-cluster-pramati.xml to sbm-cluster.xml. Make changes


in the file sbm-cluster.xml as described in the section Configuring Clusters on page 45. This will be your cluster configuration file.

43

For Web Clustering on UNIX,


a. Copy the file SBM_HOME\cluster\conf\pramati-web-lbconfig.xml as web-lbconfig.xml. b. Modify the nodes section in this file with the Web cluster node information present in the file sbm-cluster.xml as shown below: <nodes self-name="null"> <node type="J2EE" host="10.1.32.129" web-port="8181" name="sys91WA"> <naming-port /> <socket-pool enabled="true" min="20" max="50" pool-idle-time-out- seconds="60000" socket-idle-timeout-millis="60000" /> </node> <node type="J2EE" host="10.1.32.118" web-port="8181" name="sys80WA"> <naming-port /> <socket-pool enabled="true" min="20" max="50" pool-idle-time-out- seconds="60000" socket-idle-timeout-millis="60000" /> </node> c. Modify the hostname attribute to the IP address of the load balancer as shown below: <node-choser name="url-mapping-node-choser" <host name="10.1.32.129">

On each node of the cluster, run the utility SBM_HOME\bin\setupSBM.bat | sh before starting the
cluster.

Verify that the table with name of the EJB cluster does not already exist in the database specified in
the persistence properties. For example, if the cluster name is sbmejbCluster, a table by this name is already created in the database specified in the <persistence> section of this cluster. If such a table already exists, then you need to delete it manually before running the utility.

Verify that the table with name of the JMS cluster does not already exist in the database specified in
the persistence properties. For example, if the cluster name is sbmjmsCluster, a table by this name is already created in the database specified in the <persistence> section of this cluster. If such a table already exists, then you need to delete it manually before running the utility.

Using Ports
While specifying the port numbers in the cluster configuration file, note the following points:

All EJB nodes should have the same port number. For example, if you choose port 9295, then
<cluster name="sbmejbCluster" type="ejb"> <nodes> <node name="sys91"> <address>10.1.32.129</address> <jndi-port>9295</jndi-port> <source-node>ejbServer</source-node> </node>

Clustering Guide

44

Before Clustering

<node name="sys74"> <address>10.1.32.112</address> <jndi-port>9295</jndi-port> </node> </nodes> The tag <http-port> can also be specified to access the HTTP port (if available) on this EJB node. This tag is optional.

All Web nodes should have the same port number. For example, if you choose port 8181,then since
Web cluster uses existing Portal servers, the port numbers will be the port numbers of the individual port numbers of the Portal servers. <cluster name="sbmwebCluster" type="web" create="false"> <nodes> <node name="sys91WA"> <address>10.1.32.129</address> <jndi-port>9191</jndi-port> <http-port>8181</http-port> </node> <node name="sys80WA"> <address>10.1.32.118</address> <jndi-port>9191</jndi-port> <http-port>8181</http-port> </node> </nodes> </cluster> The tag <jndi-port> needs to be specified for portal server nodes for query service to access the JNDI resources (JDBC, etc.) on the portal server nodes. This port will be different than <http-port> for Pramati server.

In case of vertical clustering, nodes are on the same machine, and port numbers need to be different.

Configuring Clusters
Note the following points:

The <source-node> tag is mandatory. Specify the "ejbServer" node as source node. This is used to
set the required SBM configuration on the cluster nodes. "ejbServer" is the default node of an SBM standalone installation.

The <persistence> tag is mandatory for EJB cluster. If the Web cluster option is used, then proxy server should be created on the same node as the
machine where the utility setupcluster.bat | sh is being run.

The standalone JMS server name (for example, sys91jms) must be different from any other node
name.

Clustering Guide

45

Configuring Clusters

Setting up EJB Cluster


The EJB cluster configuration is provided by default. The <nodes> tag contains the list of nodes for the cluster. The first <node> element must contain the <source-node> tag. The node specified in this tag (ejbServer by default) must be present on the same machine as this node. The <persistence> tag will contain the database connection parameters used by Pramati to persist the EJB cluster configuration. Pramati creates a table with the same name as the cluster name and hence the cluster name must be unique.

Setting up Web Cluster


The Web cluster in the template XML assumes the usage of the existing Portal servers in a load-balancing mode. Since the Portal server nodes already exist, the create attribute is set to false. Entry for the <proxyserver> tag must be present. The value for the <http-port> tag must be different than the <http-port> of any nodes defined in the cluster with type "web". If required to install the proxy server in other webservers or servlet engines, refer to Pramati documentation for Pramati Web LoadBalancer.

Setting Up the Cluster


To run the cluster setup:

Execute setupcluster.bat|sh -cmd in SBM_HOME\cluster\bin on one of the cluster nodes. Setting up High Availability JMS Cluster
When a High Availability (HA) JMS is set up with a Pramati Application Server, one of the JMS nodes is in active state and all other JMS nodes are in passive state. When the active JMS node fails, one of the other passive nodes becomes active. The <nodes> tag contains the list of JMS nodes for the cluster. The first <node> element must contain the <node name>, <address>, <jndi port> and <sbm home> tags. When you set up the HA JMS using the Cluster Configuration Tool, it enters the values for these tags. To set up the HA JMS with Pramati cluster, carry out the following steps: 1. Set up the JMS cluster using the Cluster Configuration Tool as explained in the Chapter 3, Using the Cluster Configuration Tool. 2. Similarly, add EJB and Portal nodes as desired. 3. Click the Run tab and click Run Setup to run the cluster. 4. From the machine on which the Cluster Configuration Tool is run, open the jms-config.xml file from <SBM_HOME>\pramati\server\nodes\<JMS_NODE_NAME>\config folder. 5. Locate the <persistent-store> tag. 6. Change the <persistence-type> tag value from file-store to db-store.
Clustering Guide 46 Setting Up the Cluster

7. Save this file. 8. From the machine on which the Cluster Configuration Tool is run, execute following command from <SBM_HOME>\pramati\server\bin folder: startJMSServer.bat -node <JMS_NODE_NAME> -uploadconfig This will save the changes to the database. 9. Stop the JMS Server by using the shutdown command in JMS Clusters shell. 10. Continue with the rest of the cluster setup procedure explained in the following sections.

Modifying SBM Properties


Ensure that all nodes in the cluster have the same cluster configuration file, sbm-cluster.xml. To modify the SBM configuration files for the cluster configuration, run SBM_HOME\cluster\bin\modifyprop.bat on each node in the cluster to update the properties in the SBM conf files for the cluster. It internally calls SBM_HOME\bin\updateSBM.bat to update the SBM property files in the jar and ear files. This will back up the affected configuration files under SBM_HOME\conf directory by appending .orig extensions to the respective conf files. In case the cluster configuration file is other than sbm-cluster.xml, you need to run the modifyprop.bat |sh file with the option -f with the configuration file name. modifyprop.bat [-f clusterFileName] where clusterFileName is the name of the cluster configuration file to use. If no file is specified, then sbm-cluster.xml is used

Restoring Original Configuration


In case of Pramati, new nodes are created for the cluster in addition to the existing standalone node, and restoration of Pramati side configuration will not be required. However, SBM side configuration will have to be modified for the standalone server to run. It is also possible to easily restore the original configuration because modifyprop.bat maintains a copy of the original files with the extension ".orig". These files can be renamed to their original name.
Note: If the utility modifyprop.bat is run multiple times, the original files (.orig) will be overwritten. To ensure that you always have the original files for restoration, manually back up the conf directory before running the utility.

After this, run SBM_HOME\bin\updateSBM.bat to complete the restoration.

Clustering Guide

47

Modifying SBM Properties

Configuring BizPulse for Failover


Some of the important parameters in bizpulse.conf which affect BizPulse failover functionality are discussed below:

bizpulse.server.cluster=on
This parameter should be set to on. This indicates that there are more than one nodes working in cluster mode.

bizpulse.server.cluster.monitor=on
Failover is achieved by monitoring the active BizPulse server, and initiating the failover action in case the server fails. Therefore, the word "Monitoring" is used here almost synonymously as "Failover". This parameter should be set to on to enable failover.

bizpulse.server.cluster.monitor.interval=30
When BizPulse monitoring is on, whenever BizPulse is started, a monitoring process will start on each of the nodes. BizPulse server starts up on any one of the nodes. On the node, where the BizPulse server is active, monitoring process checks the state of the BizPulse at the interval specified by bizpulse.server.cluster.monitor.interval in seconds. In this particular example, the monitoring takes place every 30 seconds, and the process writes the last BizPulse alive time to the database. On all the other nodes, monitoring process checks and compares the last BizPulse alive time with the current time.

bizpulse.server.cluster.failover.interval=120
When the difference between the last BizPulse alive time and the current time exceeds the specified bizpulse.server.cluster.failover.interval, the monitoring process will try to start the BizPulse server on a node other than the one on which BizPulse was last active.

BizPulse Application Loading in a Cluster


For application loading, make sure that you copy all the relevant applications, and their compiled rules on all the nodes in the cluster. Ensure that the same copy of the applications exists on all the nodes and there is no version mismatch on different nodes. You can use either BizPulseAdmin or BPM Portal to load the applications.

Working with the Cluster


You need to first start the clusters and/or individual servers, and then run the BizLogic / BizPulse servers.
Note: You must first start the EJB Server on the node where the cluster utility was executed. Ensure that you do not start the EJB Server simultaneously on all the cluster nodes, otherwise the servers may hang or take more time to start.

Clustering Guide

48

Configuring BizPulse for Failover

Starting the Cluster


1. If the Web cluster is set up, a. Start the Portal proxy server with the command: SBM_HOME\pramati\server\bin\startPortalServer.bat|sh. <proxyserver> In this example, the proxy server name is proxyserver. b. Start the Portal servers in the cluster with the command: the SBM_HOME\pramati\server\bin\startPortalServer.bat|sh.
NOTE: You need to run this command on all the nodes individually.

2. If the Web cluster is not set up, and there is a single Portal server, start the Portal server with the command: SBM_HOME\pramati\server\bin\startPortalServer.bat|sh. 3. Start the JMS server with the command: SBM_HOME\pramati\server\bin\startJMSServer.bat|sh <JmsServer> In this example, the JmsServer name is sys91jms.
Note: You need to run this command on all the nodes individually. Always start JMS server / cluster before starting EJB server / cluster.

4. If the EJB cluster is set up, start the EJB servers of the cluster with the command: SBM_HOME\pramati\server\bin\startEjbServer.bat|sh [nodename] You must run the command for each node. In this example, the nodename is sys91 and sys74. 5. If the EJB cluster is not set up, and there is a single EJB server, start it with the command: startEJBServer

Starting the Servers


You can start the BizLogic and BizPulse servers through the Administration module of BPM Portal. The following sections describe how to start the BizLogic and BizPulse servers through the command line. Starting the BizLogic Server Go to SBM_HOME\bin and start the BizLogic servers a follows: 1. If the EJB cluster is set up, then start with the command startBizLogicServer -u <user name> -p <password> -nc <nodes in cluster> 2. If the EJB cluster is not set up, and there is a single EJB server, then start with the command: startBizLogicServer
Clustering Guide 49 Working with the Cluster

For more information on BizLogic server commands, refer to BizLogic Server Commands on page 76. Starting the BizPulse Server Go to SBM_HOME\bin and start the BizPulse server as follows: 1. If the EJB Cluster is set up, then start with the command startBizPulseServer -nodes <nodes in cluster> 2. If the EJB Cluster is not set up, and there is a single EJB server, then start with the command startBizPulseServer For more information on BizPulse server commands, refer to BizPulse Server Commands on page 78.

Stopping the Cluster


You need to stop the cluster in the exact reverse order of starting the cluster as described in Starting the
Cluster on page 49, by using the shutdown command for individual servers.

Performance Tuning
To improve the performance, you can carry out the following tuning: 1. In the out-of-the-box installation, there are two copies of web-config.xml; namely, web-config.xml.dev and web-config.xml.prod under SBM_HOME\pramati\server\nodes\portalServer\config. The web-config.xml.prod file is tuned for a production environment with the update-check-interval-seconds value set to -1. This disables the check the server performs for changes in JSP files. In the production environment, rename this file to web-config.xml and restart the server.
Note: Once the update-check-interval-seconds value is set to -1, the Portal server will no longer compile JSPs. If you want to deploy new JSPs or need the server to recompile modified JSPs, the update-check-interval-seconds value should be a positive value.

2. The values of keep-alive-timeout (millis) and socket-idle-time-out (millis) should be changed to a high value in the web-config.xml of the backend nodes, (preferably to more than five minutes for keep-alive-timeout and 10-60 seconds for idle-timeout). This ensures that the socket connections between the Loadbalancer and the backend nodes does not get timed out for a long period of time, and hence does not result in unnecessary, and frequent creation of sockets. For each of the backend nodes in SBM_HOME\pramati\server\nodes\portalServer\config\web-config.xml change the idle-timeout-millis to 10000. <idle-timeout-millis>10000</idle-timeout-millis> <keepalive-timeout-millis>30001</keepalive-timeout-millis>

Clustering Guide

50

Performance Tuning

3. It is okay to turn off the DOS (Denial of Service attack) protection on the backend nodes in a cluster. This can be done by setting the denial-of-service enabled to false. Since the DOS protection is turned on in the proxyServer/loadbalancer by default, turning it off in the backend nodes will avoid DOS attack checks from happening twice (in the loadbalancer and the backend node), thereby improving performance. a. For the proxy node, in SBM_HOME\pramati\server\nodes\proxy\config\web-lbconfig.xml, in the nodes section, make sure that the socket-idle-timeout-millis="10000" for both the nodes. For example, <node type="J2EE" host="jerusalem.savvion.com" web-port="8181" name="web_jerusalem"> <naming-port /> <socket-pool enabled="true" min="20" max="50" pool-idle-time-out-seconds="1000" socket-idle-timeout-millis="10000" /> </node> <node type="J2EE" host="kuba.savvion.com" web-port="8181" name="web_kuba"> <naming-port /> <socket-pool enabled="true" min="20" max="50" pool-idle-time-out-seconds="1000" socket-idle-timeout-millis="10000"/> </node> b. The proxyServer\loadbalancer node is configured for a session timeout of 6 min by default. This can be updated to a desirable value by modifying the code as follows: <node-chooser name="session-stickiness-node-chooser" class="com.pramati.web.lb.nodechooser.SessionStickinessNodeChoo ser" enabled="true"> <props time-out-minutes="6" cleanup-interval-minutes="2" /> </node-chooser> to <node-chooser name="session-stickiness-node-chooser" class="com.pramati.web.lb.nodechooser.SessionStickinessNodeChoo ser" enabled="true"> <props time-out-minutes="45" cleanup-interval-minutes="2" /> </node-chooser>
Note: The sample values used in this example should be changed to the appropriate values in your system.

Clustering Guide

51

Performance Tuning

Chapter 6

Configuring WebLogic Application Server

This chapter describes the details of WebLogic application server required for manual editing of the file sbm-cluster.xml. For basic reference information on manual cluster configuration, refer to the chapter Editing the Cluster Configuration File on page 32. If you plan to use the Cluster Configuration Tool instead, refer to the chapter Using the Cluster Configuration Tool on page 18. You can also use the file SBM_HOME\cluster\docs\readme_weblogic.txt for quick reference. Clustering in SBM uses the following terminology:

SBM_HOME: Refers to the installation directory of SBM. WL_HOME: Refers to the WebLogic installation directory WL_SBM_DOMAIN: Refers to the absolute location where SBM is installed under WebLogic. For
example, for WebLogic 8.1, C:\bea\user_projects\domains\sbm50.
Note: When you install a BizLogic/BizSolo application in a clustered environment, it creates the application files on any one node in the cluster. You need to copy them from the node where it got installed, to all the other nodes in the cluster. You can avoid copying the files manually by using the BPM Studio. Refer to Using BPM Studio in Clustered Environment on page 16 for more information.

52

Before Clustering
Before clustering, ensure that:

If a single JMS server is configured for the cluster, then this server should be targeted to the EJB
server that is at the same location as the Administration server. For example, if the Administration server is at node1 IP=10.1.32.129 and EJB nodes are 10.1.32.129 and 10.1.32.179, then the JMS server should always be targeted on 10.1.32.129.

Each node should be installed on a separate machine, and all nodes should use the same database
account.

Ensure that SBM is installed on all nodes before proceeding. You are required to use the same
directory for each node, and the same WebLogic domain name for each node.

Make sure that the Admin Server is running on one of the machines in the cluster before starting the
cluster setup.

Copy the file SBM_HOME\cluster\conf\sbm-cluster-weblogic.xml as sbm-cluster.xml. Make


changes in the file sbm-cluster.xml as per the cluster configuration. This will be your cluster configuration file.

On each node in the cluster, run the utility SBM_HOME\bin\setupSBM.bat |sh. For more
information, see the Installation Guide.

Remove the following temporary files and directories:


Note:

WL_SBM_DOMAIN\adminServer\.internal WL_SBM_DOMAIN\adminServer\.wlnotdelete WL_SBM_DOMAIN\adminServer\ldap WL_SBM_DOMAIN\adminServer\logs WL_SBM_DOMAIN\adminServer\*.log files WL_SBM_DOMAIN\adminServer\*.tlog files

The jar and ear files included with default installation must not be clustered.

Using Ports
While specifying the port numbers in the cluster configuration file, note the following points:

All EJB nodes should have the same port number. For example, if you choose 18785, then
<cluster name="sbmejbCluster" type="ejb"> <nodes> <node name="sys97"> <address>192.168.0.28</address> <jndi-port>18785</jndi-port> </node> <node name="sys98"> <address>192.168.0.32</address> <jndi-port>18785</jndi-port>

Clustering Guide

53

Before Clustering

</node> </nodes> </cluster> The tag <http-port> can also be specified after <jndi-port> tag to access the HTTP port (if available) on this EJB node. This tag is optional.

All Web nodes should have the same port number. For example, if you choose 18795, then since the
Web cluster uses existing Portal servers, the port numbers will be the port numbers of the individual port numbers of the Portal servers. <cluster name="sbmwebCluster" type="web"> <nodes> <node name="sys97_web"> <address>192.168.0.28</address> <http-port>18795</http-port> </node> <node name="sys98_web"> <address>192.168.0.32</address> <http-port>18795</http-port> </node> </nodes> </cluster> The tag <jndi-port> can be specified for portal server nodes for query service to access the JNDI resources (JDBC, etc.) on the portal server nodes. This port is the same as the <http-port> for WebLogic server, and hence can be omitted.

All JMS nodes should have the same port number as EJB nodes. For example, 18785. Also, the IP
address and target of JMS nodes should be the same as the IP address and node name of the corresponding EJB nodes respectively. <cluster name="sbmjmsCluster" type="jms" store="db"> <nodes> <node name="sys97_jms"> <address>192.168.0.28</address> <jndi-port>18785</jndi-port> <target-node>sys97</target-node> </node> <node name="sys98_jms"> <address>192.168.0.32</address> <jndi-port>18785</jndi-port> <target-node>sys98</target-node> </node> </nodes>
NOTE: The tag <http-port> is not valid for JMS server or JMS cluster nodes.

Clustering Guide

54

Before Clustering

You must use the same port number specified while installing SBM. For example, 18791.
<adminserver name="adminServer"> <address>192.168.0.28</address> <jndi-port>18791</jndi-port> </adminserver>

In case of vertical clustering, (nodes on same machine), port numbers need to be different.

Configuring Clusters
Note the following points:

The <domain-name> tag is mandatory for WebLogic. Specify the domain name with which SBM is
installed under WebLogic in the file SBM_HOME\cluster\conf\sbm-cluster.xml. The domain name is case sensitive.

The location attribute is mandatory for WebLogic. Specify the absolute path of the directory under
which SBM is installed in WebLogic. For example, <domain-name location= "C:/bea/user_projects/domains/sbm50">sbm50 </domain-name>

The adminSever and proxyServer name must not be changed.


We recommend to install WebLogic in the same location on all the machines in the cluster. In case WebLogic is installed at different locations, you need to modify the file config.xml manually as described below:

If SBM is installed in different directories on different nodes during the cluster setup with
WebLogic, then the file config.xml on the Admin server needs to be changed manually. You need to first run the cluster setup utility, then shut down the Admin sever, and then edit the file as follows: The paths of the applications in the file config.xml are absolute by default. You need to make the paths relative to the domain directory. For example, change the path of the file bizlogic.ear from \u4\bea\user_projects\domains\SBM\applications\bizlogic.ear to .\applications\bizlogic.ear

If SBM is installed in different locations on the cluster nodes, and a single JMS server is to be
configured, then the property sbm-home needs to be added for all the nodes in the file sbm-cluster.xml. <node name="sys113"> <address>10.1.32.172</address> <jndi-port>18785</jndi-port> <sbm-home>D:/SBM_HOME</sbm-home> </node> Where, sbm-home is the location of SBM installation on that specific node.

Clustering Guide

55

Configuring Clusters

In case of a single JMS server, if the SBM_HOME property is different for at least one node, then
the utility sets a pre-configured JDBC store (BizLogic_JDBC_Store, BizPulse_JDBC_Store) for BizLogic and BizPulse. In case of JMS cluster, this property is ignored. By default, the JMS store for a standalone installation is a file on the local file system. If SBM is installed in different locations on different nodes, then the file store path of an assigned JMS server may not be valid on all the machines. The JMS server (and hence the EJB node) will not start in such case. Hence a JDBC store is set as the JMS store to avoid this problem.

Specifying Environment Variables


You can specify whether the JMS server is an external server or not by using the environment variable sbm.cluster.extjmsserver. You can change its value in the file SBM_HOME\cluster\bin\setupcluster.bat|sh in the following command: java -Dsbm.cluster.extjmsserver=false com.savvion.sbm.weblogic.ClusterSetup The default value is false, indicating that the JMS server is not an external server and its target should be either the name of the EJB Server (single server) or the name of any of the nodes of the EJB Cluster (cluster). The value true indicates that the JMS server is an external server. In such a case, the target-node of the JMS server will not be validated.

Setting up JMS Cluster


The JMS servers can be configured in two ways; either with a standalone EJB Server or with an EJB Cluster. JMS Cluster with Standalone EJB Server If you configure the JMS Servers with a standalone EJB Server, then the value of the <target-node> should be the name of the EJB Server with which you want to cluster the JMS Servers. Similarly, the address and port of the JMS Servers should be the same as that of the EJB Server. For example, <ejbserver name="ejbServer"> <address>192.168.0.32</address> <jndi-port>18792</jndi-port> <ejbserver> <cluster name="sbmjmscluster" type="jms" store="db"> <nodes> <node name="jmsNode1"> <address>192.168.0.32</address> <jndi-port>18792</jndi-port> <target-node>ejbServer</target-node> </node> <node name="jmsNode2"> <address>192.168.0.28</address> <jndi-port>18792</jndi-port> <target-node>ejbServer</target-node> </node>
Clustering Guide 56 Configuring Clusters

</nodes> . . . </cluster> JMS Cluster with EJB Cluster If you configure the JMS Servers with an EJB Cluster, then the value of <target-node> should be set to the EJB Cluster node names. Similarly, the address and port of the JMS servers in the JMS Cluster should be the same as that of the EJB Servers in the EJB Cluster. The name of the JMS Servers in the JMS Cluster should not exceed 16 characters. An example of this is given below: <cluster name="ejb_cluster" type="ejb"> <nodes> <node name="sys97"> <address>192.168.0.28</address> <jndi-port>9000</jndi-port> </node> <node name="sys98"> <address>192.168.0.32</address> <jndi-port>9001</jndi-port> </node> </nodes> </cluster> <cluster name="sbmjmscluster" type="jms" store="db"> <nodes> <node name="jmsNode1"> <address>192.168.0.28</address> <jndi-port>9000</jndi-port> <target-node>sys97</target-node> </node> <node name="jmsNode2"> <address>192.168.0.32</address> <jndi-port>9001</jndi-port> <target-node>sys98</target-node> </node> </nodes> . . . </cluster>

Setting up Web Cluster


Entry for <proxyserver> should be made in the file SBM_HOME\cluster\conf\sbm-cluster.xml. The value for the <http-port> tag must be different than the <http-port> of any nodes defined in the cluster with type "web". If you want to choose a different proxyServer name (for example, sys55_proxyServer), then you must change the proxyServer name in the startPortalProxyServer.cmd|sh file in the WL_SBM_DOMAIN folder. In the file WL_SBM_DOMAIN\ stopPortalProxyServer.cmd | sh, change the value of portal proxy server port when the web cluster setup is done.

Clustering Guide

57

Configuring Clusters

While the Portal server is made clusterable, an application with name WLProxyApp.war is uploaded by the cluster utility in the upload folder of the WL_SBM_DOMAIN\adminServer folder. This can be seen under the SBM_HOME\cluster\webapps folder.
Note: If you need to install a proxy server in other webservers/servlet engines, then it is required to download and install the WebLogic plugins. Refer to the WebLogic documentation for downloading, installing and configuring the proxy server for IIS and Netscapes iPlanet.

After the setup is complete, you need to shut down the Admin server and then restart it. If the server does not start properly, then the cluster setup remains incomplete, and results in a corrupted config.xml file. After the setup is completed, check the application server log file WL_SBM_DOMAIN\adminServer\logs\adminServer.log for any errors in setup. In some cases, the utility does not get any exception from the server and continues to show that the setup is okay. This may happen for various reasons such as an incorrect domain name.
Note: The cluster utility must be run from the same machine on which the WebLogic Server is installed.

Setting Up the Cluster


To run the cluster setup: 1. Ensure that the AdminServer is running on one node. If not, you can start the AdminServer by running WL_SBM_DOMAIN\startAdminServer.cmd|sh. 2. Run SBM_HOME\cluster\bin\setupcluster.bat|sh.

Modifying SBM Properties


Before modifying the properties, ensure the following:

All the nodes of the cluster have identical files sbm-cluster.xml, sbm-properties.xml, and any
application server specific resource files like sbm-resources-weblogic.xml.

Open the file SBM_HOME\cluster\conf\sbm-properties.xml and provide the value for the location
attribute of <property-files> element to point to the location of the conf directory of the SBM_HOME.
Note: If this value is not specified or specified incorrectly, then the property files are located from the CLASSPATH. So, if some other SBM_HOME than the one on which the cluster setup is done, is in the CLASSPATH, then properties of the incorrect SBM installation will be updated.

To modify the SBM configuration files for the cluster configuration, run SBM_HOME\cluster\bin\modifyprop.bat on each node in the cluster to update the properties in the SBM conf files for the cluster. It internally calls SBM_HOME\bin\updateSBM.bat to update the SBM property files in the jar and ear files. This will back up the affected configuration files under SBM_HOME\conf directory by appending .orig extensions to the respective conf files.
Clustering Guide 58 Setting Up the Cluster

In case the cluster configuration file is other than sbm-cluster.xml, you need to run the modifyprop.bat |sh file with the option -f with the configuration file name. modifyprop.bat [-f clusterFileName] where clusterFileName is the name of the cluster configuration file to use. If no file is specified, then sbm-cluster.xml is used

Restoring Original Configuration


For WebLogic, the cluster utility creates a backup of your original file config.xml. The backup file is created as config.xml.<number>, where the <number> is the current time in long number format. This will enable users to retain the original configuration file and also the subsequent ones, even after multiple runs of the cluster setup utility, since every time the file is backed up with a unique name. To restore the original configuration, the existing file config.xml should be replaced with the requisite backup copy. For example, the file config.xml.<n1> where n1 is the least value, will give the original file config.xml. Rename the backed up configuration files from the SBM_HOME\conf directory by removing the .orig extensions. The above method can also be used to restore the configuration if any exception is encountered in the cluster setup or the cluster setup process is aborted. Irrespective of whether the setup was completed successfully or not, before restoring the file config.xml, do the following:

Shut down the Admin server if it is running. Remove the temporary files as mentioned in Before Clustering on page 53.

Configuring BizPulse for Failover


Some parameters in bizpulse.conf affect BizPulse failover functionality significantly. For more information about these parameters, refer to Configuring BizPulse for Failover on page 48.
Note: WebLogic JMS cluster assumes that the server clocks of all the nodes in the cluster need to be synchronized at all times. Consult your system administrator for a time management program to handle this.

BizPulse Application Loading in a Cluster


For application loading, make sure that you copy all the relevant applications, and their compiled rules on all the nodes in the cluster. Ensure that the same copy of the applications exists on all the nodes and there is no version mismatch on different nodes. You can use either BizPulseAdmin, or BPM Portal to load the applications.

Clustering Guide

59

Configuring BizPulse for Failover

Working with the Cluster


You need to first start the clusters and/or individual servers, and then run the BizLogic / BizPulse servers.

Starting the Cluster


To start the cluster, go to WL_SBM_DOMAIN: 1. Start the Admin server with the command: startAdminServer 2. If the EJB cluster is set up, start the EJB Servers of the clusters with the following command: startEjbClusterInstance <server name> <admin url> where <server name> is the EJB node name, and <admin url> is the URL of the AdminServer specified in the cluster configuration. For example, startEjbClusterInstance sys97 192.168.0.28:18791 3. If the EJB cluster is not set up, and there is a single EJB Server, start it with the following command: startEjbServer 4. If the Web Cluster is set up, Start the Portal proxy server with the following command: startPortalProxyServer Start the Portal servers in the cluster with the command startPortalClusterInstance <server name> <admin url> where <server name> is the Portal node name, and <admin url> is the URL of the AdminServer specified in the cluster configuration. For example, startPortalClusterInstance sys97_web 192.168.0.28:18791 5. If the Web Cluster is not set up, and there is a single Portal server; start the Portal server with the following command: startPortalServer 6. To start the BizLogic server, go to SBM_HOME\bin. a. If EJB cluster is set up, then start with the command startBizLogicServer -u <user name> -p <password> -nc <nodes in cluster> b. If EJB cluster is not set up, and there is a single EJB server, then start with the command: startBizLogicServer For more information on BizLogic server commands, refer to BizLogic Server Commands on page 76.
NOTE: To start BizLogic server on all nodes, use startBizLogicNodes.bat | sh from the SBM_HOME\bin directory.

Clustering Guide

60

Working with the Cluster

7. To start the BizPulse server, go to SBM_HOME\bin. a. If the EJB Cluster is set up, then start with the command startBizPulseServer -nodes <nodes in cluster> b. If the EJB Cluster is not set up, and there is a single EJB server, then start with the command startBizPulseServer For more information on BizPulse server commands, refer to BizPulse Server Commands on page 78.
Note: BizLogic and BizPulse servers can also be started using BPM Portal.

Stopping the Cluster


You need to stop the cluster in the exact reverse order of starting the cluster as described in Starting the Cluster on page 60. To stop the cluster: 1. To stop the BizPulse server, go to SBM_HOME\bin. stopBizPulseServer.bat -nodes <nodes in cluster> For more information on BizPulse server commands, refer to BizPulse Server Commands on page 78. 2. To stop the BizLogic server, go to SBM_HOME\bin. stopBizLogicServer [options] [-u [username]] [-p [password]] [-nc [count]] For more information on BizLogic server commands, refer to BizLogic Server Commands on page 76. 3. For stopping the EJB, Portal, and Admin servers, go to WL_SBM_DOMAIN. 4. In case of a Web cluster, Stop the cluster instances on each node. stopPortalClusterInstance <server name> <admin url> where <server name> is the Portal node name, and <admin url> is the URL of the AdminServer specified in the cluster configuration. For example, stopPortalClusterInstance sys97_web 192.168.0.28:18791 Stop the Portal proxy server. stopPortalProxyServer 5. In case of a single Portal server; stop the server with the following command: stopPortalServer 6. In case of an EJB cluster, stop the EJB cluster instance on each node. stopEjbClusterInstance <server name> <admin url>

Clustering Guide

61

Working with the Cluster

where <server name> is the EJB node name, and <admin url> is the URL of the AdminServer specified in the cluster configuration. For example, stopEjbClusterInstance sys97 192.168.0.28:18791 7. In case of a single EJB server, stop the server with the following command: stopEjbServer 8. Stop the Admin server. stopAdminServer
Note: BizLogic and BizPulse servers can also be stopped using BPM Portal.

JMS Migration in a JMS Cluster


When one node of the JMS cluster fails, the JMS server needs to be manually migrated to the other node for failover. You can use WL_SBM_DOMAIN\migrateJMS.bat| sh script file to migrate the JMS server. Make sure that the ADMIN_URL of the migrateJMS.bat| sh is set to the correct URL of the cluster. Consider two nodes node1 and node2 in the cluster (EJB cluster + JMS cluster). If node1 fails, then the batch file can be invoked as: migrateJMS node1 node2 Or, migrateJMS node1 node2 migratenode In this example, node1 is the source node and node2 is the target node. This will migrate the JMS server from node1 to node2 and provide failover. When node1 is repaired and ready to be used, implement the remigration from node2 to node1 by using the following command: migrateJMS node1 node1 restorenode Note that the repetition of node1 is correct, and that restorenode is case sensitive. Once the remigration succeeds, node1 can be restarted using the startClusterInstance scripts. For more information on how to start the BizLogic and BizPulse server in a recovered WebLogic instance that is a node in a cluster, see BizLogic Server Commands on page 76 and BizPulse Server Commands on page 78.

Performance Tuning
To improve the performance, you can carry out the following tuning: Set the value of PageCheckSeconds and <servlet-reload-check-secs> to -1 in the weblogic.xml file (This procedure makes sure that WebLogic does not check for JSP changes which takes considerable time on Solaris operating system). The weblogic.xml file is located under bea_home\user_projects\domains\sbm_domain\applications\sbm\WEB-INF

Clustering Guide

62

JMS Migration in a JMS Cluster

The out-of-the-box installation comes with two versions of WebLogic.xml; namely, weblogic.xml.dev and weblogic.xml.prod, under bea_home\user_projects\domain\sbm_domain\applications\sbm\WEB-INF. The weblogic.xml.prod file already has the PageCheckSeconds and <servlet-reload-check-secs> values set to -1. Rename the file to weblogic.xml and restart the Portal server instance. The original copy of weblogic.xml is the same as weblogic.xml.dev and is tuned for the development environment. You can also check the parameter values through the admin console. 1. Login to Admin console and on the left pane go to deployments -> Web Application Modules -> sbm. 2. In the right pane, click on descriptors -> weblogic.xml

Clustering Guide

63

Performance Tuning

Chapter 7

Configuring WebSphere Application Server

This chapter describes the details of WebSphere application server required for manual editing of the file sbm-cluster.xml. For basic reference information on manual cluster configuration, refer to the chapter Editing the Cluster Configuration File on page 32. If you plan to use the Cluster Tool instead, refer to the chapter Using the Cluster Configuration Tool on page 18. You can also use the file SBM_HOME\cluster\docs\readme_websphere.txt for quick reference. Clustering in SBM uses the following terminology:

SBM_HOME: Refers to the installation directory of SBM. ADMINSERVER_HOME: The location where Deployment Manager is installed. This is the
physical path where the WASND 6.0.2.5 is installed. For example, D:\WebSphere\DeploymentManager.

CONNTYPE: This determines what connector WebSphere uses. The valid values are RMI and
SOAP. The default is SOAP.

PORT: This is the port used when for connecting to wsadmin. The default SOAP port for a cell
manager is 8879. This may change based on the value provided for the parameter "-startingPort" during creation of the Deployment Manager profile. Currently the value given for "-startingPort" is 4000. This may change if you have both WebSphere base and WebSphere ND installed in the same machine providing the co-exist option. Refer to SOAP_CONNECTOR_ADDRESS::port parameter value in serverindex.xml at WebSphere_Install_root\AppServer\profiles\dmgr\config\cells\sys90Cell\nodes\sys90Manager.

PROFILE: The profile defines the run-time environment and includes all of the files that the server
processes in the run-time environment can change. A profile in WebSphere is similar to a domain in WebLogic.

64

WEBSPHERE BASE: Websphere Application Server Base (WAS Base) is used in the case of
standalone applications. Therefore, for standalone SBM to be installed, WAS Base needs to be installed. This installation creates a default profile with a server "server1". But for installing SBM, we need to create a new profile on which the SBM applications can be deployed.

WEBSPHERE ND: Websphere application server Network Deployment (WAS ND) is used in the
case of WebSphere clusters. If an SBM cluster has to be setup, then WAS ND is needs to be installed. In the previous version (WAS ND 5.1), installing WebSphere ND used to create a Deployment Manager. From version WAS ND 6.0 onwards, you need to create a deployment manager profile, once Websphere ND is installed. This version of Websphere ND also supports creation of WAS Base type of profiles to be created on it. For additional information, and understanding WebSphere terminology, refer WebSphere documentation.
Note: When you install a BizLogic/BizSolo application in a clustered environment, it creates the application files on any one node in the cluster. You need to copy them from the node where it got installed, to all the other nodes in the cluster. You can avoid copying the files manually by using the BPM Studio. Refer to Using BPM Studio in Clustered Environment on page 16 for more information.

Before Clustering
This example refers to a cluster setup of three machines, sys76, sys114, and sys90. The following figure illustrates the architecture of the cluster.
Figure 18 WebSphere - Three-node Cluster

It is also possible to set up cluster with only two nodes. Refer toWorking with Two-Node Clusters on page 74.

Clustering Guide

65

Before Clustering

Before proceeding to clustering, carry out the following steps:


a. Install WebSphere 6.0.2.5 Standard Edition on sys76 and on sys114. b. Install WebSphere 6.0.2.5 Network Deployment on sys90. c. Install IBM HTTP Server 6.0 on sys90 (part of WebSphere 6.0.2.5 Standard Edition). d. Install Web server plugins. (part of WebSphere 6.0.2.5 Standard Edition). e. Install SBM 6.5 SP2 on sys114, sys76 and sys90. Please note that the profile name, cell name, and the node name must be unique on all the three nodes. f. Execute createprofile.bat/sh from the SBM_HOME\bin folder on sys76 and sys114. (Do not execute the scripts createSbmEjbServer.bat/sh and createSbmPortalServer.bat/sh.) g. Execute createadminprofile.bat/sh from the SBM_HOME\cluster\bin folder on sys90. This would create the Deployment Manager profile, required for the management of the cluster. h. Change the value of the com.ibm.SOAP.requestTimeout property from 180 to 0 in the soap.client.props file in the WEBSPHERE_HOME\appserver\profiles\<profile_name>\properties directory to avoid the java.net.SocketTimeoutException: Read timed out exception. i. Federate both the nodes, that is, sys114 and sys76 to the Deployment Manager, that is, sys90. j. The cluster scripts should be run from any of the cluster nodes, that is, sys76 or sys114, and not from the machine where Deployment Manager is installed, that is, sys90. k. Currently the cluster setup is configured to use the cloudscape database. When the cluster is started for the first time after setup, the messaging engine creates folders in each of the nodes where the cluster members are running. These folders are created in the APPSERVER_HOME\AppServer\profiles\<profileName>\databases\com.ibm.ws.sib folder. Please note that each time the cluster is removed and re- installed, the messaging engine folder which is created inside the above-mentioned folder has to be removed. The messaging engine folder name follows the following convention: <nodeName>.<clusterMemberName>-<busName>. This has to be done in all the cluster member machines.

Copy the file SBM_HOME\cluster\conf\sbm-cluster-was.xml as sbm-cluster.xml. Make changes in


the file sbm-cluster.xml as per the cluster configuration. This will be your cluster configuration file.
Note: For the ejb and web cluster, ensure that the database name specified in the "<databasename>" tag under the "presistance" tag is valid.

Clustering Guide

66

Before Clustering

Using Ports
While specifying the port numbers in the cluster configuration file, note the following points:

The entire EJB cluster node should have the same <jndi-port> value. The <jndi-port> number of
the jmsserver should be the same as the <jndi-port> of the EJB cluster node, which is hosting the jmsserver. For example, if the EJB cluster is described as below: <cluster name="sbmejbCluster" type="ejb" create="true"> <nodes> <node name="sys114sbm65node"> <address>sys114.tdiinc.com</address> <jndi-port>9811</jndi-port> <sbm-home>D:/SBM65_WS60</sbm-home> </node> <node name="sys76sbm65node"> <address>sys76.tdiinc.com</address> <jndi-port>9811</jndi-port> <sbm-home>D:/SBM65_WS60</sbm-home> </node> </nodes> <persistence> . . </persistence> </cluster> then, the jmsserver should have the following values: <jmsserver name="sys76sbm65node"> <address>sys76.tdiinc.com</address> <jndi-port>9811</jndi-port> </jmsserver> Note that the address and the <jndi-port> number of the jmsserver are the same as the address and <jndi-port> of the EJB cluster node, which host the jmsserver. Also all the EJB cluster nodes have the same <jndi-port> number.
NOTE: The node name should be same as the one you specified while installing SBM. You can find this node name from the sbm.websphere.node.name parameter in the SBM_HOME\conf\sbmjndi.properties file.

The tag <http-port> can also be specified after <jndi-port> tag for EJB server or EJB cluster to access the HTTP port (if available) on this EJB node. This tag is optional, and not valid for JMS server.

All the Web cluster nodes should have the same <http-port> value. The <http-port> of cluster
nodes of the Web cluster should be same as the <http-port> of the proxyserver. For example, if the proxyserver is described as below: <proxyserver name="sys90" type="websphere"> <address>10.1.32.128</address> <http-port>9448</http-port> </proxyserver>

Clustering Guide

67

Before Clustering

then, the Web cluster should be as shown below: <cluster name="sbmwebCluster" type="web" create="true"> <nodes> <node name="sys114sbm65node"> <address>10.1.32.173</address> <http-port>9448</http-port> <sbm-home>D:/SBM_WS60</sbm-home> </node> <node name="sys76sbm65node"> <address>10.1.32.114</address> <http-port>9448</http-port> <sbm-home>D:/SBM65_WS60</sbm-home> </node> </nodes> <persistence> . . </persistence> </cluster> Note that the <http-port> for all the Web cluster nodes is the same as the proxyserver <http-port>. All the Web cluster nodes have the same <http-port> number.
NOTE: The node name should be same as the one you specified while installing SBM. You can find this node name from the sbm.websphere.node.name parameter in the SBM_HOME\conf\sbmjndi.properties file.

The tag <jndi-port> can be specified for portal server nodes for query service to access the JNDI resources (JDBC, etc.) on the portal server nodes. The <jndi-port> value will be different than the <http-port> in case of a standalone portal server. In case of a cluster, the JNDI tree for all nodes is present at the cell level and hence the <jndi-port> value will be the same as the EJB <jndi-port> value.

Configuring Clusters
Configuring a cluster in WebSphere involves federating the installations with WebSphere ND, setting up EJB and Portal clusters, and configuring Portal load balancing.

Setting up EJB and Portal Clusters


1. Start WebSphere Deployment Manager, by executing startManager.bat in D:\WebSphere\DeploymentManager\bin (on sys90). 2. Start the node agent on sys76 and sys114. The node agent should still be running from when the addNode command was executed previously. To check that the node agents for sys76 and sys114 are running, use System Administration > Node Agent from the WebSphere Administrative Console of Deployment Manager. Then look at the status for the nodes sys76 and sys114. If the node agent is unavailable on one of the computers, start it from the command line of that computer. D:\WebSphere\AppServer\bin\startNode.bat

Clustering Guide

68

Configuring Clusters

3. Edit SBM_HOME\cluster\bin\setenv.bat|sh on all the nodes to verify WebSphere parameters. Ensure the location specified for the ADMINSERVER_HOME does not contain backward slash (\). 4. Create and initialize the SBM tables in the database. In SBM_HOME\bin on sys76 and sys114, execute: setupSBM.bat -c all -u ebms -p ebms -yes
Note: After setting up the cluster, restart DMgr.

Configuring for QuickRules Support


After configuring the cluster, the following changes need to be done manually to configure QuickRules in the cluster mode. 1. Change the following entry from the deploy section of the file sbm-cluster.xml. <application name="quickrname="quickrules-was.war" ules-ps41" target="ejb">quickrules-ps41.ear</application> to <application name="QuickRules3.1" target="ejb">quickrules-was60.ear</application> 2. Add the following entry in the deploy section of the file sbm-cluster.xml. <application location="%SBM_HOME%\webapps" name="quickrules.war" target="web">quickrules.war.ear</application>

Setting Up the Cluster


To run the cluster setup:

Execute setupcluster.bat|sh -cmd in SBM_HOME\cluster\bin on one of the cluster nodes. Configuring Portal Load Balancing
Configure IBM HTTP Server to perform SBM Portals load-balancing. 1. Edit the configurewebserver1.bat located under the bin directory of the Plugins installation directory. In this file, add the ND installation path before the wsadmin script and configureWebserverDefinition.jacl. For example, wsadmin.bat -f configureWebserverDefinition.jacl webserver1 IHS "C:\\IBM\\IBMHTTPServer" "C:\\IBM\\IBMHTTPServer\\conf\\httpd.conf" 9448 MAP_ALL "C:\\IBM\\WebSphere\\Plugins" unmanaged aruba.savvion.com aruba.savvion.com windows modify it to: C:\\IBM\\WebSphere\\AppServer\\bin\\wsadmin.bat -f C:\\IBM\\WebSphere\\AppServer\\bin\\configureWebserverDefinition.jacl webserver1 IHS

Clustering Guide

69

Setting Up the Cluster

"C:\\IBM\\IBMHTTPServer" "C:\\IBM\\IBMHTTPServer\\conf\\httpd.conf" 9448 MAP_ALL "C:\\IBM\\WebSphere\\Plugins" unmanaged aruba.savvion.com aruba.savvion.com windows 2. Log in into the WebSphere Admin Console. In the left panel, go to Servers > Web Server, and then in the right panel, select webserver1 and click Generate Plugin-in. After confirmation click Propogate Plugin-in. 3. Open the file sbm-cluster.xml from the SBM_HOME\cluster\conf directory and check the value for <http-port> under the tag <proxyserver>. Copy this value to the value for the property Port in httpd.conf in the IBM Http Server installation location. For more information, refer to WebSphere documentation - "Using WebSphere Application Server V5 for load balancing and failover".

Modifying SBM Properties


Ensure that all nodes in the cluster have the same cluster configuration file, sbm-cluster.xml. To modify the properties: 1. Edit the SBM_HOME\conf\sbm.conf and SBM_HOME\conf\sbmjndi.properties files and set the sbm.webappdir parameter in the sbm.conf and sbm.websphere.cell.name parameter in the sbmjndi.properties file. The cellname should be the cell name of the dmgr of the ND installation. Please note down the current values because you will need them while restoring the original configuration. 2. Edit the SBM_HOME\conf\bpmportal.conf file and modify the bpmportal.jasper.compiler.classpath parameter. The cellname should be the cell name of the dmgr of the ND installation. For example, bpmportal.jasper.compiler.classpath= D:\IBM\WebSphere\AppServer\profiles\sys79\installedApps\jasper\sbm _war.ear\sbm.war\WEB-INF\lib\jasperreports.jar| D:\IBM\WebSphere\AppServer\profiles\sys79\installedApps\jasper\sbm _war.ear\sbm.war\WEB-INF\lib\commons-digester.jar| should be changed to: bpmportal.jasper.compiler.classpath= D:\IBM\WebSphere\AppServer\profiles\sys79\installedApps\aruba\sbm_ war.ear\sbm.war\WEB-INF\lib\jasperreports.jar| D:\IBM\WebSphere\AppServer\profiles\sys79\installedApps\aruba\sbm_ war.ear\sbm.war\WEB-INF\lib\commons-digester.jar| where jasper is the profile name of an individual node and aruba is the profile name of an ND node. Please note down the current values because you will need them while restoring the original configuration.

Clustering Guide

70

Modifying SBM Properties

3. Edit the SBM_HOME\conf\webservices.conf file and update the following properties: uddi.0.inquiryURL=http://jaguar.savvion.com:9448/sbm/uddi uddi.0.publishURL=http://jaguar.savvion.com:9448/sbm/uddi Both the URLs should point to the individual portal server URL. In the example above, http:// jaguar.savvion.com:9448 is the portal server URL of the individual node on jaguar. 4. Run SBM_HOME\cluster\bin\modifyprop.bat on each node in the cluster to update the properties in the SBM conf files for the cluster. This will back up the affected configuration files under SBM_HOME\conf directory by appending .orig extensions to the respective conf files. In case the cluster configuration file is other than sbm-cluster.xml, you need to run the modifyprop.bat |sh file with the option -f with the configuration file name. modifyprop.bat [-f clusterFileName] where clusterFileName is the name of the cluster configuration file to use. If no file is specified, then sbm-cluster.xml is used 5. Run SBM_HOME\bin\setupSbmPortalServer.bat on both sys76 and sys114.

Configuring BizPulse for Failover


Some parameters in bizpulse.conf affect BizPulse failover functionality significantly. For more information about these parameters, refer to Configuring BizPulse for Failover on page 48.

BizPulse Application Loading in a Cluster


For application loading, make sure that you copy all the relevant applications, and their compiled rules on all the nodes in the cluster. Ensure that the same copy of the applications exists on all the nodes and there is no version mismatch on different nodes. You can use either BizPulseAdmin, or BPM Portal to load the applications.

Working with the Cluster


You need to first start the clusters and / or individual servers, and then run the BizLogic / BizPulse servers.

Starting EJB and Portal Clusters


1. Start the node agents on each node if not already started.

In D:\WebSphere\AppServer\bin on sys76, execute: startNode.bat In D:\WebSphere\AppServer\bin on sys114, execute: startNode.bat

Clustering Guide

71

Configuring BizPulse for Failover

2. Execute startCluster.bat from SBM_HOME\cluster\bin. The wsadmin tool exits after ensuring the Start command to individual servers, so make sure that all the servers are started by checking the logs before proceeding (the portal server may take several minutes to start). Alternatively, you can individually start the servers as follows: a. On the sys76 node, (APPSERVER_HOME\AppServer\profiles\<profileName>\bin):

startServer.bat|sh sbm_sys76sbm65node startServer.bat|sh sbm_web_sys76sbm65node


b. On the sys114 node,

startServer.bat|sh sbm_sys114sbm65node startServer.bat|sh sbm_web_sys114sbm65node


Starting IBM HTTP Server From the Deployment Manager Machine, in D:\IBMHttpServer, execute: Apache.exe You can now log in into SBM cluster using the common BPM Portal URL: http://sys90.tdiinc.com:9448/sbm/bpmportal/login.jsp

Starting the BizLogic Server


Go to SBM_HOME\bin and start the BizLogic servers a follows: 1. If the EJB cluster is set up, then start with the command startBizLogicServer -u <user name> -p <password> -nc <nodes in cluster> 2. If the EJB cluster is not set up, and there is a single EJB server, then start with the command: startBizLogicServer For more information on BizLogic server commands, refer to BizLogic Server Commands on page 76.
Note: Since the version of soap.jar distributed with SBM is different from the WebSpheres soap.jar, the soap.jar under SBM_HOME/lib should be renamed (e.g., soap.jar.orig) before starting BizLogic and BizPulse servers.

Starting the BizPulse Server


Go to SBM_HOME\bin and start the BizPulse server as follows: 1. If the EJB Cluster is set up, then start with the command startBizPulseServer -nodes <nodes in cluster>
Clustering Guide 72 Working with the Cluster

2. If the EJB Cluster is not set up, and there is a single EJB server, then start with the command startBizPulseServer For more information on BizPulse server commands, refer to BizPulse Server Commands on page 78.
Note: BizLogic and BizPulse servers can also be started using BPM Portal.

Stopping the Cluster


You need to stop the cluster in the exact reverse order of starting the cluster as described in Starting EJB and Portal Clusters on page 71, by using the shutdown command for individual servers.

Restoring Original Configuration


1. Stop IBM HTTP Server, with CTRL+C in the terminal where IBM HTTP Server has started. 2. Stop EJB and Portal cluster: a. Execute stopCluster.bat from SBM_HOME\cluster\bin. b. Stop the node agents on each node:

In D:\WebSphere\AppServer\bin on sys76, execute: stopNode.bat In D:\WebSphere\AppServer\bin on sys114, execute: stopNode.bat

3. Remove EJB and Portal Cluster by executing removeSBMClusterFromWS.bat from SBM_HOME\cluster\bin. 4. Convert the setup to stand-alone SBM installations by removing the nodes that were federated to the Deployment Manager:

In D:\WebSphere\AppServer\bin on sys76, execute: removeNode.bat In D:\WebSphere\AppServer\bin on sys114, execute: removeNode.bat

Note that the command must not be issued on two nodes at the same time. Execute removeNode on computer sys76 first, wait for the command to complete, and then execute it on computer sys114. After the command completes, you should get a message that the node has been successfully removed. 5. Rename the backed up configuration files from the SBM_HOME\conf directory by removing the .orig extensions. 6. Edit the SBM_HOME\conf\sbm.conf and SBM_HOME\conf\sbmjndi.properties files and set the sbm.webappdir parameter in the sbm.conf and sbm.websphere.cell.name parameter in the sbmjndi.properties file to their original values which you had noted down in the step 1 of the Modifying SBM Properties on page 70.
Clustering Guide 73 Restoring Original Configuration

7. Remove the messaging engine datastore created inside the folder APPSERVER_HOME\AppServer\profiles\<profileName>\databases\com.ibm.ws.sib. The messaging engine folder name follows the following convention: <nodeName>.<clusterMemberName>-<busName>. This has to be done in all the cluster member machines.

Working with Two-Node Clusters


The configuration explained in the sample setup above can also be achieved using two machines instead of three machines, for example, sys90 and sys76. The following figure illustrates the architecture of the cluster.
Figure 19 WebSphere - Two-node Cluster

You can compare it with the architecture of the three-node cluster illustrated in Figure 18 on page 65. 1. Install WebSphere 6.0.2.5 Standard Edition on sys76 and sys90. 2. Install WebSphere 6.0.2.5 Network Deployment on sys90. During the installation, when a screen prompts "Modify ports for coexistence", select the check box. This is a very important step and if not done properly, the cluster may not work. 3. Federate both the nodes (sys90 and sys76) to the Deployment Manager (sys90). 4. Install SBM on sys90 and sys76. 5. If you need to federate the nodes after installing SBM, the parameter SBM.WebAppDir in sbm.conf needs to be manually changed on each node, using the following steps: a. Find out the node name where Deployment Manager is installed, sys90 in this case.

Clustering Guide

74

Working with Two-Node Clusters

b. Change the value of SBM.WebAppDir from individual machine name to the Deployment Manager machine name. For example, in sys76, from D:\WebSphere\AppServer\installedApps\sys76\sbm.war.ear\sbm.war to D:\WebSphere\AppServer\installedApps\sys90Network\sbm.war.ear\sbm.war. c. Make sure that the change is carried out on all the nodes, for example, on both sys76 and sys114 in this case.
Note: When WebSphere 6.0.2.5 is installed on sys90, make sure that IBM HttpServer is installed as a Windows service. Refer to the IBM HttpServer Installation document for more details.

Clustering Guide

75

Working with Two-Node Clusters

Appendix A

BizLogic Server Commands

This appendix describes the BizLogic commands you need to use for all the supported application servers. You can also start BizLogic Server from the BPM Portal Administration tab. Go to System > Status, select BizLogic Server and click Start.

Starting BizLogic Server Instances


Start the BizLogic servers on all the cluster instances by running the following batch script in SBM_HOME\bin. startBizLogicServer [options] [-u [username]] [-p [password]] [-nc [count]] Where, [options]: -help [count]: number of BizLogic Server Instances [username]: optional, valid username [password]: optional, valid password For example, for a cluster with two nodes: startBizLogicServer u ebms -p ebms -nc 2 The above command starts the BizLogic server on all instances in the cluster. It also starts the BizStore, Emailer, MConsole, CheckDue, ResumeWS, and Session services. Use this command only if you want to start all the servers in a cluster.

76

Use the following commands to start one or several of all the servers. Assume a cluster with three nodes. One node in the cluster is shut down or crashes. After the node is restarted, use the following command to start only the BizLogic server on that node: addBizLogicNodes u ebms -p ebms -nc 1, where 1 indicates the number of nodes to restart. If you need to restart two nodes, use: addBizLogicNodes u ebms -p ebms -nc 2. If a node has crashed or a new node is added, invoke the following command for Archiver or EventPublisher: startArchiver.bat|sh startEventPublisher.bat|sh If you see a warning message indicating that the Archiver or EventPublisher is already started, you can disregard it.

Stopping BizLogic Server Instances


You may drop the BizLogic servers on the cluster instances by running the following batch script in SBM_HOME\bin. stopBizLogicServer [options] [-u [username]] [-p [password]] [-nc [count]] Where, [options]: -help [count]: number of BizLogic Server Instances [username]: optional, valid username [password]: optional, valid password For example, stopBizLogicServer u ebms -p ebms -nc 2
Note: The startBizLogicServer and stopBizLogicServer scripts occasionally throw a weblogic.jms.common.JMSException. You can ignore the message and run the script again.

Clustering Guide

77

Stopping BizLogic Server Instances

Appendix B

BizPulse Server Commands

This section describes the BizPulse commands you will need to use for all the supported application servers.You can also start BizPulse Server from the BPM Portal Administration tab. Go to System > Status, select BizPulse Server and click Start.

Starting and Stopping BizPulse Server


1. Start the BizPulse server by running startBizPulseServer on one of the nodes in the cluster. Windows: startBizPulseServer.bat -nodes <nodes in cluster> UNIX: startBizPulseServer.sh -nodes <nodes in cluster> This command starts the BizPulse server on one node, and monitoring on all the nodes in the cluster, if the parameter bizpulse.server.cluster.monitor is set to on in the bizpulse.conf file. If the parameter bizpulse.server.cluster.monitor is set to off in the bizpulse.conf file, the monitoring will not start. However, if you want to start monitoring after you have started the BizPulse server, you need to stop the server, set the parameter bizpulse.server.cluster.monitor to on, and start the server again. 2. Stop BizPulse server by running: Windows: stopBizPulseServer.bat -nodes <nodes in cluster> UNIX: stopBizPulseServer.sh -nodes <nodes in cluster> This command stops the BizPulse server, and stops monitoring on all the nodes in the cluster.

78

Starting and Stopping BizPulse Monitoring


If you start the BizPulse server with the parameter bizpulse.server.cluster.monitor set to on in the bizpulse.conf file, monitoring will start on all the nodes in the server. In this setup, if you add a new node to the cluster, you can start the BizPulse monitor on that node by running: Windows: startBizPulseMonitor.bat -nodes <nodes in cluster> UNIX: startBizPulseMonitor.sh -nodes <nodes in cluster>
Note: To use the startBizPulseMonitor.bat|sh command on a new node, you must have started the server with the parameter bizpulse.server.cluster.monitor set to on in the bizpulse.conf file.

If you want to stop BizPulse monitoring without stopping the BizPulse server, you can stop BizPulse monitor by running: Windows: stopBizPulseMonitor.bat -nodes <nodes in cluster> UNIX: stopBizPulseMonitor.sh -nodes <nodes in cluster>

Clustering Guide

79

Starting and Stopping BizPulse Monitoring

Glossary

This is a listing of common SBM terminology. For a full version of terms used in SBM documentation, refer to the Terminology Guide in the SBM_HOME\docs folder.

A|B|C|D|E|G|H|I|K|M|P|R|S|T|U|W

A
ACL Manager

Go to Top

In Savvion BusinessManager (SBM), Access Control List Manager provides a finer, more precise control over user access rights for resources and actions.

Activity Workstep
In SBM, the basic unit of work; must be performed by one or more human performers (valid individual user, multiple users or user group).

Adapter
A Java class that integrates remote, third party classes and actions with SBM. An adapter can automate certain functions and tasks performed by a remote server or other external systems.

Administration
A module in BPM Portal enabling the administrator to perform such tasks as installing/uninstalling applications, modifying configuration parameters controlling SBM operations, and manage SBM users, groups and access control.The Administration module is visible only to SBM users who have permissions to access it.

Application
In SBM, an application is an installed, executable business process that automates a business flow.

80

B
Balanced Scorecard

Go to Top

A management application in the Management module that measures performance by analyzing how an organizations business activities help it achieve its strategic goals. The Balanced Scorecard provides an analysis from a range of perspectives.

BAM
Business Activity Management combines Business Process Management with strategic and analytical information on specific business performance indicators, providing real-time status information and identifying critical events to assist senior management in making informed business decisions.

BizLogic
An SBM component that provides a flexible, lightweight, scalable workflow process engine for intranets, extranets, and the Internet.

BizPulse
An SBM component that provides an open event-driven rule engine to formulate and enforce policies in business applications.

BizSolo
An SBM component that enables users to develop customizable, sophisticated presentation flows for business processes, install them as Web applications, and execute them on their Web browsers.

BizStore
An open repository of rich e-business information collected from different SBM modules.

BPEL
BPEL (Business Process Execution Language) for Web services is an XML-based language designed to enable task-sharing for a distributed computing or grid computing environment - including across multiple organizations using a combination of Web services.

BPMN
BPMN (Business Process Modelling Notation) provides businesses with the capability of defining and understanding their internal and external business procedures through a Business Process Diagram giving organizations the ability to communicate these procedures in a standard manner.

BPM Portal
An SBM component that offers users, managers, administrators and developers a unified, customizable portal for single sign-on access to all SBM functionalities to which they are granted permission.

BPM Studio
An SBM component that is an Integrated Development Environment for SBM and enables SBM users to develop and deploy an SBM application without leaving the development environment.

Business Calendar
An SBM feature that accurately calculates the Due Date of tasks, and provides support for multiple business calendars across different time zones.

81

Business Flow
The logical sequence of process activities, related to one another by a triggering activity, to achieve an outcome. It represents a business process that begins with a commitment and ends with the termination of that commitment. In SBM, business flow includes workflow (the flow of all human-performed activities), integration flow (the flow of activities performed by systems) and presentation flow (from a users viewpoint, the flow of data from one Web page to the next).

Business Logic
The control flow and information flow among worksteps that define a business process.

Business Object
A representation of an activity in the business domain, including its name, definition, attributes, behavior, relationships and constraints.

Business Process
A process involving multiple worksteps in the form of operations, interactions and notifications performed by a user, group of users, an external adapter, or a script. Examples of internal business processes are purchasing, expense reporting, help desk, and time card. External processes may include order processing, sales, and customer service.

Business Process Management


The concept of guiding work activities through a multi-step business process in order to improve performance and reduce costs within and across functional business units.

Business Rule
A combination of elements, including validation edits, logon verifications, database lookups, policies and transformations, that represent an enterprises way of doing business.

C
Cluster

Go to Top

In SBM, an integrated set of multiple, electronically connected but physically separated servers. This loosely coupled group of nodes collaborate to provide shared access to the services that each node hosts. To other systems, the cluster appears as a single system.

Control Flow
The sequences of worksteps and workstep conditions, as defined in a process template in BPM Studio or Process Modeler.

D
Dashboard

Go to Top

An SBM feature that provides a graphic overview of the status of several business processes on a single Web page, enabling users to monitor the progress of each process. Users can view business processes across all applications or for a selected application.

Dataslot
A data placeholder that persists through the entire process and defines the information flow of the business process. Dataslots are associated with processes, where they can add information into (Input type) or out of (Output type) worksteps, and appear as editable or read-only fields on a users interface.

E
Expression Editor

Go to Top

An SBM tool that enables users to define complex conditional expressions within a Decision workstep to support their business requirements.
82

G
Group

Go to Top

In SBM, an entity that has as members valid users or other groups who perform related work and have authorized access to specific components.

H
Heatmap

Go to Top

An SBM feature that provides a convenient, graphical tool for managers to visually locate the bottlenecks in the process execution. It helps managers to get an overview of the status of the currently active instances, identify suspended instances, and analyze the history of the completed instances.

Home
A module in BPM Portal through which users interact with SBM. Using the Home module, users complete entries to various tasks and applications, update profile, set preferences, and link to the support infrastructure required to achieve these tasks. The Home module is the primary interface for SBM application users.

I
Infopad

Go to Top

In SBM, a data structure used to capture business metrics, typically displayed as a table with one or two dimensions.

Instance
An individual object within a specific class. In SBM, a self-contained unit that is created each time you use a process template to run an SBM application.

K
KPI

Go to Top

Key Performance Indicator, used in the Balanced Scorecard system, that provides the data translating enterprise goals into a set of measurable objectives.

M
Management

Go to Top

A module in BPM Portal enabling the managers to query, report, and control processes and resources for users of SBM. The Management module is visible only to SBM users who have permissions to access it.

Managed Adapter
In SBM, a Managed Adapter is an implementation of an adapter interface that facilitates data exchange between SBM processes and external applications.

Migration
The process of moving from the use of one operating environment to another operating environment that is typically seen as improvement. Migration can involve moving to new hardware, new software, or both. It may involve a new application, another type of database, or a redesigned network. Migration is also used to refer simply to the process of moving data from one storage device to another. SBM supports data migration as well as application migration.

P
PAM

Go to Top

Process Asset Management recognizes that a companys processes are a unique asset and provides a structure that organizes, stores, and secures process data, enabling users to retrieve information on any of the companys processes.
83

Performer
An entity that executes a workstep. Depending on the workstep type, the performer can be a human user, a group of users, an adapter or other external performer, or a script.

Presentation Flow
The flow of information and user input from one interface to the next. Typically related to a single Activity workstep in the process and generated in a BizSolo environment.

Process Engine
Orchestrates the execution of business processes and also coordinates conversations among process engines based on public processes, which forms the backbone of global business collaboration.

Process Modeler
A stand-alone component that enables users to design templates for basic business processes and store or retrieve them from the Savvion central process repository, and to design and run simulations of processes.

Process Refresh
An SBM feature for replacing the installed process without versioning, facilitating the running process instances to refresh and seamlessly adapt to the new workflow.

Process Repository
A central place (can contain several databases) in which a group of processes is stored and maintained in an organized way, and can be accessed to retrieve information.

Process Template
In SBM, a model of business flow that includes worksteps, connectors and dataslots. After users deploy and install it as an application in the SBM directory structure, they can use the application to create process instances.

R
Rollback

Go to Top

In SBM, a feature that restarts the workflow from a workstep previously selected as the rollback point in the process, performed automatically in the event of a failure.

Role
The actions and activities assigned to a valid SBM user who is a member of a group. In SBM, only members of a group can be assigned a role. A role indicates the relationships of the user in a group context.

Rule Wizard
An interactive utility that enables SBM users to quickly develop rules that can be applied to a business process.

S
SBM Application

Go to Top

An application is an implementation of a business process. It can contain one or more process templates, performers, adapters, customized forms or rules. An application can be deployed, installed and run on BizLogic servers. In SBM, an application is an installed, executable business process that automates a workflow.

SBM Web Services


An SBM component that allows SBM application developers to; a) publish their applications as Web Services, and b) find and convert other available Web Services on the Internet into SBM applications.

Swim Lanes
Used in workflow diagrams to organize complex processes across functional boundaries. For example, seen as horizontal lines on a process map, swim lanes can be used to place individual task steps into different categories that depend on task ownership.
84

T
Task

Go to Top

In SBM, a performer is assigned one or more workitems that the performer sees as tasks. There are two types of tasks: Assigned, which are assigned specifically to you; and Available, which are available to be performed by you or other members of your user group.

U
User
In SBM, a valid human performer with authorized access to specific modules.

Go to Top

W
Workflow

Go to Top

The logical sequence of activities performed by human performers, typically in a BPM Studio or Process Modeler environment. Workflow includes the tasks, procedural steps, organizations or people involved, required input and output information, and tools needed for each activity in a business process.

85

Index

A
applications deploying on a cluster 16 Archiver 77

clusters, deploying in a 16 Conventions in SBM documentation 9 Customer support 9

D
deploying applications on a cluster 16 Designing Server Clusters 11

B
batch script 76, 77 BizPulse Clustering Failover Configuration 48, 59, 71 BPM Portal Clustering 15 BPM Studio Clustering 16

E
EJB Cluster 56 EJB server 56 Environment Variables Setting up 56 EventPublisher 77 Excel Adapter, issues in clustering 17

C
Cluster Tool 18 Cluster Panel 20 Configuration Panel 20 Server Panel 21 Setting up 21 Starting 19 Clustering 10 Adding New and Recovered Nodes 30, 41 Designing 11 for Failover 14 for Load Balancing 14 in SBM 12, 14 Terminology 10 Clustering Framework 18, 32 Cluster Information 21, 37 Cluster Setup in Stages 40

F
Failover BizPulse on Pramati 48 BizPulse on WebLogic 59 BizPulse on WebSphere 71

I
installing SBM as Windows Service 13 iWay Adapters, issues in clustering 17

86

J
JMS server 56

L
License Agreement 2

M
managed adapters in clustering 16

P
Product Support Team 9

R
Restoring Original Configuration Pramati 47 WebLogic 59 WebSphere 73

S
SBM conventions in documentation 9 documentation list 8 user types 7 Setting up EJB Cluster Pramati 46 WebSphere 68 Setting up JMS Cluster WebLogic 56 Setting up Web Cluster Pramati 46 WebLogic 57 WebSphere 68

U
URL Document Server 28, 40 Using Ports Pramati 44 WebLogic 53 WebSphere 67

W
WebSphere Three-node Cluster 65 Two-node Cluster 74 Windows Service, installing SBM as 13

Clustering Guide

87

Вам также может понравиться