WebSphere Process Server for z/OS: Configuring a Network Deployment Environment

advertisement
Front cover
WebSphere Process Server
for z/OS:
Configuring a Network
Deployment Environment
Provides step-by-step configuration
guides
Includes WebSphere Process
Server DB2 setup
Describes a Network
Deployment environment
G Michael Connolly
Jo Johnston
Kevin Senior
ibm.com/redbooks
Redpaper
International Technical Support Organization
WebSphere Process Server for z/OS: Configuring a
Network Deployment Environment
February 2008
REDP-4388-00
Note: Before using this information and the product it supports, read the information in
“Notices” on page v.
First Edition (February 2008)
This edition applies to Version 6, Release 0, Modification 2 of WebSphere Process Server
(product number 5655-N53).
© Copyright International Business Machines Corporation 2008. All rights reserved.
Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP
Schedule Contract with IBM Corp.
Contents
Notices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v
Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
The team that wrote this paper. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
Become a published author . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Comments welcome. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Chapter 1. WebSphere Application Server Network Deployment
configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Initial software configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 WebSphere Application Server configuration . . . . . . . . . . . . . . . . . . . . . . . 6
1.4 Fill out the Configuration Planning Spreadsheet . . . . . . . . . . . . . . . . . . . . . 6
1.4.1 Security domain customization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4.2 Deployment Manager customization . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.4.3 Primary node customization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Chapter 2. WebSphere Process Server primary node configuration with
DB2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.1 Configure WebSphere Process Server primary node . . . . . . . . . . . . . . . . 42
2.2 Augment the nodes to support WebSphere Process Server. . . . . . . . . . . 42
2.2.1 Prepare to work with DB2 z/OS and UNIX System Services . . . . . . 43
2.2.2 Augment the Deployment Manager node . . . . . . . . . . . . . . . . . . . . . 47
2.2.3 Augment the primary node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
© Copyright IBM Corp. 2008. All rights reserved.
iii
2.3 Create WebSphere Process Server databases in DB2. . . . . . . . . . . . . . . 60
2.3.1 Plan the DB2 database names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
2.3.2 Create DB2 databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
2.3.3 Grant access to DB2 databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
2.3.4 Create DB2 tables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.4 Configure a WebSphere Process Server cluster. . . . . . . . . . . . . . . . . . . . 72
2.4.1 Configure the cluster and the first cluster member . . . . . . . . . . . . . . 73
2.4.2 Configure the SCA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
2.4.3 Configure Common Event Infrastructure. . . . . . . . . . . . . . . . . . . . . 108
2.4.4 Configure business process container . . . . . . . . . . . . . . . . . . . . . . 128
2.4.5 Configure BPC Event Collector and BPC Observer . . . . . . . . . . . . 146
2.4.6 Complete the configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
2.4.7 Start the primary node server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
2.5 Verify installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Chapter 3. WebSphere Process Server for z/OS secondary node
customization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
3.1 WebSphere Process Server secondary node configuration steps . . . . . 181
Chapter 4. IBM HTTP Server for z/OS configuration . . . . . . . . . . . . . . . . 205
4.1 HTTP server configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
Appendix A. Errors we encountered . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
GlobalMonitoringMbean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
Human Task Container settings runtime configuration . . . . . . . . . . . . . . . . . 230
Failure to define business process container . . . . . . . . . . . . . . . . . . . . . . . . . 231
Appendix B. Additional material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
Locating the Web material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
Using the Web material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
How to use the Web material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
Related publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
Other publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
Online resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
How to get Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
Help from IBM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
iv
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Notices
This information was developed for products and services offered in the U.S.A.
IBM may not offer the products, services, or features discussed in this document in other countries. Consult
your local IBM representative for information on the products and services currently available in your area.
Any reference to an IBM product, program, or service is not intended to state or imply that only that IBM
product, program, or service may be used. Any functionally equivalent product, program, or service that
does not infringe any IBM intellectual property right may be used instead. However, it is the user's
responsibility to evaluate and verify the operation of any non-IBM product, program, or service.
IBM may have patents or pending patent applications covering subject matter described in this document.
The furnishing of this document does not give you any license to these patents. You can send license
inquiries, in writing, to:
IBM Director of Licensing, IBM Corporation, North Castle Drive, Armonk, NY 10504-1785 U.S.A.
The following paragraph does not apply to the United Kingdom or any other country where such
provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION
PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR
IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT,
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer
of express or implied warranties in certain transactions, therefore, this statement may not apply to you.
This information could include technical inaccuracies or typographical errors. Changes are periodically made
to the information herein; these changes will be incorporated in new editions of the publication. IBM may
make improvements and/or changes in the product(s) and/or the program(s) described in this publication at
any time without notice.
Any references in this information to non-IBM Web sites are provided for convenience only and do not in any
manner serve as an endorsement of those Web sites. The materials at those Web sites are not part of the
materials for this IBM product and use of those Web sites is at your own risk.
IBM may use or distribute any of the information you supply in any way it believes appropriate without
incurring any obligation to you.
© Copyright IBM Corp. 2008. All rights reserved.
v
Information concerning non-IBM products was obtained from the suppliers of those products, their published
announcements or other publicly available sources. IBM has not tested those products and cannot confirm
the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on
the capabilities of non-IBM products should be addressed to the suppliers of those products.
This information contains examples of data and reports used in daily business operations. To illustrate them
as completely as possible, the examples include the names of individuals, companies, brands, and products.
All of these names are fictitious and any similarity to the names and addresses used by an actual business
enterprise is entirely coincidental.
COPYRIGHT LICENSE:
This information contains sample application programs in source language, which illustrate programming
techniques on various operating platforms. You may copy, modify, and distribute these sample programs in
any form without payment to IBM, for the purposes of developing, using, marketing or distributing application
programs conforming to the application programming interface for the operating platform for which the
sample programs are written. These examples have not been thoroughly tested under all conditions. IBM,
therefore, cannot guarantee or imply reliability, serviceability, or function of these programs.
Trademarks
The following terms are trademarks of the International Business Machines Corporation in the United States,
other countries, or both:
Redbooks (logo)
z/OS®
zSeries®
Cloudscape™
CICS®
DB2®
IBM®
IMS™
MVS™
Parallel Sysplex®
Redbooks®
RACF®
System z™
WebSphere®
®
The following terms are trademarks of other companies:
Java, JavaServer, JavaServer Pages, JDBC, JSP, JVM, J2EE, and all Java-based trademarks are
trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.
UNIX is a registered trademark of The Open Group in the United States and other countries.
Other company, product, or service names may be trademarks or service marks of others.
vi
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Preface
WebSphere® Process Server for z/OS® forms part of the WebSphere Business
Integration family of products that provide functionality for implementing
Service-Oriented Architecture (SOA) on System z™.
This paper provides a detailed step-by-step configuration guide to setting up a
clustered WebSphere Application Server Network Deployment cell and a guide
to implementing WebSphere Process Server with DB2® in that cell. We
configure WebSphere Process Server this way because this type of cell is used
in a typical customer production environment. It provides resilience and
scalability.
The team that wrote this paper
This IBM® Redpaper was produced by a team of specialists from around the
world working at the International Technical Support Organization, Poughkeepsie
Center.
G Michael Connolly is an IT consultant at the ITSO, Poughkeepsie Center. He
has more than 30 years of IBM software development experience in both
distributed systems and the mainframe zSeries®. He holds a BA in Humanities
from Villanova University. His areas of expertise include TCP/IP communications,
UNIX® System Services, EWLM, and WebSphere for z/OS.
© Copyright IBM Corp. 2008. All rights reserved.
vii
Jo Johnston is an Accredited Senior IT Specialist, who has recently joined
IBM's System z Technical Sales Team in the United Kingdom. She has worked
on IBM mainframe systems as a systems programmer supporting MVS™,
CICS®, DB2, and IMS™ for more than 30 years. She joined IBM in 2001 working
in Strategic Outsourcing Commercial Platform Support where she provided
day-to-day z/OS, CICS, DB2, and IMS support for customer systems that had
been outsourced to IBM. She now specializes in WebSphere Business
Integration products on System z with specific responsibility for WebSphere
Application Server, WebSphere Process Server, and WebSphere Service
Registry and Repository.
Kevin Senior is an IBM certified IT Specialist working for the Cross Brand team
within IBM Software Group Lab Services, which is part of the IBM Hursley
Laboratory in the United Kingdom. He has 27 years’ experience at IBM as a
Systems Programmer working with IMS, DB2, CICS, and WebSphere on z/OS,
and he specializes in the latter two, this year covering WebSphere Portal Server
and WebSphere Process Server for z/OS. For the ITSO, Kevin coauthored the
IBM Redbooks®, WebSphere Application Server for z/OS V5 and
J2EEWebSphere Application Server for z/OS V5 and J2EE 1.3 Security
Handbook, SG24-6086, and z/OS Getting Started: WebSphere Process Server
and WebSphere Enterprise Service Bus V6, SG24-7378. Although Kevin is
English, he now lives in Italy and works throughout Europe.
Thanks to the following people for their contributions to this project:
Don Bagwell, John Hutchinson
IBM Washington Systems Center
Rich Conway
International Technical Support Organization, Poughkeepsie Center
John Cowel
IBM US
Russ Heald
IBM Hursley
Ron Lotter
IBM Raleigh
Mike Poirier, Dave Bonaccorsi
IBM Middletown, RI
Andrea Schuetz
IBM Böblingen
viii
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Become a published author
Join us for a two- to six-week residency program! Help write a book dealing with
specific products or solutions, while getting hands-on experience with
leading-edge technologies. You will have the opportunity to team with IBM
technical professionals, Business Partners, and Clients.
Your efforts will help increase product acceptance and customer satisfaction. As
a bonus, you will develop a network of contacts in IBM development labs, and
increase your productivity and marketability.
Find out more about the residency program, browse the residency index, and
apply online at:
ibm.com/redbooks/residencies.html
Comments welcome
Your comments are important to us!
We want our papers to be as helpful as possible. Send us your comments about
this paper or other IBM Redbooks in one of the following ways:
򐂰 Use the online Contact us review Redbooks form found at:
ibm.com/redbooks
򐂰 Send your comments in an e-mail to:
redbooks@us.ibm.com
򐂰 Mail your comments to:
IBM Corporation, International Technical Support Organization
Dept. HYTD Mail Station P099
2455 South Road
Poughkeepsie, NY 12601-5400
Preface
ix
x
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
1
Chapter 1.
WebSphere Application
Server Network Deployment
configuration
In this chapter we describe the configuration of a WebSphere Process Server for
z/OS horizontal cluster by starting with the setup of the WebSphere Application
Server. (This chapter does not describe the System Modification
Program/Extended (SMP/E) installation of the software.)
When configuring our WebSphere Application Server cell, we used the
spreadsheet in the white paper, WebSphere for z/OS - Configuration Planning
Spreadsheet, PRS1331, on the IBM Techdocs site
(http://www.ibm.com/support/techdocs/). The usage of this spreadsheet and of
the many important best practices for configuring a WebSphere Application
Server for z/OS cell are described in the white paper, WebSphere z/OS V6 WSC Sample ND Configuration, WP100653, which you can obtain here:
http://www.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/WP100653
Although we illustrate how we used the spreadsheet to configure our cell, the
choices we made may not be appropriate for your installation. For example, we
did not configure our Deployment Manager so it could run on any Logical
Partition (LPAR) as described in the white paper, WebSphere for z/OS
Version 6 - Starting DMGR on Another MVS Image, WP100585. We strongly
© Copyright IBM Corp. 2008. All rights reserved.
1
recommend you obtain the white papers WP100653 and WP100585 when
configuring your cell and follow the best practices they describe.
1.1 Architecture
We started by creating a Network Deployment cell comprising a daemon and a
Deployment Manager. Next we augmented the Deployment Manager to support
the WebSphere Process Server. We then created an empty node and
augmented it to support the WebSphere Process Server. We refer to this first
managed node as the “primary node.” Then we federated the augmented primary
node into the Network Deployment cell.
After the WebSphere Process Server was configured in the primary node, a
secondary node was created on a separate LPAR; the secondary node was
augmented to support the WebSphere Process Server and then federated into
the cell. Then a horizontal cluster was created across the two nodes.
The cell that we defined is a4cell. Initially this cell comprised only the Deployment
Manager’s node, a4dmnode. Then the empty node a4nodea was defined but not
federated. Prior to federation the empty node exists within a separate cell that, for
our configuration, was called a4basea. That empty node was augmented to
support the WebSphere Process Server.
2
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
The address spaces represented by the cell at this stage are illustrated in
Figure 1-1 and are as follows:
򐂰
򐂰
򐂰
򐂰
Daemon A4DEMN
Primary node’s node agent A4AGNTA
Network Deployment Manager A4DMGR
Network Deployment Manager’s servant A4DMGRS
SC48 LPAR –
wtsc48.itso.ibm.com
Cell a4cell
Daemon
A4DEMN
DMGR Node
a4dmnode
Deployment
Manager
Cell a4basea
Daemon
A4DEMNA
Node a4nodea
Node Agent
A4AGNTA
Controller
A4DMGR
Servant
A4DMGRS
Admin
DB2
Figure 1-1 Network Deployment cell A4 and the primary empty node
Notice that no WebSphere Application Server exists at this stage. The application
server is created later when the cluster is created. Notice also that the node
agent, a4agnta, is shown in a dashed box because the empty node is
unfederated at this stage. The node agent is not started until after the node is
federated into the cell.
After the empty node has been augmented to support the WebSphere Process
Server for z/OS, it is federated into the cell by running the BBOWMNAN job.
After the node has been federated, a cluster can be created together with the first
cluster member. A cluster member is just another name for an application server
instance that is part of a cluster. For our A4 cell we defined the cluster a4cl01 and
Chapter 1. WebSphere Application Server Network Deployment configuration
3
the server a4sr01a. When the cluster and cluster member have been configured,
the following WebSphere Process Server components can be configured:
򐂰 Service Component Architecture (SCA)
򐂰 Common Event Infrastructure (CEI)
򐂰 Business Process Choreographer (BPC)
򐂰 Business Process Choreographer Observer (BPCO)
The configuration at this stage is illustrated in Figure 1-2.
SC48 LPAR –
wtsc48.itso.ibm.com
Cell a4cell
Daemon
A4DEMN
DMGR Node
a4dmnode
Deployment
Manager
Controller
A4DMGR
Servant
A4DMGRS
Admin
Node a4nodea
Node Agent
A4AGNTA
Cluster
A4CL01
Server a4sr01a
Controller
A4SR01A
Adjunct
A4SR01AA
Servant(s)
A4SR01AS
WPS
DB2
Figure 1-2 A4 cell with federated primary node, cluster, and the first server
When all the WebSphere Process Server for z/OS components have been
configured, the server a4sr01a can be started and tested.
The final stage is to define a secondary empty node on a second LPAR in your
Parallel Sysplex®. That secondary node must be augmented to support
WebSphere Process Server and then federated into the cell. Then a second
cluster member (server) is created in the secondary node by cloning the first
server.
To create a horizontal cluster in this manner, a Parallel Sysplex configured with
DB2 data sharing is a prerequisite. If you intend to use WebSphere MQ to
4
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
provide messaging services, you need to configure WebSphere MQ shared
queues. The clustered environment is illustrated in Figure 1-3.
DVIPA - a4.http.itso.ibm.com
LPAR SC48 – wtsc48.itso.ibm.com
LPAR SC52 – wtsc52.itso.ibm.com
HTTP Server
webwps48
a4cell
HTTP Server
webwps52
A4DEMN
a4dmnode
Deployment
Manager
CR
A4DEMN
A4AGNTA
a4nodea
Server A4SR01A
a4nodeb
Cluster
A4CL01
SR
SR
CR
Admin
CRA
A4AGNTB
Server A4SR01B
SR
CR
WPS
WPS
CRA
D8I1
Shared DB2 database
D8I3
RACF
Shared RACF database
RACF
MQR1
Shared queues
MQR3
Figure 1-3 A4 cell with federated, secondary node containing a second server
One of the objectives of creating a horizontal cluster is to balance the workload
across multiple LPARs. The IBM Sysplex Distributor can do that, but you need to
define one or more distributed Dynamic Virtual IP Addresses (DVIPAs). In
addition, to maintain HTTP session affinity to a particular server, you have to
configure an HTTP server with the WebSphere plugin. We created an HTTP
server on each LPAR, as shown inFigure 1-3.
The distributed DVIPA a4.http.itso.ibm.com was configured to balance HTTP
requests between these HTTP servers.
Note: For each of the WebSphere Process Server components, we used
separate DB2 databases to avoid duplicate table space names - in preference
to using one DB2 database for everything.
Chapter 1. WebSphere Application Server Network Deployment configuration
5
1.2 Initial software configuration
We used the following software levels in our installation:
򐂰 z/OS V1.8
򐂰 DB2 V8 (data store for the relational databases)
򐂰 WebSphere Application Server V6.0.2.19.
򐂰 WebSphere Process Server V6.0.2.1 (extension to V6.0.2.19)
Note: We recommend using at least WebSphere Application Server Version
6.0.2.19 because it contains specific fixes that are required to enable
WebSphere Process Server in a WebSphere Application Server cell.
1.3 WebSphere Application Server configuration
In this section, we configure the WebSphere Application Server cell.
In summary the process is as follows:
1. Plan the cell’s naming convention and port assignments by filling out the
planning spreadsheet.
2. Configure the Security Domain.
3. Configure the Deployment Manager.
4. Configure the primary empty node, but stop before the step that federates the
node into the cell.
These steps are described in detail in the sections that follow.
1.4 Fill out the Configuration Planning Spreadsheet
We downloaded a copy of the WebSphere Application Server for z/OS
Configuration Planning Spreadsheet from the Techdocs Web site located at:
http://www.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/PRS1331
Use the spreadsheet version that matches your WebSphere Application Server
version. We chose the ISPF panel Version 6.0.2 (see Figure 1-4 on page 7).
6
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 1-4 Download the spreadsheet
Chapter 1. WebSphere Application Server Network Deployment configuration
7
Fill in all the necessary values according to your naming conventions in the
following worksheets:
򐂰 Variables
򐂰 Security Domain
򐂰 DMGR
򐂰 Empty Managed Node
The other worksheets on the IBM Techdocs Web site are used for configuring a
standalone server or for federating a standalone server into a network
deployment server. Our completed spreadsheet is included in “Appendix B,
“Additional material” on page 235.”
1.4.1 Security domain customization
This section describes how to configure the security domain.
Define variables
We started the ISPF dialog by entering the TSO command shown in Figure 1-5.
Figure 1-5 Open the WebSphere customization ISPF dialog
This command is provided at the top of the Security Domain worksheet and can
be copied from the spreadsheet into the command line in TSO.
The ISPF Configuration dialog box opens.
1. First configure the security domain.
a. Enter option 1, Configure a Security Domain.
b. Select option 1, Allocate target data sets.
8
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 1-6 lists the data set names from the worksheet.
Figure 1-6 Security Domain worksheet - data set names
2. Enter the high-level qualifier for the .CNTL and .DATA data set names from
the worksheet into the ISPF dialog box (see Figure 1-7).
Figure 1-7 ISPF dialog Allocate Target Data Sets
3. Press Enter to allocate the .CNTL and .DATA data sets. Then select option 2,
Define variables.
At this point, you fill in the variables you entered in the configuration
spreadsheet. If your RACF® administrator is using AUTOGID and AUTOUID
to assign GIDs and UIDs, you do not need to worry about the numbers
entered on this panel at this stage. The BBOSBRAK member that is
generated in the .DATA data set can be edited to include AUTOGID and
AUTOUID. Then, when the groups and userids have been created, you can
come back to the WebSphere ISPF customization dialog and enter the
numbers that were assigned before proceeding to the BBOSBRAM job.
Chapter 1. WebSphere Application Server Network Deployment configuration
9
Figure 1-8 shows the first part of the Security Domain Configuration
spreadsheet.
Figure 1-8 Security Domain Configuration worksheet (1 of 2)
10
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 1-9 shows the variables entered into the ISPF panel.
Figure 1-9 ISPF panel Security Domain Configuration (1 of 2)
Chapter 1. WebSphere Application Server Network Deployment configuration
11
Figure 1-10 shows the second part of the Security Domain Configuration
worksheet.
Figure 1-10 Security Domain Configuration worksheet (2 of 2)
12
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 1-11 shows the second part of the ISPF dialog, Security Domain
Configuration.
Figure 1-11 ISPF dialog Security Domain Configuration (2 of 2)
4. After entering the variables into the ISPF panels, select option 3, Save
security domain variables.
We saved them to data set A4CELL.A4SECDM.SAVECFG.
5. Select option 4, Generate customization jobs, which will generate the jobs
and parameters in the target data sets created earlier.
6. When the Generate customization jobs panel prompts you for a valid jobcard,
select option 5, View instructions. This step displays member BBOSDINS on
the target CNTL library. In our configuration, the CNTL library is
A4CELL.A4SECDM.CNTL.
Chapter 1. WebSphere Application Server Network Deployment configuration
13
Run the jobs
To run the generated jobs, follow the instructions provided in member
BBOSDINS.
Note: We performed the configuration using a userid that did not have UID(0).
Instead our userid had access to the following UNIXPRIV RACF profiles:
򐂰
򐂰
򐂰
򐂰
򐂰
CONTROL access to SUPERUSER.FILESYS
UPDATE access to SUPERUSER.FILESYS.MOUNT
READ access to SUPERUSER.FILESYS.CHOWN
READ access to SUPERUSER.FILESYS.CHANGEPERMS
READ access to SUPERUSER.FILESYS.PFSCTL
Access to these UNIXPRIV profiles meant that we did not require UID=0 to
run job BBOSBRAM or any subsequent jobs that required UID=0 according to
the instructions in BBOSDINS.
1.4.2 Deployment Manager customization
Define variables
When all Security Domain Configuration jobs have been run successfully, go
back to the entry panel of the customization dialog.
1. Select option 2, Create Network Deployment cells and nodes.
2. Select option 1, Create Network Deployment cell.
3. Select option 1, Load security domain variables.
4. On the next panel, enter the name of the data set containing the security
domain variables, which in our case is A4CELL.A4SECDM.SAVECFG.
5. Select option 2, Allocate target data sets.
Figure 1-12 lists the target data set names from our spreadsheet.
Figure 1-12 Target data set names
6. After allocating the data sets, select option 3, Define variables, which takes
you to the ISPF panel Define Variables to Configure Deployment Manager
Node.
7. Select option 1, System Locations.
14
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Fill in the variables you entered in the DMGR worksheet for the Deployment
Manager configuration. Figure 1-13 shows the first part of the System
Locations worksheet as we defined it in our installation.
Figure 1-13 System Locations worksheet (1 of 2)
Chapter 1. WebSphere Application Server Network Deployment configuration
15
Figure 1-14 shows the variables as entered into the ISPF panel Systems
Locations (1 of 2).
Figure 1-14 ISPF panel System Locations (1 of 2)
Figure 1-15 shows the second part of the System Locations worksheet. The path
to the WebSphere Application Server product directory should not be the mount
point of the HFS/ZFS that contains the WebSphere Application Server for the
z/OS product. Instead you should create an intermediate symbolic link that
references the physical mount point.
Figure 1-15 System Locations worksheet (2 of 2)
16
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
For a full explanation of the importance of using intermediate symbolic links, refer
to the previously cited white paper WP100653 and to the white paper,
WebSphere Application Server for z/OS - Planning for Test, Production and
Maintenance, WP100396, which you can obtain from:
http://www.ibm.com/support/techdocs/atsmastr.nsf/Web/Techdocs
Figure 1-16 shows the variables as entered into the ISPF panel System
Locations (2 of 2).
Figure 1-16 ISPF panel System Locations (2 of 2)
8. After you enter all variables for the System Locations panels, select option 2,
System Environment Customization.
Here you fill in the variables you entered in the configuration worksheet for the
System Environment Customization part of the Deployment Manager
configuration.
Chapter 1. WebSphere Application Server Network Deployment configuration
17
Figure 1-17 shows the System Environment Customization worksheet (1 of 2) as
we defined it for our installation. You will note a third panel in the ISPF dialog box;
this third panel is not currently in the planning spreadsheet. Thus, on the
spreadsheet, you will find System Environment Customization (1 of 2) and
(2 of 2), whereas on the ISPF panels, you will find System Environment
Customization (1 of 3), (2 of 3), and (3 of 3).
Figure 1-17 System Environment Customization worksheet (1 of 2)
Figure 1-18 shows the data as entered into the ISPF panel System Environment
Customization (1 of 3).
Figure 1-18 DMGR ISPF panel System Environment Customization (1 of 3)
18
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 1-19 shows the System Environment Customization worksheet (2 of 2)
with the values set for our environment.
Figure 1-19 DMGR System Environment Customization worksheet (2 of 2)
Figure 1-20 shows the data as entered into the ISPF panel System Environment
Customization (2 of 3). For a production cell, you should define the error log
stream as resident in the coupling facility. Because the configuration of our
system was solely for testing, we set the Is log stream CF resident? field to N.
d
Figure 1-20 DMGR ISPF panel System Environment Customization (2 of 3)
Because ours was a test cell, we also reduced the space allocations on the log
data sets from 3,000 to 300.
Chapter 1. WebSphere Application Server Network Deployment configuration
19
Note: If you decide to use a log stream, you must first define a structure to the
coupling facility to hold the log streams and then add the log streams to that
structure.
The same error log stream can be shared by all servers in a cell; however, you
may prefer to define a separate log stream for each cluster.
JCL for defining a log structure can be found in member BBORRSLC in
WebSphere’s SBBOJCL. Although this JCL is an example for setting up log
streams for Resource Recovery Services (RRS), you can use DEFINE
STRUCTURE as an example when creating a structure for the error log
structure.
JCL for defining the error log stream is customized in member BBOERRLG
when you configure the Deployment Manager. For our A4 cell, for example,
the BBOERRLG job was in A4CELL.A4DMGR.CNTL(BBOERRLG).
Figure 1-21 shows the data as entered into the ISPF panel System Environment
Customization (3 of 3) to configure the CTRACE.
Figure 1-21 DMGR ISPF panel System Environment Customization (3 of 3)
Setting this parameter only tells WebSphere the suffix of its CTIBBOxx member
in SYS1.PARMLIB where “xx” is the suffix you specify on the panel.
For instructions on enabling CTRACE, refer to the chapter, “Setting up
component trace (CTRACE),” in the Infocenter article, WebSphere Application
Server (z/OS), V 6.0.x. You can access the article here:
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=/
com.ibm.websphere.zseries.doc/info/zseries/ae/ttrb_setupCTRACE.html
We have summarized the steps we performed when setting up CTRACE in “Set
up CTRACE” on page 27.
20
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
9. When the System Environment Customization is complete, select option 3, Server
Customization. Fill in the variables you entered in the spreadsheet for the
Server Customization part of the DMGR Customization worksheet.
Figure 1-22 shows part (1 of 4) of the Server Customization from the DMGR’s
worksheet as we defined it for our installation.
Figure 1-22 DMGR Server Customization worksheet (1 of 4)
Chapter 1. WebSphere Application Server Network Deployment configuration
21
Figure 1-23 shows the equivalent data as entered into the first ISPF panel Server
Customization (1 of 4) when configuring the Deployment Manager.
Figure 1-23 DMGR ISPF panel Server Customization (1 of 4)
22
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 1-24 shows part of the Server Customization worksheet (2 of 4) as we
defined it for our installation.
Figure 1-24 DMGR Server Customization worksheet (2 of 4)
Figure 1-25 shows the equivalent data as entered into the ISPF panel Server
Customization (2 of 4) when configuring the Deployment Manager.
Figure 1-25 DMGR ISPF panel Server Customization (2 of 4)
Chapter 1. WebSphere Application Server Network Deployment configuration
23
Figure 1-26 shows part of the Server Customization worksheet (3 of 4) as we
defined it for our installation.
Figure 1-26 DMGR Server Customization worksheet (3 of 4)
24
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 1-27 shows the equivalent data as entered into the ISPF panel Server
Customization (3 of 4) when configuring the Deployment Manager.
Figure 1-27 ISPF panel Server Customization (3 of 4)
Chapter 1. WebSphere Application Server Network Deployment configuration
25
Figure 1-28 shows part of the Server Customization worksheet (4 of 4) as we
defined it for our installation.
Figure 1-28 Server Customization worksheet (4 of 4)
Figure 1-29 shows the equivalent data as entered into the ISPF panel Server
Customization (4 of 4) when configuring the Deployment Manager.
Figure 1-29 ISPF panel Server Customization (4 of 4)
26
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
10.After you enter all variables, you select option 4, View Security Domain
Configuration Panels and verify that the variables displayed are what you
expect for the cell you are configuring.
Run the jobs
Follow the instructions in member BBOCCINS. We ran all the jobs detailed in the
instructions without using UID=0.
Job BBODBRAJ customizes Resource Access Control Facility (RACF)
commands into member BBODBRAK in the .DATA library. We recommend you
review these commands carefully with your RACF administrator before
submitting job BBODBRAK, which executes them.
We made changes to the profiles to convert them into generic profiles that apply
to any server in the cell. For example, we created a RACF STARTED class profile
in the form A4*.* to associate all started tasks that began with the string “A4” with
the controller userid, A4ACRU. Later we defined additional generic profiles in the
form A4%%%%%A.* and A4%%%%%S.* to associate the userid A4ASRU with
the adjunct and the servant. For details, see “Set up RACF profiles for the
servant and adjunct” on page 45.
You can read about customizing these profiles to be more generic in the white
paper, WebSphere z/OS V6 - WSC Sample ND Configuration, WP100653, which
can be obtained from the Techdocs Library Web site:
http://www.ibm.com/support/techdocs/atsmastr.nsf/Web/Techdocs
After all jobs complete successfully, we started the Deployment Manager.
We checked the job logs for errors and the location of the ffdc logs to see if any
log files had been created. The location of the ffdc logs is:
<dmgr_root>/profiles/default/logs/ffdc
In our case, the value of <dmgr_root> was:
/wasa4config/a4cell/a4dmnode/DeploymentManager
Set up CTRACE
For instructions on enabling CTRACE, refer to the chapter “Setting up
component trace (CTRACE)” in the Infocenter article, WebSphere Application
Server (z/OS), Version 6.0.x. That information can be accessed at:
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=/
com.ibm.websphere.zseries.doc/info/zseries/ae/ttrb_setupCTRACE.html
Chapter 1. WebSphere Application Server Network Deployment configuration
27
When you configure the WebSphere cell using the WebSphere Application
Server for z/OS ISPF dialogs, you specify the suffix of the SYS1.PARMLIB
CTIBBOxx member that contains the CTRACE parameters used by the cell. The
suffix you enter on the ISPF panel is the WebSphere environment variable
ras_trace_ctraceParms.
You must manually create this member. Example 1-1 shows the CTIBBOA4
member we coded for use by our A4 cell.
Example 1-1 SYS1.PARMLIB member CTIBBOA4
/* ================================================================ */
/* CTIBBOA4 for A4 cell
*/
/* ================================================================ */
TRACEOPTS
/* ---------------------------------------------------------------- */
/* -Start a ctrace writer. Remove comments to start the PROC
*/
/* during CB Series address space initialization.
*/
/* ---------------------------------------------------------------- */
WTRSTART(A4BBOWTR)
*/
/*
*/
/* ---------------------------------------------------------------- */
/* -Indicate that tracing is active for CB Series:
*/
/* ---------------------------------------------------------------- */
OFF
/* ---------------------------------------------------------------- */
/* -Connect to ctrace external writer (BBOWTR):
*/
/* (Note that the WTR value must match the value for the started */
/* ctrace external writer, wtrstart.)
*/
/* ---------------------------------------------------------------- */
WTR(A4BBOWTR)
Notice that we decided to have the trace writer start automatically when any
component of the cell is started. We also decided to set CTRACE to OFF,
preferring to manually enable CTRACE when required using the z/OS TRACE
command.
28
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
You must also create JCL in SYS1.PROCLIB for the task started by trace writer.
The JCL we used is shown in Example 1-2. Notice the use of the variable
&SYSCLONE. Because this JCL procedure will be shared across the sysplex,
you must use a variable like &SYSCLONE so that a separate CTRACE data set
is used on each LPAR.
Example 1-2 JCL for the A4 cell task started by CTRACE writer
//A4BBOWTR PROC
//BBOWTR EXEC
PGM=ITTTRCWR,REGION=32M
//TRCOUT01 DD DISP=SHR,DSN=A4CELL.SC&SYSCLONE..CTRACE
//
The data set specified on the TRCOUT01 DD statement in Example 1-2 must be
created manually using JCL as shown in Example 1-3. It is important to specify
the DSORG=PS parameter.
Example 1-3 Allocate a CTRACE data set
// EXEC PGM=IEFBR14
//TRACE1 DD DSN=A4CELL.SC48.CTRACE,UNIT=3390,VOL=SER=HPK19A,
//
SPACE=(CYL,(20,0)),DISP=(NEW,CATLG),DSORG=PS
//TRACE2 DD DSN=A4CELL.SC52.CTRACE,UNIT=3390,VOL=SER=HPK19A,
//
SPACE=(CYL,(20,0)),DISP=(NEW,CATLG),DSORG=PS
1.4.3 Primary node customization
This section describes how to customize the primary node.
Define variables
When the Deployment Manager has been configured and started successfully,
go back to the entry panel of the customization dialog.
We started the ISPF dialog by entering the following TSO command. Note that
we used a new APPL(A4NA) so the variables for the primary node (node A) were
separate from those used for the Deployment Manager (see Figure 1-30).
Figure 1-30 Start the WebSphere customization ISPF dialog for primary empty node
Chapter 1. WebSphere Application Server Network Deployment configuration
29
1. Select option 2, Create Network Deployment cells and nodes.
2. Select option 2, Create an empty managed node.
3. Select option 1, Load security domain variables.
4. On the next panel, enter the name of the data set containing the security
domain variables, which in our case is A4CELL.A4SECDM.SAVECFG.
5. Select option 2, Allocate target data sets.
Figure 1-31 lists the target data set names from our spreadsheet.
Figure 1-31 Empty node A target data set names
6. After allocating the data sets, select option 3, Define variables. You access
the ISPF panel Define Variables to Configure a Managed Node.
7. Select option 1, System Locations.
At this point, you must fill in the variables you entered in the configuration
worksheet for the Empty Managed Node configuration. Figure 1-32 shows the
first part of the System Locations spreadsheet as we defined it in our
installation.
Figure 1-32 System Locations worksheet (1 of 2)
30
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 1-33 shows the variables as entered into the ISPF panel System
Locations (1of 2).
Figure 1-33 ISPF panel System Locations (1 of 2)
Figure 1-34 shows the second part of the System Locations worksheet.
Figure 1-34 System Locations worksheet (2 of 2)
Chapter 1. WebSphere Application Server Network Deployment configuration
31
Figure 1-35 shows the variables as entered into the ISPF panel System
Locations (2 of 2).
Figure 1-35 ISPF panel System Locations (2 of 2)
8. After you enter all variables for the System Locations panels, select option 2,
System Environment Customization.
Here you fill in the variables you entered in the configuration spreadsheet for
the System Environment Customization part of the Empty Managed Node
configuration.
Figure 1-36 shows the System Environment Customization worksheet (1 of 4) as
we defined it for our installation.
Figure 1-36 System Environment Customization worksheet (1 of 1)
32
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 1-37 shows the data as entered into the ISPF panel System Environment
Customization (1 of 3).
Figure 1-37 System Environment Customization worksheet (1 of 3) for empty node
The spreadsheet does not include sections for System Environment
Customization (2 of 3) and System Environment Customization (3 of 3), but the
values you need to enter are the same as those shown for the identical panels in
the DMGR worksheet.
Figure 1-38 shows the data as entered into the ISPF panel System Environment
Customization (2 of 3) when configuring an empty managed node.
Figure 1-38 System Environment Customization (2 of 3) for empty node
Chapter 1. WebSphere Application Server Network Deployment configuration
33
Figure 1-39 shows the data as entered into the ISPF panel System Environment
Customization (3 of 3) when configuring an empty managed node.
Figure 1-39 ISPF panel System Environment Customization (3 of 3) for empty node
9. When the System Environment Customization is complete, select option 3,
Server Customization.
Fill in the variables you entered in the configuration spreadsheet for the
Server Customization worksheet part of the Empty Managed Node
configuration.
Figure 1-40 shows part (1 of 4) of the Empty Managed Node Customization
worksheet as we defined it for our installation.
Figure 1-40 Server Customization worksheet (1 of 4) for empty managed node
34
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 1-41 shows the equivalent data entered into the first ISPF panel Server
Customization (1 of 4) when configuring an empty node.
Figure 1-41 ISPF panel Server Customization worksheet (1 of 4) for empty managed
node
Chapter 1. WebSphere Application Server Network Deployment configuration
35
Figure 1-42 shows part (2 of 4) of the Server Customization worksheet as we
defined it for our installation.
Figure 1-42 Server Customization worksheet (2 of 4) for empty managed node
36
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 1-43 shows the equivalent data as entered into the ISPF panel Server
Customization (2 of 4) when configuring an empty managed node.
Figure 1-43 ISPF panel Server Customization (2 of 4) for empty managed node
Figure 1-44 shows part of the Server Customization worksheet (3 of 4) as we
defined it for our installation when configuring an empty managed node.
Figure 1-44 Server Customization worksheet (3 of 4) for empty managed node
Chapter 1. WebSphere Application Server Network Deployment configuration
37
Figure 1-45 shows the equivalent data as entered into the ISPF panel Server
Customization (3 of 4) when configuring an empty managed node.
Figure 1-45 ISPF panel Server Customization (3 of 4) for empty managed node
38
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 1-46 shows part of the Server Customization worksheet (4 of 4) as we
defined it for our installation when configuring an empty managed node.
Figure 1-46 Server Customization worksheet (4 of 4) for empty managed node
Chapter 1. WebSphere Application Server Network Deployment configuration
39
Figure 1-47 shows the equivalent data as entered into the ISPF panel Server
Customization (4 of 4) when configuring an empty managed node.
Figure 1-47 ISPF panel Server Customization (4 of 4) for empty managed node
10.After you enter all variables, select option 4, View Security Domain
Configuration Panels and verify that the variables displayed are what you
expect for the cell you are configuring.
Run the jobs
Follow the instructions in member BBOMNINS; however, do not run
BBOWMNAN at this time. Stop after you have run the job BBOMHFSB.
We ran these jobs without using UID=0.
40
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
2
Chapter 2.
WebSphere Process Server
primary node configuration
with DB2
After you create a WebSphere Application Server cell with a Deployment
Manager and a primary empty node, you can add WebSphere Process Server to
the cell. This chapter describes the process you use to do so.
You start by working with the Deployment Manager and the primary node. Once
you have a working WebSphere Process Server in the primary node, you can
add secondary nodes to the cluster.
© Copyright IBM Corp. 2008. All rights reserved.
41
2.1 Configure WebSphere Process Server primary node
The main steps involved in configuring WebSphere Process Server in the
primary node are as follows:
1. Augment the Deployment Manager’s node and the empty node to support
WebSphere Process Server.
2. Create the WebSphere Process Server databases in DB2 z/OS.
3. Configure a WebSphere Process Server cluster with a cluster member
(server). The following WebSphere Process Server components are added to
the cluster in this phase:
–
–
–
–
–
Service Component Architecture (SCA)
Enterprise Service Bus (ESB)
Common Event Infrastructure (CEI)
Business Process Choreographer (BPC)
Business Process Choreographer Observer (BPCO)
4. Run the installation verification programs (IVPs).
2.2 Augment the nodes to support WebSphere Process
Server
In this section, we describe how the WebSphere Application Server cell is
augmented to support WebSphere Process Server for z/OS and how the empty
node is federated into the cell. In addition, we explain how to prepare the cell so it
can work with DB2.
In summary the steps are as follows:
1. Prepare to work with DB2 z/OS and UNIX System Services.
2. Augment the Deployment Manager’s node.
3. Augment the empty node and federate it into the cell.
These steps are described in the sections that follow.
42
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
2.2.1 Prepare to work with DB2 z/OS and UNIX System Services
Before starting to augment the cell, you prepare the UNIX environment of the
userid that will run the jobs. In addition, you prepare the cell to work with DB2 on
z/OS.
1. Update the started task JCL so it contains the DB2 libraries.
2. Create a DB2 JCC properties file that determines which DB2 system the
WebSphere Process Server will work with.
3. Create RACF userids and groups to support the userids that will be used to
access DB2 and the many roles that WebSphere Process Server uses.
4. Create RACF STARTED class profiles for the servant and adjunct that are
created later.
5. Set up the UNIX System Services environment for the userid that will
configure WebSphere Process Server.
These steps are described in the sections that follow.
Add DB2 libraries to the started task JCL
WebSphere Process Server accesses DB2 for z/OS, and the DB2 load libraries
must be added to the STEPLIB of the servant regions (including the adjunct) if
they are not defined in the system LINKLST.
1. First we updated the following members of SYS1.PROCLIB:
– A4MGSRZ
– A4CRAAZ
– A4ASRAZ
2. We added the highlighted SDSN* libraries:
//STEPLIB
//
//
//
//
DD
DD
DD
DD
DD
DISP=SHR,DSN=BB46048.SBBOLD2
DISP=SHR,DSN=BB46048.SBBOLOAD
DISP=SHR,DSN=DB8IU.SDSNEXIT
DISP=SHR,DSN=DB8I8.SDSNLOAD
DISP=SHR,DSN=DB8I8.SDSNLOD2
Note that the customized SDSNEXIT DD statement must occur before the
SDSNLOAD DD statement.
Any libraries added to the WebSphere STEPLIBs must be authorized by APF
and program-controlled by RACF. For example, we used the following
command to program-control the SDSNLOD2 library:
RALT PROGRAM * ADDMEM('DB8I8.SDSNLOD2'//NOPADCHK)
Chapter 2. WebSphere Process Server primary node configuration with DB2
43
Create a DB2 JCC properties file
When using a type 2 JDBC connection to DB2 z/OS, the name of the DB2
subsystem you wish to connect to is specified on the property db2.jcc.ssid, which
is held within a DB2 JCC properties file.
We recommend you give some thought to the name of the DB2 JCC properties
file. WebSphere locates this file because the JVM™ argument
db2.jcc.propertiesFile sets the specific location of the file. (That JVM argument is
set by the zWPSConfig.sh script that you run later.)
When you use db2.jcc.propertiesFile to set the location of the JCC properties file,
you can call the file anything you like. However, when a batch job or a shell has to
make requests to DB2 over a JDBC type 2 connection, it often does not pass
property db2.jcc.propertiesFile to specify the location of the DB2 JCC properties
file. In that case, DB2 searches the classpath for the file
DB2JccConfiguration.properties. If it fails to find a file of that name, DB2 tries to
contact the DB2 whose SSID is coded in the DSNHEDCP module located in the
customized SDSNEXIT library.
We created a directory /u/db8iu for the file and named our file properties. Both
the userid running the configuration jobs and the userid of the Application Server
Control Region require read access to the file.
In the .profile shown later in Example 2-2 on page 46, we included the following
statement:
export STEPLIB=DB8IU.SDSNEXIT ...
The DSNHDECP module in the customized DB8IU.SDSNEXIT contained the
correct SSID for our DB2; therefore, batch jobs or shells running under this
.profile can connect to the correct DB2 because of the STEPLIB setting.
Alternatively, if you create your JCC properties file as
/u/db8i/DB2JccConfiguration.properties, you can add the directory /u/db8i to the
classpath within the .profile. The DB2JccConfiguration.properties file in the
classpath takes precedence over DSNHDECP in the SDSNEXIT library.
Whatever approach you decide to take, you have to create a DB2 JCC properties
file containing the property db2.jcc.ssid. For our DB2 system we coded
db2.jcc.ssid=D8I1.
In our case, D8I1 is the DB2 subsystem’s member name, not the group-sharing
name, but you can code the group-sharing name.
44
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Set up RACF userid and group
We used job A4RACF to create the RACF users and groups shown in Figure 2-1.
Figure 2-1 RACF users and groups for A4 cell
Set up RACF profiles for the servant and adjunct
RACF-started class profiles are needed to provide userids for the servant and
adjunct that will be created later. Normally these profiles are created by job
BBOCBRAK when you configure a standalone server, but because we are
working with an empty node these profiles have to be created manually.
We created the following generic profiles:
RDEF STARTED A4%%%%%A.*
RDEF STARTED A4%%%%%S.*
STDATA(USER(A4ASRU) GROUP(A4CFG) TRACE(YES))
STDATA(USER(A4ASRU) GROUP(A4CFG) TRACE(YES))
Note: We also created the following generic profile that assigned the controller
userid to all controllers and daemons:
RDEF STARTED A4*.* STDATA(USER(A4ACRU) GROUP(A4CFG) TRACE(YES))
Chapter 2. WebSphere Process Server primary node configuration with DB2
45
If you do not create these profiles, the servant and the adjunct start up with the
wrong userid, which may cause access problems (see Example 2-1).
Example 2-1 RACF access error
ICH408I USER(STC
) GROUP(SYS1
) NAME(STARTED TASK
A4CELL.ERROR.LOG CL(LOGSTRM )
INSUFFICIENT ACCESS AUTHORITY
ACCESS INTENT(UPDATE ) ACCESS ALLOWED(READ
)
)
In addition, you must permit read access to the CBIND profiles. We gave our
RACF group A4CFG access using the following commands:
pe CB.BIND.A4.* class(CBIND) id(A4CFG)
setr raclist(CBIND) refresh
pe CB.A4.*
class(CBIND) id(A4CFG)
setr raclist(CBIND) refresh
Set up UNIX System Services
For each of the userids created in the previous step, you must create a home
directory. Userids running a job must have a .profile file in their home directory,
which gives them access to java and db2jcc. Example 2-2 lists the statements in
the .profile.
Example 2-2 Our .profile contents
PATH=$PATH:$HOME:
#JAVA
export PATH=/usr/lpp/java/J1.4/bin:$PATH
export JAVA_HOME=/usr/lpp/java/J1.4
#DB2 both JDBC and JCC
export
LIBPATH=/usr/lpp/db2/d8ig/jcc/lib:/usr/lpp/db2/d8ig/lib:$LIBPATH
export STEPLIB=DB8IU.SDSNEXIT:DB8I8.SDSNLOAD:DB8I8.SDSNLOD2
####
#JCC
PATH=/usr/lpp/db2/d8ig/jcc/bin:$PATH
unset CLASSPATH
CLASSPATH=/usr/lpp/db2/d8ig/jcc/classes/db2jcc.jar:/usr/lpp/db2/d8ig
/jcc/classes/db2jcc_javax.jar
CLASSPATH=$CLASSPATH:/usr/lpp/db2/d8ig/jcc/classes/sqlj.zip:/usr/lpp
/db2/d8ig/jcc/classes/db2jcc_license_cisuz.jar
CLASSPATH=$CLASSPATH:.
export CLASSPATH PATH
46
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
To test this access, run OMVS from the userid running the jobs and issue the
command java -fullversion. Example 2-3 shows our output.
Example 2-3 java -fullversion command and output
ERDMANN:/SC48/var/WebSphere/home/A4SRG: >java -fullversion
java full version "J2RE 1.4.2 IBM z/OS Persistent Reusable VM build
cm142-20061124 (SR7)"
Issue command db2jcc -version. Example 2-4 shows output from this
command.
Example 2-4 db2jcc -version command and output
ERDMANN:/SC48/var/WebSphere/home/A4SRG: >db2jcc -version
IBM DB2 JDBC Universal Driver Architecture 2.10.59
2.2.2 Augment the Deployment Manager node
Augmenting the Deployment Manager’s node to support WebSphere Process
Server consists of the following steps:
1. Back up the WebSphere Application Server configuration data sets.
2. Run zSMPInstall against the Deployment Manager’s node.
3. Customize a DmgrDB2.rsp response file.
4. Run zWPSConfig.sh against the Deployment Manager’s node.
5. Run fixWPSvars.jacl to complete the configuration of the resources in the
Deployment Manager.
These steps are described in the sections that follow.
Back up the WebSphere Application Server configuration
Back up the configuration HFS or ZFS data sets. We used the JCL shown in
Example 2-5.
Example 2-5 JCL to back up WebSphere Application Server configuration
//DUMP
EXEC PGM=ADRDSSU
//DASD
DD DISP=(NEW,CATLG),DSN=A4CELL.WAS.BASE.DUMP,
//
UNIT=3390,SPACE=(CYL,(500,100),RLSE),VOL=SER=TSTO51
//SYSPRINT DD SYSOUT=*
Chapter 2. WebSphere Process Server primary node configuration with DB2
47
//SYSIN
DD *
DUMP DATASET(
INCLUDE(
OMVS.WAS6.A4CELL.A4DMNODE.CONFIG.HFS OMVS.WAS6.A4CELL.A4NODEA.CONFIG.HFS -
)
)
OUTDD(DASD) TOL(ENQF)
-
/*
Note: The JCL examples in this chapter are provided in Appendix B,
“Additional material” on page 235.
Run the zSMPInstall script for the Deployment Manager
At this point, you should stop the Deployment Manager if it is running.
To start the process of running the script, we first ran the shell script
zSMPInstall.sh by submitting job A4INSDM, as shown in Example 2-6.
Example 2-6 Job A4INSDM
//***********************************************************/
//* STEP TO CREATE LINKS TO WPS LIBRARIES
*/
//***********************************************************/
//INSTO EXEC PGM=IKJEFT01,REGION=0M,TIME=1440
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BPXBATCH SH +
export PATH=.:$PATH; +
cd /wasa4config/a4cell/a4dmnode/DeploymentManager/bin; +
/usr/lpp/zWPSA4/V6R0/zos.config/bin/zSMPInstall.sh +
'-smproot /usr/lpp/zWPSA4/V6R0' +
'-runtime /wasa4config/a4cell/a4dmnode/DeploymentManager' +
'-install' +
1> /tmp/installonly_1032.out +
2> /tmp/installonly_1032.err
//***********************************************************/
//* STEPS TO COPY THE OUTPUT THE JOB LOG
*/
//***********************************************************/
//CPOUT EXEC PGM=IKJEFT01,REGION=0M
//SYSEXEC DD DISP=SHR,DSN=BB46048.SBBOEXEC
//SYSTSPRT DD SYSOUT=*
48
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
//SYSTSIN DD *
BBOHFSWR '/tmp/installonly_1032.out'
BBOHFSWR '/tmp/installonly_1032.err'
/*
//
Note: All jobs discussed in this chapter, including A4INSDM, are included in
Appendix B, “Additional material” on page 235.
The output from this job should look like that shown in Example 2-7.
Example 2-7 A4INSDM job output
BBOHFSWR
CWPIZ0253I:
CWPIZ0254I:
CWPIZ0255I:
CWPIZ0256I:
CWPIZ0257I:
CWPIZ0259I:
CWPIZ0260I:
CWPIZ0262I:
CWPIZ0263I:
CWPIZ0264I:
READY
'/tmp/installonly_1032.out'
parsing command arguments...
parsing arguments complete
setting up configuration...
set up configuration complete
creating the symbolic links...
creation of symbolic links complete
doing post install file updates...
post install updates complete
running Configuration Manager update...
Configuration Manager update complete
If any errors occur in the job output, look at the following logs:
/<dmgr_root>/logs/events_install_msg.log
/<dmgr_root>/logs/events_install_trc.log
/<dmgr_root>/logs/wbi/100SUpgradeCoreAdminConsolePlugins.ant.log
/<dmgr_root>/logs/wbi/101SUpgradeServerAdminConsolePlugins.ant.log
/<dmgr_root>/logs/wbi/101SWbiWebuiUpgrade.ant.log
/<dmgr_root>/logs/wbi/102SUpgradeIscdeploy.ant.log
/<dmgr_root>/logs/wbi/90SConfigNoProfileFirstStepsESB.ant.log
/<dmgr_root>/logs/wbi/90SConfigNoProfileFirstStepsWBI.ant.log
/<dmgr_root>/logs/wbi/90SConfigureWSProfileForWBI.ant.log
/<dmgr_root>/logs/wbi/90SInstallCEI.ant.log
/<dmgr_root>/logs/wbi/90SUpdateJavaOptions.ant.log
/<dmgr_root>/logs/wbi/91SConfigNoProfileFirstStepsCharset.ant.log
/<dmgr_root>/logs/wbi/98SDeployBPCAdminConsolePlugins.ant.log
/<dmgr_root>/logs/wbi/98SDeployServerAdminConsolePlugins.ant.log
/<dmgr_root>/logs/wbi/99SDeployCoreAdminConsolePlugins.ant.log
/<dmgr_root>/logs/wbi/cmtInstall.log
/<dmgr_root>/logs/wbi/cmtInstall.log.lck
Chapter 2. WebSphere Process Server primary node configuration with DB2
49
/<dmgr_root>/logs/wbi/zSMPInstall.log
/<dmgr_root>/logs/wbi/zSMPInstall.trace
In our configuration, <dmgr_root> is:
/wasa4config/a4cell/a4dmnode/DeploymentManager
Customize the DmgrDB2 response file
We copied the DmgrDB2.rsp response file from /<wps_install_root>/zos.config/
to a work directory. In our case, <wps_install_root> is:
/usr/lpp/zWPSA4/V6R0
And the work directory is:
/u/seniokj/wpswork.
In this step, you have to edit the file and remove all unprintable characters. We
set up the values as shown in Example 2-8. The userid running the configuration
jobs must have read access to this file.
Example 2-8 DmgrDB2.rsp response file
JMSUSER=a4jmsu
JMSPASS=a4jmsu
CONFIGSERVER=dmgr
DBPRODUCT=DB2UDBOS390_V8_1
DBLOCATION=DB8I
DBPROPERTIES=/u/db8iu/properties
DBJDBCCLASSPATH=/usr/lpp/db2/d8ig/jcc/classes
DBUSER=a4dbu
DBPASS=a4dbu
DBHOSTNAME=db8i.wtscplx1.itso.ibm.com
DBSERVERPORT=38100
augment
profileName=default
profilePath=/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/def
ault
templatePath=/wasa4config/a4cell/a4dmnode/DeploymentManager/profileTemp
lates/dmgr.*
cellName=a4cell
nodeName=a4dmnode
serverName=$CONFIGSERVER
dbCreateNew=false
dbDelayConfig=true
configureScaSecurity=true
scaSecurityUserId=$JMSUSER
50
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
scaSecurityPassword=$JMSPASS
configureAppScheduler=false
appSchedulerServer=$CONFIGSERVER
dbName=A4WPSDB
dbStorageGroup=A4DBSTO
dbType=$DBPRODUCT
dbConnectionLocation=$DBLOCATION
dbJDBCProperties=$DBPROPERTIES
dbJDBCClasspath=$DBJDBCCLASSPATH
dbUserId=$DBUSER
dbPassword=$DBPASS
dbHostName=$DBHOSTNAME
dbServerPort=$DBSERVERPORT
Run the zWPSConfig script for the Deployment Manager
We ran the shell script zWPSConfig.sh by submitting job A4CFG DM, as shown in
Example 2-9.
Example 2-9 Job A4CFGDM
//***********************************************************/
//* Run zWPSConfig.sh
*/
//***********************************************************/
//INSTO EXEC PGM=IKJEFT01,REGION=0M,TIME=1440
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BPXBATCH SH +
export PATH=.:$PATH; +
cd /wasa4config/a4cell/a4dmnode/DeploymentManager/bin; +
zWPSConfig.sh +
-response /u/seniokj/wpswork/DmgrDB2.rsp +
-augment +
1> /tmp/zWPSConfig_2033.out +
2> /tmp/zWPSConfig_2033.err
/*
//***********************************************************/
//* STEPS TO COPY THE OUTPUT T0 THE JOB LOG
*/
//***********************************************************/
//CPOUT EXEC PGM=IKJEFT01,REGION=0M
//SYSEXEC DD DISP=SHR,DSN=BB36048.SBBOEXEC
//SYSTSPRT DD SYSOUT=*
Chapter 2. WebSphere Process Server primary node configuration with DB2
51
//SYSTSIN DD *
BBOHFSWR '/tmp/zWPSConfig_2033.out'
BBOHFSWR '/tmp/zWPSConfig_2033.err'
/*
//
The output from this job should look like that in Example 2-10.
Example 2-10 A4CFGDM job output
BBOHFSWR '/tmp/zWPSConfig_2033.out'
CWPIZ0253I: parsing command arguments...
CWPIZ0254I: parsing arguments complete
CWPIZ0255I: setting up configuration...
CWPIZ0256I: set up configuration complete
CWPIZ0265I: augmenting profile(s)...
INSTCONFSUCCESS: Profile augmentation succeeded.
INSTCONFSUCCESS: Profile augmentation succeeded.
INSTCONFSUCCESS: Profile augmentation succeeded.
CWPIZ0267I: augmenting profile(s) complete
READY
If any errors occur in the job output, look at the following logs:
/<dmgr_root>/logs/wbi/zWPSConfig.log
/<dmgr_root>/logs/wbi/zWPSConfig.trace /<dmgr_root>/logs/wbi/c2n.log
In our case, <dmgr_root> is:
/wasa4config/a4cell/a4dmnode/DeploymentManager
Note: In addition to looking in the logs for the cause of the error, double-check
all the properties in the DmgrDB2.rsp file for typing errors. Also ensure that
you are using the dmgr.* template on the templatePath.
If this job fails, it may not be re-runnable. You must restore the Deployment
Manager’s configuration HFS from the data dump you took after completing
the base WebSphere Application Server configuration.
Run fixWPSvars.jacl to update the DMGR
After you run the WebSphere Process Server configuration jobs, not all the
variables are correctly set up in the server. To correct these variables, we have
provided the fixWPSvars.jacl script in Appendix B, “Additional material” on
page 235.
52
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Note: All scripts discussed in this chapter, including fixWPSvars.jacl, are
included in Appendix B, “Additional material” on page 235.
You must copy the script to a UNIX System Services working directory. In our
case, we used the /u/jo/wpswork directory. We executed the script by running the
job A4FIXDM, as shown in Example 2-11.
Example 2-11 FIXDM from job A4FIXDM
//FIXDM EXEC PGM=IKJEFT01,REGION=0M,TIME=1440
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BPXBATCH SH +
export PATH=.:$PATH; +
cd /wasa4config/a4cell/a4dmnode/DeploymentManager; +
cd profiles/default/bin; +
wsadmin.sh +
-conntype none +
-f /u/jo/wpswork/fixWPSvars.jacl +
-wbiInstallRoot /wasa4config/a4cell/a4dmnode/DeploymentManager +
-cell a4cell +
-node a4dmnode +
-jcchome /usr/lpp/db2/d8ig/jcc +
-jccproperties /u/db8iu/properties +
-dbLoc DB8I
+
-sibjndi jdbc/MEDataSource +
-sibauth WPSDBAlias +
-sibSCA A4CELLS +
-sibAPP A4CELLA +
-sibCEI A4CELLC +
-sibBPC A4CELLB +
-esbSchema +
1> /tmp/zFixVars_1034.out +
2> /tmp/zFixVars_1034.err
After executing this script, we backed up the configuration HFS data sets using
the HFSDUMP job.
Chapter 2. WebSphere Process Server primary node configuration with DB2
53
2.2.3 Augment the primary node
Augmenting the empty node to support WebSphere Process Server consists of
the following steps:
1. Run zSMPInstall against the primary empty node.
2. Customize a ManagedDB2.rsp response file.
3. Run zWPSConfig.sh against the primary empty node.
4. Federate the empty node into the cell.
These steps are described in the sections that follow.
Run the zSMPInstall script for the primary empty node
First we ran the shell script zSMPInstall.sh by submitting job A4INSNA, as shown
in Example 2-12.
Example 2-12 Job A4INSNA
//***********************************************************/
//* STEP TO CREATE LINKS TO WPS LIBRARIES
*/
//***********************************************************/
//INSTO EXEC PGM=IKJEFT01,REGION=0M,TIME=1440
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BPXBATCH SH +
export PATH=.:$PATH; +
cd /wasa4config/a4cell/a4nodea/AppServer/bin; +
/usr/lpp/zWPSA4/V6R0/zos.config/bin/zSMPInstall.sh +
'-smproot /usr/lpp/zWPSA4/V6R0' +
'-runtime /wasa4config/a4cell/a4nodea/AppServer' +
'-install' +
1> /tmp/installonly_1033.out +
2> /tmp/installonly_1033.err
//***********************************************************/
//* STEPS TO COPY THE OUTPUT THE JOB LOG
*/
//***********************************************************/
//CPOUT EXEC PGM=IKJEFT01,REGION=0M
//SYSEXEC DD DISP=SHR,DSN=BB46048.SBBOEXEC
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BBOHFSWR '/tmp/installonly_1033.out'
BBOHFSWR '/tmp/installonly_1033.err'
/*
//
54
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
The output from this job should look like that shown in Example 2-13.
Example 2-13 A4INSNA job output
BBOHFSWR '/tmp/installonly_1033.out'
CWPIZ0253I: parsing command arguments...
CWPIZ0254I: parsing arguments complete
CWPIZ0255I: setting up configuration...
CWPIZ0256I: set up configuration complete
CWPIZ0257I: creating the symbolic links...
CWPIZ0259I: creation of symbolic links complete
CWPIZ0260I: doing post install file updates...
CWPIZ0262I: post install updates complete
CWPIZ0263I: running Configuration Manager update...
CWPIZ0264I: Configuration Manager update complete
READY
If any errors occur in the job output, look at the following logs:
/<app_server_root>/logs/events_install_msg.log
/<app_server_root>/logs/events_install_trc.log.
/<app_server_root>/logs/wbi/100SUpgradeCoreAdminConsolePlugins.ant.log
/<app_server_root>/logs/wbi/101SUpgradeServerAdminConsolePlugins.ant.log
/<app_server_root>/logs/wbi/101SWbiWebuiUpgrade.ant.log
/<app_server_root>/logs/wbi/102SUpgradeIscdeploy.ant.log
/<app_server_root>/logs/wbi/90SConfigNoProfileFirstStepsESB.ant.log
/<app_server_root>/logs/wbi/90SConfigNoProfileFirstStepsWBI.ant.log
/<app_server_root>/logs/wbi/90SConfigureWSProfileForWBI.ant.log
/<app_server_root>/logs/wbi/90SInstallCEI.ant.log
/<app_server_root>/logs/wbi/90SUpdateJavaOptions.ant.log
/<app_server_root>/logs/wbi/91SConfigNoProfileFirstStepsCharset.ant.log
/<app_server_root>/logs/wbi/98SDeployBPCAdminConsolePlugins.ant.log
/<app_server_root>/logs/wbi/98SDeployServerAdminConsolePlugins.ant.log
/<app_server_root>/logs/wbi/99SDeployCoreAdminConsolePlugins.ant.log
/<app_server_root>/logs/wbi/cmtInstall.log
/<app_server_root>/logs/wbi/cmtInstall.log.lck
/<app_server_root>/logs/wbi/zSMPInstall.log
/<app_server_root>/logs/wbi/zSMPInstall.trace
In our case, <app_server_root> is:
/wasa4config/a4cell/a4nodea/AppServer
Chapter 2. WebSphere Process Server primary node configuration with DB2
55
Customize a ManagedDB2 response file
We copied the ManagedDB2.rsp response file from
/<wps_install_root/zos.config/ to a work directory. In our case, <wps_install_root
is:
usr/lpp/zWPSA4/V6R0
And the work directory is:
/u/seniokj/wpswork
At this point, you edit the file and remove all unprintable characters. We set up
the values as shown in Example 2-14. The userid running the configuration jobs
must have read access to this file.
Example 2-14 ManagedDB2.rsp
JMSUSER=a4jmsu
JMSPASS=a4jmsu
DBPRODUCT=DB2UDBOS390_V8_1
DBLOCATION=DB8I
DBPROPERTIES=/u/db8iu/properties
DBJDBCCLASSPATH=/usr/lpp/db2/d8ig/jcc/classes
DBUSER=a4dbu
DBPASS=a4dbu
DBHOSTNAME=db8i.wtscplx1.itso.ibm.com
DBSERVERPORT=38100
augment
profileName=default
profilePath=/wasa4config/a4cell/a4nodea/AppServer/profiles/default
templatePath=/wasa4config/a4cell/a4nodea/AppServer/profileTemplates/man
aged.*
cellName=a4basea
nodeName=a4nodea
dbCreateNew=false
dbDelayConfig=true
configureScaSecurity=true
scaSecurityUserId=$JMSUSER
scaSecurityPassword=$JMSPASS
configureAppScheduler=false
dbName=A4WPSDB
dbStorageGroup=A4DBSTO
dbType=$DBPRODUCT
dbConnectionLocation=$DBLOCATION
dbJDBCProperties=$DBPROPERTIES
dbJDBCClasspath=$DBJDBCCLASSPATH
dbUserId=$DBUSER
56
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
dbPassword=$DBPASS
dbHostName=$DBHOSTNAME
dbServerPort=$DBSERVERPORT
Run zWPSConfig script for the primary empty node
We ran the shell script zWPSConfig.sh by submitting job A4CFG NA, as shown in
Example 2-15.
Example 2-15 Job A4CFGNA
//***********************************************************/
//* Run zWPSConfig.sh
*/
//***********************************************************/
//INSTO EXEC PGM=IKJEFT01,REGION=0M,TIME=1440
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BPXBATCH SH +
export PATH=.:$PATH; +
cd /wasa4config/a4cell/a4nodea/AppServer/bin; +
zWPSConfig.sh +
-response /u/seniokj/wpswork/ManagedDB2.rsp +
-augment +
1> /tmp/zWPSConfig_2033.out +
2> /tmp/zWPSConfig_2033.err
/*
//***********************************************************/
//* STEPS TO COPY THE OUTPUT THE JOB LOG
*/
//***********************************************************/
//CPOUT EXEC PGM=IKJEFT01,REGION=0M
//SYSEXEC DD DISP=SHR,DSN=BB36048.SBBOEXEC
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BBOHFSWR '/tmp/zWPSConfig_2033.out'
BBOHFSWR '/tmp/zWPSConfig_2033.err'
/*
//
The output from this job should look like that in Example 2-16.
Example 2-16 A4CFGNA job output
READY
BBOHFSWR '/tmp/zWPSConfig_2033.out'
CWPIZ0253I: parsing command arguments...
CWPIZ0254I: parsing arguments complete
Chapter 2. WebSphere Process Server primary node configuration with DB2
57
CWPIZ0255I: setting up configuration...
CWPIZ0256I: set up configuration complete
CWPIZ0265I: augmenting profile(s)...
INSTCONFSUCCESS: Profile augmentation succeeded.
INSTCONFSUCCESS: Profile augmentation succeeded.
INSTCONFSUCCESS: Profile augmentation succeeded.
CWPIZ0267I: augmenting profile(s) complete
READY
If any errors are generated in the job output, look at the following logs:
/<app_server_root>/logs/wbi/zWPSConfig.log
/<app_server_root>/logs/wbi/zWPSConfig.trace
/<app_server_root>/logs/wbi/c2n.log.
In our case, <app_server_root> is:
/wasa4config/a4cell/a4nodea/AppServer
After running the script, we backed up the HFS using the HFSDUMP job.
Federate the primary empty node
The following steps enable you to federate the primary empty node:
1. Start the Deployment Manager. To start our Deployment Manager, we used
the following command:
S A4MGCR,JOBNAME=A4DMGR,ENV=A4CELL.A4DMNODE.A4DMGR
Do not be surprised if numerous errors are generated during the initialization
of the Deployment Manager (see Example 2-17).
Example 2-17 Errors generated before data source exists
ExtendedMessage: BBOO0220E: WSVR0501E: Error creating component null
Ýclass com.ibm.ws.runtime.component.ApplicationServerImpl¨
com.ibm.ws.exception.RuntimeWarning: Database is not configured or not
available.
A data source will be created in the Deployment Manager later to connect to
WebSphere Process Server databases in DB2, but at this stage, the
databases and data sources do not exist.
2. Return to the .CNTL data set that contains the customized jobs for creating
the empty managed node and run the BBOWMNAN job. On our system, this
job was in A4CELL.A4BASEA.EMPTY.CNTL. This job starts the node agent
A4AGNTA after the node has been federated.
58
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
If the BBOWMNAN job does not finish within approximately 10 minutes and
appears to be inactive, the most likely cause is that the node agent has not
initialized correctly. In this case, you need to look at the output from the node
agent and diagnose the cause of the problem.
Note: The BBOWMNAN job runs under the WebSphere Application Server
administrator userid, and you must ensure it can read the customized
.CNTL and .DATA data sets used by the job. Later you will run jobs under
the WebSphere Application Server administrator userid that will create
data sets under the same high-level qualifier, and ALTER access will be
required at that time. Therefore, permit the WebSphere Application Server
administrator userid or its group ALTER to access the RACF profile,
protecting the customization data sets you are using for the cell.
To do so, we issued the follow command:
PE ‘A4CELL.**’ ID(A4CFG) ACCESS(ALTER)
When BBOWMNAN completes normally, you see the following message:
ADMU0003I: Node a4nodea has been successfully federated.
In the job log for the node agent, look for message ADMS0003I indicating that
synchronization with the Deployment Manager has succeeded (see
Example 2-18).
Example 2-18 Node agent job log showing synchronization completed
BBOO0222I: WSVR0001I: Server CONTROL PROCESS nodeagent open for 373
e-business
BBOO0019I INITIALIZATION COMPLETE FOR WEBSPHERE FOR Z/OS CONTROL 382
PROCESS A4AGNTA.
BBOO0247I INITIALIZATION COMPLETE FOR WEBSPHERE FOR Z/OS CONTROL 383
PROCESS A4CELL/A4NODEA/A4AGNTA/A4AGNTA.
BBOO0222I: ADMR0011I: Document 384
cells/a4cell/nodes/a4nodea/servers/nodeagent/trace.dat is deleted.
ADMS0003I: The configuration synchronization completed successfully.
3. When you are satisfied that the node has been successfully federated, take
another backup of the configuration HFS data sets.
We backed up the HFS using the HFSDUMP job provided in Appendix B,
“Additional material” on page 235.
Chapter 2. WebSphere Process Server primary node configuration with DB2
59
2.3 Create WebSphere Process Server databases in DB2
In this section databases are configured in DB2 for z/OS to support WebSphere
Process Server for z/OS.
In summary the steps are as follows:
1. Plan the DB2 database names, userids, and names for the storage groups
and schemas.
2. Create the database, storage group, and tablespaces.
3. Grant access to DB2 databases.
4. Create DB2 tables for WebSphere Process Server, ESB, and Service
Integration Buses (SIBs).
2.3.1 Plan the DB2 database names
Figure 2-2 shows our DB2 setup. We used separate databases for each part of
the product rather than one database for every part to avoid duplicate tablespace
names in the SIB definitions.
Figure 2-2 Database setup for A4 cell
2.3.2 Create DB2 databases
The WebSphere Process Server for z/OS Infocenter (which can be found at
http://www-306.ibm.com/software/integration/wps/library/v602.html)
describes the DBUtility.sh utility, which can create databases, tables, a JDBC
provider, and data sources. However, the utility does not enable you to create
storage groups or to specify properties such as STOGROUP, VCAT, or
BUFFERPOOLS on CREATE DATABASE. When using DB2 on z/OS, it is best to
create STOGROUPs and DATABASEs manually after you have decided on your
naming convention (see Figure 2-2).
60
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
We created the job A4CRDB to create the storage group and databases because
this SQL is not supplied with WebSphere Process Server (see Example 2-19).
Example 2-19 Job A4CRDB
//JOBLIB DD DISP=SHR,DSN=DB8IU.SDSNEXIT
//
DD DISP=SHR,DSN=DB8I8.SDSNLOAD
//*
//* Before running this:
//* The userid on the SET CURRENT SQLID statement must
//* have DB2 SYSADM authority and EXECUTE on PLAN DSNTIA81
//*
//* Create WPS databases and stogroups.
//*
//CREATE
EXEC PGM=IKJEFT01,DYNAMNBR=20
//SYSTSPRT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(D8I1)
RUN PROGRAM(DSNTEP2) PLAN(DSNTEP81) LIB('DB8IU.RUNLIB.LOAD')
//SYSIN
DD *
CREATE STOGROUP A4DBSTO VOLUMES ('TOTDCA') VCAT DB8IU;
COMMIT;
CREATE DATABASE A4EVTDB
STOGROUP A4DBSTO
BUFFERPOOL BP0
INDEXBP BP0;
CREATE DATABASE A4EVCTDB
STOGROUP A4DBSTO
BUFFERPOOL BP0
INDEXBP BP0;
CREATE DATABASE A4ESBDB
STOGROUP A4DBSTO
BUFFERPOOL BP0
INDEXBP BP0;
CREATE DATABASE A4SIBAPP
STOGROUP A4DBSTO
BUFFERPOOL BP0
INDEXBP BP0;
Chapter 2. WebSphere Process Server primary node configuration with DB2
61
CREATE DATABASE A4SIBSCA
STOGROUP A4DBSTO
BUFFERPOOL BP0
INDEXBP BP0;
CREATE DATABASE A4SIBBPC
STOGROUP A4DBSTO
BUFFERPOOL BP0
INDEXBP BP0;
CREATE DATABASE A4SIBCEI
STOGROUP A4DBSTO
BUFFERPOOL BP0
INDEXBP BP0;
CREATE DATABASE A4BPEDB
STOGROUP A4DBSTO
BUFFERPOOL BP0
INDEXBP BP0;
CREATE DATABASE A4WPSDB
STOGROUP A4DBSTO
BUFFERPOOL BP0
INDEXBP BP0;
2.3.3 Grant access to DB2 databases
The WebSphere Process Server userids require access to the databases.
Access is available at the table level, but we decided to perform this task at the
database level, which is simpler. We created and ran job A4GRANT (see
Example 2-20).
Example 2-20 Job A4GRANT
//JOBLIB DD DISP=SHR,DSN=DB8IU.SDSNEXIT
//
DD DISP=SHR,DSN=DB8I8.SDSNLOAD
//CREATE
EXEC PGM=IKJEFT01,DYNAMNBR=20
//SYSTSPRT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(D8I1)
RUN PROGRAM(DSNTEP2) PLAN(DSNTEP81) LIB('DB8IU.RUNLIB.LOAD')
//SYSIN
DD *
62
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
DBADM
DBADM
DBADM
DBADM
DBADM
DBADM
DBADM
DBADM
DBADM
DBADM
DBADM
DBADM
DBADM
DBADM
DBADM
DBADM
DBADM
DBADM
ON
ON
ON
ON
ON
ON
ON
ON
ON
ON
ON
ON
ON
ON
ON
ON
ON
ON
DATABASE
DATABASE
DATABASE
DATABASE
DATABASE
DATABASE
DATABASE
DATABASE
DATABASE
DATABASE
DATABASE
DATABASE
DATABASE
DATABASE
DATABASE
DATABASE
DATABASE
DATABASE
GRANT USE OF STOGROUP
GRANT USE OF STOGROUP
A4WPSDB TO A4DBU WITH GRANT OPTION;
A4WPSDB TO A4CELL WITH GRANT OPTION;
A4BPEDB TO A4DBU WITH GRANT OPTION;
A4BPEDB TO A4CELL WITH GRANT OPTION;
A4SIBAPP TO A4DBU WITH GRANT OPTION;
A4SIBAPP TO A4CELL WITH GRANT OPTION;
A4SIBSCA TO A4DBU WITH GRANT OPTION;
A4SIBSCA TO A4CELL WITH GRANT OPTION;
A4SIBBPC TO A4DBU WITH GRANT OPTION;
A4SIBBPC TO A4CELL WITH GRANT OPTION;
A4SIBCEI TO A4DBU WITH GRANT OPTION;
A4SIBCEI TO A4CELL WITH GRANT OPTION;
A4EVTDB TO A4DBU WITH GRANT OPTION;
A4EVTDB TO A4CELL WITH GRANT OPTION;
A4EVCTDB TO A4DBU WITH GRANT OPTION;
A4EVCTDB TO A4CELL WITH GRANT OPTION;
A4ESBDB TO A4DBU WITH GRANT OPTION;
A4ESBDB TO A4CELL WITH GRANT OPTION;
A4DBSTO
A4DBSTO
TO A4DBU;
TO A4CELL;
GRANT USE OF BUFFERPOOL BP0
GRANT USE OF BUFFERPOOL BP0
TO A4DBU;
TO A4CELL;
GRANT
GRANT
GRANT
GRANT
USE
USE
USE
USE
TO
TO
TO
TO
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
GRANT
CREATEIN,
CREATEIN,
CREATEIN,
CREATEIN,
CREATEIN,
CREATEIN,
CREATEIN,
CREATEIN,
CREATEIN,
CREATEIN,
OF
OF
OF
OF
BUFFERPOOL
BUFFERPOOL
BUFFERPOOL
BUFFERPOOL
DROPIN
DROPIN
DROPIN
DROPIN
DROPIN
DROPIN
DROPIN
DROPIN
DROPIN
DROPIN
BP8K0
BP8K0
BP16K0
BP16K0
ON
ON
ON
ON
ON
ON
ON
ON
ON
ON
SCHEMA
SCHEMA
SCHEMA
SCHEMA
SCHEMA
SCHEMA
SCHEMA
SCHEMA
SCHEMA
SCHEMA
A4DBU;
A4CELL;
A4DBU;
A4CELL;
A4CELL
A4CELL
A4CELLA
A4CELLA
A4CELLS
A4CELLS
A4CELLB
A4CELLB
A4CELLC
A4CELLC
TO A4DBU;
TO A4CELL;
TO A4DBU;
TO A4CELL;
TO A4DBU;
TO A4CELL;
TO A4DBU;
TO A4CELL;
TO A4DBU;
TO A4CELL;
Chapter 2. WebSphere Process Server primary node configuration with DB2
63
For those who prefer to grant privileges at the table level, the following members
are included in Appendix B, “Additional material” on page 235:
򐂰
򐂰
򐂰
򐂰
򐂰
GRANTBPC
GRANTCEI
GRANTESB
GRANTSIB
GRANTWPS
2.3.4 Create DB2 tables
This section describes how you create DB2 tables for WebSphere Process
Server, ESB, and SIB. After creating the databases and storage groups, you
execute the DB2 SQL data definition language (DDL) statements to define all the
DB2 tables, indexes, views, and functions.
Each component of WebSphere Process Server provides SQL DDL and usually
a shell script to tailor it. On non-z/OS platforms, the DDL normally is executed by
running a shell script that invokes a Java™ program that makes remote JDBC
requests to the DB2 database.
Most DB2 for z/OS database administrators prefer to inspect the DDL before
execution and to use one of the supplied DB2 programs such as DSNTEP2 to
run the DDL.
In this section, we describe how to generate the SQL and then transform it into a
form that is acceptable to DSNTEP2. Some of these changes are not simply
cosmetic. In some cases, we add a schema (qualifier) to table names that did not
have one in the generated SQL.
An alternative to using the method described in this section is to use the SQL
DDL that has already been edited and is provided in the
PRS2520_WPS602Sql.zip file, which you can find in the document WPS and
WESB Ver. 6.0.x for z/OS Configuration Tools and Samples, PRS2520, on the
IBM Techdocs Library Web site:
http://www-03.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/PRS2520
For information on how to use the SQL in the PRS2520_WPS602Sql.zip file,
refer to the white paper, WPS V.6.0.x for z/OS Datasource & Database
Configuration Hints & Tips, WP100833.
In summary, the following steps generate, copy, edit, and run the SQL:
1. Generate the WebSphere Process Server SQL.
2. Generate the ESB SQL.
64
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
3. Tailor the SQL members.
4. Create tables for the SIBs.
These steps are described in the sections that follow.
Generate the WebSphere Process Server SQL
We ran the SQL as a batch job so we copied the SQL statements from the UNIX
System Services files to MVS data sets.
The SQL for job A4WPSDB is in the directory
/<dmgr_root>/profiles/default/dbscripts/CommonDB/DB2zOSV8/A4WPSDB in
files:
createTable_AppScheduler.sql
createTable_CommonDB.sql
createTable_customization.sql
createTable_lockmanager.sql
createTable_mediation.sql
createTable_Recovery.sql
createTable_Relationship.sql
insertTable_CommonDB.sql
Note: All jobs related to creating databases and tables should end with the
return code=0000.
In our case, <dmgr_root> is:
/wasa4config/a4cell/a4dmnode/DeploymentManager
The job A4SQLCPY converts the files within the A4WPSDB directory from ASCII
to EBCDIC and then copies them into MVS sequential data sets.
1. The job A4SQLCPY uses the shell script cvtA2E.sh to convert the files from
ASCII to EBCDIC (see Example 2-21).
Example 2-21 ASCII-to-EBCDIC conversion
//***********************************************************/
//* COPY DDL from UNIX to zOS
*/
//***********************************************************/
//COPY EXEC PGM=IKJEFT01,REGION=0M,TIME=1440
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BPXBATCH SH +
cd /wasa4config/a4cell/a4dmnode/DeploymentManager/; +
Chapter 2. WebSphere Process Server primary node configuration with DB2
65
cd profiles/default/dbscripts/; +
/u/jo/wpswork/cvtA2E.sh +
'CommonDB/DB2zOSV8/A4WPSDB/createTable_AppScheduler.sql' +
'/tmp/A4APSTB.sql' +
1> /tmp/wpssqlcopy_2031.out +
2> /tmp/wpssqlcopy_2031.err; +
/u/jo/wpswork/cvtA2E.sh +
'CommonDB/DB2zOSV8/A4WPSDB/createTable_CommonDB.sql' +
'/tmp/A4CMNTB.sql' +
1> /tmp/wpssqlcopy_2032.out +
2> /tmp/wpssqlcopy_2032.err; +
/u/jo/wpswork/cvtA2E.sh +
'CommonDB/DB2zOSV8/A4WPSDB/createTable_customization.sql' +
'/tmp/A4CUSTB.sql' +
1> /tmp/wpssqlcopy_2033.out +
2> /tmp/wpssqlcopy_2033.err; +
/u/jo/wpswork/cvtA2E.sh +
'CommonDB/DB2zOSV8/A4WPSDB/createTable_lockmanager.sql' +
'/tmp/A4LCKTB.sql' +
1> /tmp/wpssqlcopy_2034.out +
2> /tmp/wpssqlcopy_2034.err; +
/u/jo/wpswork/cvtA2E.sh +
'CommonDB/DB2zOSV8/A4WPSDB/createTable_mediation.sql' +
'/tmp/A4MEDTB.sql' +
1> /tmp/wpssqlcopy_2035.out +
2> /tmp/wpssqlcopy_2035.err; +
/u/jo/wpswork/cvtA2E.sh +
'CommonDB/DB2zOSV8/A4WPSDB/createTable_Recovery.sql' +
'/tmp/A4RECTB.sql' +
1> /tmp/wpssqlcopy_2036.out +
2> /tmp/wpssqlcopy_2036.err; +
/u/jo/wpswork/cvtA2E.sh +
'CommonDB/DB2zOSV8/A4WPSDB/createTable_Relationship.sql' +
'/tmp/A4RELTB.sql' +
1> /tmp/wpssqlcopy_2037.out +
2> /tmp/wpssqlcopy_2037.err; +
/u/jo/wpswork/cvtA2E.sh +
'CommonDB/DB2zOSV8/A4WPSDB/insertTable_CommonDB.sql' +
'/tmp/A4ICMTB.sql' +
1> /tmp/wpssqlcopy_2038.out +
2> /tmp/wpssqlcopy_2038.err
2. The job prints the output and the error files created in the first step.
66
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
3. The job copies the output from the UNIX System Services files to MVS data
sets using an OGET (see Example 2-22).
Example 2-22 Copy UNIX System Services files to MVS data sets
//COPY EXEC PGM=IKJEFT01,REGION=0M,TIME=1440
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
OGET '/tmp/A4APSTB.sql' 'A4CELL.SQL.A4APSTB'
OGET '/tmp/A4ICMTB.sql' 'A4CELL.SQL.A4ICMTB'
OGET '/tmp/A4CMNTB.sql' 'A4CELL.SQL.A4CMNTB'
OGET '/tmp/A4CUSTB.sql' 'A4CELL.SQL.A4CUSTB'
OGET '/tmp/A4LCKTB.sql' 'A4CELL.SQL.A4LCKTB'
OGET '/tmp/A4MEDTB.sql' 'A4CELL.SQL.A4MEDTB'
OGET '/tmp/A4RECTB.sql' 'A4CELL.SQL.A4RECTB'
OGET '/tmp/A4RELTB.sql' 'A4CELL.SQL.A4RELTB'
/*
4. The final step deletes the temporary UNIX System Services files.
Generate the ESB SQL
Job A4SQLCP2 copies the SQL statements needed to set up the A4ESBDB
database from the UNIX System Services files to MVS data sets.
The SQL for A4ESBDB is in the following file:
/<dmgr_root>/util/EsbLoggerMediation/DB2UDBOS390_V8_1/Table_esb_DB2UDBO
S390_V8_1.ddl
1. This job copies the DDL into a temporary directory (see Example 2-23).
Example 2-23 Step 1 of job A4SQLCP2
//***********************************************************/
//* COPY DDL from UNIX to zOS
*/
//***********************************************************/
//COPY EXEC PGM=IKJEFT01,REGION=0M,TIME=1440
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BPXBATCH SH +
cd /wasa4config/a4cell/a4dmnode/DeploymentManager/util/; +
cd EsbLoggerMediation/DB2UDBOS390_V8_1 ; +
cp Table_esb_DB2UDBOS390_V8_1.ddl /tmp/A4ESBDB.ddl +
1> /tmp/wpssqlcopy_1031.out +
2> /tmp/wpssqlcopy_1031.err;
2. The job prints the output and the error files created in the first step.
Chapter 2. WebSphere Process Server primary node configuration with DB2
67
3. Then the job copies the output from the UNIX System Services files to ISPF
data sets using an OGET .
4. The final step deletes the temporary UNIX System Services files.
After running these jobs you should have the following MVS files:
A4CELL.SQL.A4APSTB
A4CELL.SQL.A4CMNTB
A4CELL.SQL.A4CUSTB
A4CELL.SQL.A4ESBDB
A4CELL.SQL.A4ICMTB
A4CELL.SQL.A4LCKTB
A4CELL.SQL.A4MEDTB
A4CELL.SQL.A4RECTB
A4CELL.SQL.A4RELTB
These files have an LRECL of 255 and a RECFM of VB. However, to execute
SQL in batch mode requires the input file to have an LRECL of 80 and RECFM of
F or FB.
To make these changes, we ensured that no statements extended beyond
column 72, and then we copied the MVS data sets containing the SQL
statements into members within a PDS with a LRECL of 80.
Tailor the SQL members
You have to perform the following checks on each file:
򐂰 Remove all unprintable characters.
򐂰 Ensure that every table name is qualified by a schema name.
򐂰 Ensure that every index name is qualified by a schema name.
We used the following ISPF edit commands to modify the SQL statements. You
must perform the changes in the order they are shown.
1. C P'.' ' ' ALL
This command removes all unprintable characters.
Important: Do not use the ALL parameter with the commands in steps 2–6
because it could change the statements incorrectly.
2. C 'TABLE ' 'TABLE A4CELL.'
This adds the schema name to the table name.
68
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
3. C 'INDEX ' 'INDEX A4CELL.'
This command adds the schema name to the index name.
4. C 'ON ' 'ON A4CELL.'
This adds the schema name to the table name on the create index.
5. C 'STORES ' 'STORES A4CELL.'
This adds the schema name to the table name on a create aux table.
6. C 'INTO ' 'INTO A4CELL.'
This command adds the schema name to the table name on an insert
statement.
7. Comment out the drop tablespace and drop table commands in A4MEDTB by
inserting two hyphens (--) in front of them.
8. In A4ESBDB file only, C V_DBNAME A4ESBDB.
9. In A4ESBDB, C V_DBSTORAGEGROUP A4DBSTO.
10.In A4ESBDB, C V_SQLID A4CELL. (This command sets the schema name.)
Note: Several change commands in the preceding list include a space in order
to correctly add the schema name to the table or index name that follows. Be
sure to perform these changes as shown using the quotes and the spaces.
We ran the job A4SQLRUN, which executes the SQL statements needed to
create the WebSphere Process Server tables (see Example 2-24).
Example 2-24 Job A4SQLRUN
//JOBLIB DD DISP=SHR,DSN=DB8IU.SDSNEXIT
//
DD DISP=SHR,DSN=DB8I8.SDSNLOAD
//*
//* Before running this:
//* The userid on the SET CURRENT SQLID statement must
//* have DB2 SYSADM authority and EXECUTE on PLAN DSNTIA81
//*
//* Create WPS databases and stogroups.
//*
//CREATE
EXEC PGM=IKJEFT01,DYNAMNBR=20
//SYSTSPRT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(D8I1)
RUN PROGRAM(DSNTEP2) PLAN(DSNTEP81) LIB('DB8IU.RUNLIB.LOAD')
Chapter 2. WebSphere Process Server primary node configuration with DB2
69
//SYSIN
DD *
SET CURRENT SQLID = 'A4CELL' ;
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4APSTB)
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4CMNTB)
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4CUSTB)
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4LCKTB)
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4MEDTB)
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4RECTB)
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4RELTB)
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4ICMTB)
We ran the job A4SQLRU1, which executes the SQL statements needed to
create the ESB tables (see Example 2-25).
Example 2-25 Job A4SQLRU1
//JOBLIB DD DISP=SHR,DSN=DB8IU.SDSNEXIT
//
DD DISP=SHR,DSN=DB8I8.SDSNLOAD
//*
//* Before running this:
//* The userid on the SET CURRENT SQLID statement must
//* have DB2 SYSADM authority and EXECUTE on PLAN DSNTIA81
//*
//* Create ESB databases and stogroups.
//*
//CREATE
EXEC PGM=IKJEFT01,DYNAMNBR=20
//SYSTSPRT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(D8I1)
RUN PROGRAM(DSNTEP2) PLAN(DSNTEP81) LIB('DB8IU.RUNLIB.LOAD')
//SYSIN
DD *
SET CURRENT SQLID = 'A4CELL' ;
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4ESBDB)
70
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Create the tables for the SIBs
The DDL to create the tables for the SIB databases must be generated. This is
done by running the shell script sibDDLGenerator.sh for each SIB database. We
ran the job A4SIBDDL to generate the DDL for all the SIB databases and to copy
the SQL to MVS data sets (see Example 2-26).
Example 2-26 First step of job A4SIBDDL
//***********************************************************/
//* COPY DDL from UNIX to zOS
*/
//***********************************************************/
//COPY EXEC PGM=IKJEFT01,REGION=0M,TIME=1440
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BPXBATCH SH +
cd /wasa4config/a4cell/a4nodea/AppServer/profiles/default/bin/; +
sibDDLGenerator.sh +
-system db2 -version 8.1 -platform zos -schema A4CELLA +
-user A4DBU -create -database A4SIBAPP -storagegroup A4DBSTO +
-statementend ";" +
1> /tmp/A4SIBAPP.ddl +
2> /tmp/wpssqlcopy_2031.err; +
sibDDLGenerator.sh +
-system db2 -version 8.1 -platform zos -schema A4CELLS +
-user A4DBU -create -database A4SIBSCA -storagegroup A4DBSTO +
-statementend ";" +
1> /tmp/A4SIBSCA.ddl +
2> /tmp/wpssqlcopy_2032.err; +
sibDDLGenerator.sh +
-system db2 -version 8.1 -platform zos -schema A4CELLB +
-user A4DBU -create -database A4SIBBPC -storagegroup A4DBSTO +
-statementend ";" +
1> /tmp/A4SIBBPC.ddl +
2> /tmp/wpssqlcopy_2033.err; +
sibDDLGenerator.sh +
-system db2 -version 8.1 -platform zos -schema A4CELLC +
-user A4DBU -create -database A4SIBCEI -storagegroup A4DBSTO +
-statementend ";" +
1> /tmp/A4SIBCEI.ddl +
2> /tmp/wpssqlcopy_2034.err;
The running of this job creates the following four data sets:
򐂰 A4CELL.WPSDB2.SQL.A4SIBAPP
򐂰 A4CELL.WPSDB2.SQL.A4SIBSCA
Chapter 2. WebSphere Process Server primary node configuration with DB2
71
򐂰 A4CELL.WPSDB2.SQL.A4SIBBPC
򐂰 A4CELL.WPSDB2.SQL.A4SIBCEI
We edited the SQL statements within the MVS data sets using the same
commands as described previously in this section. In addition, we changed
BUFFERPOOL BP1 to BUFFERPOOL BP0. We also commented out the create
stogroup, the create database, as well as the grants.
We ran the job A4SQLRU5, which executes the SQL to create the SIB tables
(see Example 2-27).
Example 2-27 Job A4SQLRU5
//JOBLIB DD DISP=SHR,DSN=DB8IU.SDSNEXIT
//
DD DISP=SHR,DSN=DB8I8.SDSNLOAD
//*
//* Before running this:
//* The userid on the SET CURRENT SQLID statement must
//* have DB2 SYSADM authority and EXECUTE on PLAN DSNTIA81
//*
//* Create WPS databases and stogroups.
//*
//CREATE
EXEC PGM=IKJEFT01,DYNAMNBR=20
//SYSTSPRT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(D8I1)
RUN PROGRAM(DSNTEP2) PLAN(DSNTEP81) LIB('DB8IU.RUNLIB.LOAD')
//SYSIN
DD *
SET CURRENT SQLID = 'A4CELL' ;
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4SIBAPP)
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4SIBBPC)
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4SIBCEI)
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4SIBSCA)
2.4 Configure a WebSphere Process Server cluster
Now that the augmented node has been federated into the cell, you must define
a cluster with a cluster member, or just a server, where you will run a WebSphere
Process Server or WebSphere Enterprise Service Bus workload.
After you have created the cluster, you can configure the components of
WebSphere Process Server in the cluster.
72
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
In summary, the process of configuring a WebSphere Process Server-enabled
cluster is as follows:
1. Configure a cluster and add a cluster member (server) using the WebSphere
Administration Console.
2. Configure Service Component Architecture (SCA).
3. Configure Common Event Infrastructure (CEI).
4. Configure Business Process Choreographer (BPC).
5. Configure BPC Event Collector and BPC Observer.
6. Complete the configuration. Before starting the server, complete the
configuration by running the fixWPSvars.jacl script. This script updates the
resources in the primary node as well as performing several other required
changes.
7. Start the primary node’s server.
These steps are described in the sections that follow.
2.4.1 Configure the cluster and the first cluster member
You create a cluster and server using the WebSphere Administration Console,
not the WebSphere Application Server ISPF application.
The names and ports that you use when creating the server should conform to
your naming convention. If you follow the guidance and use the spreadsheet
provided in the white paper, WebSphere z/OS V6—WSC Sample ND
Configuration, WP100653, on the IBM Techdocs Library Web site, to plan your
naming conventions, the Stand-Alone Server worksheet contains the names and
the Variables worksheet contains the ports that you should use when creating the
cluster member.
In summary, the steps are as follows:
1. Create a cluster and add a cluster member (server) using the WebSphere
Administration Console.
2. Update the server and node agent configuration to correct the server short
name, ports, and virtual hosts.
3. Take another backup of your configuration HFS data sets before adding SCA,
CEI, BPC and BPC Observer to the cluster.
These steps are described in the sections that follow.
Chapter 2. WebSphere Process Server primary node configuration with DB2
73
Create the cluster and first cluster member
The following steps enable you to create a cluster and add a cluster member
using the WebSphere Administration Console:
1. Log in to the administration console and navigate to Servers → Clusters as
shown in Figure 2-3.
Figure 2-3 Navigate to Servers → Clusters
2. Click New to start the wizard that configures a cluster and cluster members.
74
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
3. Enter a cluster name in the textbox shown in Figure 2-4. It is a good idea to
enter a lowercase cluster name that is preceded by your two-character cell
prefix. For our A4 cell, we created a4cl01 because it was the first cluster.
Figure 2-4 Enter cluster name
We decided not to create a replication domain at this time so we did not check
the Create a replication domain for this cluster check box.
4. Click Next.
Chapter 2. WebSphere Process Server primary node configuration with DB2
75
5. On the screen shown in Figure 2-5, enter a name for the new server that will
be created as the first cluster member in the cluster. Do not click Next yet.
Figure 2-5 Create first cluster member using defaultProcessServerZOS template
The name that you specify here should be the long name for the server. For
example, for the first server on node a of our A4 cell, we specified a server
name of a4sr01a.
6. While still on the Create a new cluster screen, click the radio button for Default
application server template and open the drop-down list box to select
defaultProcessServerZOS, as shown in Figure 2-5.
76
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
It is not important whether you click the check box Generate Unique Http
Ports because later you will manually set all the ports to correct values.
7. Click Apply, then Next.
You access another Create a new cluster screen, as shown in Figure 2-6, in
which you can define a second cluster member, but do not do so at this point.
Also the server you just created is listed at the bottom of the screen.
Figure 2-6 Name of application server
Chapter 2. WebSphere Process Server primary node configuration with DB2
77
8. Click Next. On the screen shown in Figure 2-7, check the details in the
Summary of actions box and click Finish.
Figure 2-7 Summary of actions
78
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
9. In the Server Cluster screen shown in Figure 2-8, your new cluster is listed
and a link at the top of the screen will save the configuration changes. Click
the Save link to save your configuration changes.
Figure 2-8 New cluster listed in Server Cluster screen
Chapter 2. WebSphere Process Server primary node configuration with DB2
79
10.When the configuration changes have been saved, click the link to the cluster
configuration as shown in Figure 2-9.
Figure 2-9 Update cluster definition
80
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
11.Update the cluster Short name field in the screen shown in Figure 2-10. For
example, for our cluster we set the short name to A4CL01, which is the
uppercase equivalent of the cluster name a4cl01. Then click OK.
Figure 2-10 Update cluster short name
Note: The cluster short name is important because RACF profiles in class
CBIND and SERVER control access to the members of a cluster.
You should have defined RACF CBIND and SERVER profiles for your cell
when you defined your Deployment Manager. If you followed the guidance in
the previously referenced white paper, WP1006553, on the IBM Techdocs
Library Web site, you should have created generic RACF profiles (see 1.4.2,
“Deployment Manager customization” on page 14). These RACF profiles are
valid provided you used a cluster name that was prefixed by your
two-character cell prefix. If you chose some other name, you must define
CBIND and SERVER class profiles that match the cluster name you have
chosen.
Chapter 2. WebSphere Process Server primary node configuration with DB2
81
12.Click the Cluster members link and navigate to Servers → Application
servers.
13.Click the link for the server name (ours is a4sr01 as shown in Figure 2-11) to
view and update the server’s configuration.
Figure 2-11 Update server configuration
82
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
14.Update the server’s short name field to the value in the Stand-Alone Server
worksheet (see the sample spreadsheet provided in the previously referenced
document, PRS1331, available on the IBM Techdocs Library Web site). For
example, the long name for our server is a4sr01a, and we set our short name
to A4SR01A, as shown in Figure 2-12.
Figure 2-12 Update server short name
15.Click Apply to save your configuration changes.
16.Navigate to Servers → Cluster Topology and expand the tree to view your
cell, cluster, node, and cluster member topology.
Update the server configuration
When the first cluster member is created, the ports assigned to it almost certainly
will not match those you planned to use. You must update the virtual host
definitions to match the HTTP and HTTPs ports you have assigned.
Chapter 2. WebSphere Process Server primary node configuration with DB2
83
1. Navigate to Servers → Application Servers and click the name of the server
you just created.
2. Then expand Web Container Settings under Container settings and click
HTTP transports as shown in Figure 2-13.
Figure 2-13 Navigate to HTTP transports
3. Click the blue asterisk (*) for the first port. Note that SSL Enabled is set to
false, indicating it is the HTTP port (port 9081 shown in Figure 2-14).
Figure 2-14 Update HTTP port
4. Set the Port field to the value of the HTTP port from the Variables worksheet
in your cell planning spreadsheet. This is the HTTP port under the App
84
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Server 01 column and usually ends in 48. For our A4SR01A server, we set
port 22548 as shown in Figure 2-15.
Figure 2-15 Set correct value for HTTP port
Do not save the configuration changes yet.
5. Click the blue asterisk (*) in the second row to update the port where SSL is
enabled as shown in Figure 2-16
Figure 2-16 Update HTTPs (SSL) port
Chapter 2. WebSphere Process Server primary node configuration with DB2
85
6. Set the Port field to the value of the HTTPs port from the Variables worksheet
in your cell planning spreadsheet. This is the HTTP SSL port under the App
Server 01 column and usually ends in 49. For our A4SR01A server, we set
port 22549 as shown in Figure 2-17.
Figure 2-17 Set correct value for HTTPs (SSL) port
Do not save your configuration changes yet.
7. Navigate to Environment → Virtual Hosts → default_host and then click
Host Aliases under Additional Properties as shown in Figure 2-18.
Figure 2-18 Navigate to virtual host aliases
86
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Notice that there are two virtual host entries for the incorrect ports you just
changed. In Figure 2-19 these are 9080 and 9443.
Figure 2-19 Virtual host list before being corrected
8. Click the blue asterisk (*) in the fourth row to change the port value.
Chapter 2. WebSphere Process Server primary node configuration with DB2
87
9. Change the port number to the one you are using for the HTTP port. For our
A4 cell, we changed the port value to 22548 as shown in Figure 2-20.
Figure 2-20 Set correct port number in HTTP Virtual Host entry
10.Click OK. You are returned to the Host Aliases list.
11.Click the blue asterisk (*) that corresponds to the incorrect SSL port (9443 in
our case).
88
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
12.Change the SSL port number to the one you are using for the HTTP SSL port.
For our A4 cell, we changed the port value to 22549 as shown in Figure 2-21.
Figure 2-21 Set correct SSL port number
Chapter 2. WebSphere Process Server primary node configuration with DB2
89
When you finish, you see the virtual host aliases listed again as shown in
Figure 2-22.
Figure 2-22 Corrected virtual host alias listing
The port values you see listed should be those you have planned for the
application server (those ports ending 48 and 49) and for the Deployment
Manager (those ports ending in 18 and 19).
The entry for port 80 can be left as is at this time, but you may need to update
it later when you configure an HTTP server.
13.Save your configuration changes.
14.Next you must correct the other port assignments for the server. Navigate to
Servers → Application servers and click your server in the list.
90
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
15.Scroll down and click Ports under Communication on the right to access the
list of ports. The current non-HTTP port assignments are displayed as shown
in Figure 2-23.
Figure 2-23 TCP/IP port settings before being corrected
16.Click the blue hyperlink and set the correct value for the port for the
BOOTSTRAP_ADDRESS.
You can find the correct port number in the ports section of the Variables
worksheet in your planning spreadsheet (see the sample spreadsheet
provided in the previously referenced document, PRS1331, available on the
Chapter 2. WebSphere Process Server primary node configuration with DB2
91
IBM Techdocs Library Web site). For our A4 cell, we set the port for the
BOOTSTRAP_ADDRESS to 22541 as shown in Figure 2-24.
Figure 2-24 Set port number of BOOTSTRAP_ADDRESS
17.Click OK.
Notice that the ORB LISTENER port has been set to the same value as the
port you assigned to BOOTSTRAP_ADDRESS. This setting is normal
behavior in WebSphere Application Server for z/OS.
18.Click each of the port names in the list in turn and set the correct port values
until you have all the correct port values assigned.
19.Click OK after setting each port value.
20.When you finish, click OK and save your configuration changes.
92
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
When we finished, the ports for our A4 cell were as shown in Figure 2-25.
Figure 2-25 Port settings after being corrected
Chapter 2. WebSphere Process Server primary node configuration with DB2
93
Update the node agent ports
Most of the node agent ports are assigned on the WebSphere ISPF panels when
you configure the primary empty node, but some are not. You must set these
using the WebSphere Administration Console.
1. Navigate to System Administration → Node Agents and then click the blue
hyperlink to the nodeagent configuration.
2. Click Ports under Additional Properties on the right.
The node agent ports are listed, and the following five ports still have default
values assigned as shown in Figure 2-26.
򐂰
򐂰
򐂰
򐂰
򐂰
CSIV2_SSL_MUTUALAUTH_LISTENER_ADDRESS
CSIV2_SSL_SERVERAUTH_LISTENER_ADDRESS
DRS_CLIENT_ADDRESS
NODE_IPV6_MULTICAST_DISCOVERY_ADDRESS
SAS_SSL_SERVERAUTH_LISTENER_ADDRESS
Figure 2-26 Node agent ports before update
94
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
3. Update the five node agent ports and set the values you planned on your
worksheet as shown in Figure 2-27.
Figure 2-27 Planned values for node agent ports
When we finish, the node agent ports were as shown in Figure 2-28.
Figure 2-28 Node agent ports after changing to planned values
4. Click OK after setting each port value.
5. When you finish, click OK and save your configuration changes.
Chapter 2. WebSphere Process Server primary node configuration with DB2
95
Back up the configuration HFS data sets
Back up the HFS data sets using the job HFSDUMP.
2.4.2 Configure the SCA
The SCA component of WebSphere Process Server requires SIBs in order to
function. You can launch a wizard from the WebSphere Administration Console
that configures the SIBS. The wizards configure two SIBs, and two more are
created later when you configure the CEI and the BPC. All of these SIBs can
share the same data source.
A data source for the SIBs was created when you ran the fixWPSVars.jacl script
as described in the previous section, “Run fixWPSvars.jacl to update the DMGR”
on page 52. However, the J2C authentication alias is not configured by the jacl
script, and you configure it using the WebSphere Administration Console.
In summary, the steps to configure SCA are as follows:
1. Check the SIB data source definition.
2. Run the wizard to configure SCA.
These steps are described in the sections that follow.
Configure the data source for the SIBs
The following steps enable you to configure the SIB data source.
1. From the administration console, navigate to Resources → JDBC Providers.
2. Set the Scope at the cell level by clearing out the server, node, and cluster
fields and then clicking Apply.
96
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Two JDBC providers are listed as shown in Figure 2-29.
Figure 2-29 DB2 universal JDBC provider at cell level
Chapter 2. WebSphere Process Server primary node configuration with DB2
97
3. Click the DB2 Universal JDBC Driver Provider link and then click the Data
Sources link under Additional Properties as shown in Figure 2-30.
Figure 2-30 Select data sources
4. Click the WPS_SIB_DataSource data source.
5. Check the Use this Data Source in container manager persistence (CMP)
check box as shown in Figure 2-31 and verify that the JNDI name is
jdbc/MEDataSource (Message Engine Data Source).
Figure 2-31 Use this data source in container managed persistence (CMP) check box
98
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
6. Under Component-managed authentication alias, expand the drop-down
list box and select the WPSDBAlias J2C authentication alias shown in
Figure 2-32.
Figure 2-32 Select WPSDBAlias for SIB data source
7. Scroll down and check the properties under DB2 Universal data source
properties. The database name should be set to the location name of your
DB2 system, and the driver type should be 2. The server name and port
number fields apply only to type 4 connections, so while their values are
unimportant, these fields cannot be blank.
8. Click OK but do not save the configuration changes yet.
9. Click Custom properties under Additional Properties on the right. Check
that the property fullyMaterializeLobData is set to false as shown in
Figure 2-33.
Figure 2-33 fullyMaterializeLobData set to false
10.Save the configuration changes.
Chapter 2. WebSphere Process Server primary node configuration with DB2
99
Run the SCA wizard
The following steps enable you to run the wizard to configure SCA:
1. Navigate to Servers → Clusters and click your cluster.
2. Click Service Component Architecture under Additional Properties on the
right of the screen as shown in Figure 2-34.
Figure 2-34 Navigate to SCA configuration
3. Click the Configure a destination location radio button.
100
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
4. Then use the drop-down list box to choose the database that will provide the
data store for the SIBs. With WebSphere Process Server for z/OS, you
usually choose DB2 z/OS 7 & 8 (DB2 Universal Driver Provider type 2) as
shown in Figure 2-35.
Figure 2-35 Select type of database as data store for SIBs
5. Set the data source user name and data source password to the userid and
password that you will use on the J2C authentication alias associated with the
SIBs.
For our A4 cell, we used userid A4DBU as the J2C authentication alias userid
as shown in Figure 2-36.
Figure 2-36 Set J2C authentication alias userid and password
Chapter 2. WebSphere Process Server primary node configuration with DB2
101
6. Under System Bus, check the Use existing data source check box and
choose MEDataSource from the drop-down list box as shown in Figure 2-37.
Figure 2-37 Choose existing MEDataSource as data source for SIBs
7. Set the schema name you will use for the system bus.
Remember that once the CEI and BPC SIBs have been configured, there will
be four SIBs. Each of the SIBs contains tables with the same names;
therefore, it is important that a different schema name is used for each SIB.
For our A4 cell, we used A4CELL as the schema name for other data
sources, and we added one character to the name “A4CELL” to create a
unique schema name for each SIB.
The names we chose for the SIB schemas in our A4 cell are as follows:
Application SCA Bus Schema Name
Business Process Container SIB Schema Name
Common Event Infrastructure SIB Schema Name
System SCA Bus Schema Name
A4CELLA
A4CELLB
A4CELLC
A4CELLS
For the system bus, we set the schema name to A4CELLS as shown in
Figure 2-38.
Figure 2-38 Set schema name for system SCA bus
102
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Notice in Figure 2-38 that Database properties is greyed out and that some
of the properties shown are incorrect. The property databaseName, for
example, should be set to the location name of the DB2 but is currently set to
SCADB. Because the data source will be updated later, it is not necessary to
be concerned about these properties at this stage.
For the application SCA bus, we set the schema name to A4CELLA as shown
in Figure 2-39. It is important that the Create tables check box is unchecked.
Figure 2-39 Set schema name for application SCA bus
8. Click OK and then save the configuration changes.
9. Navigate to Service Integration → Buses.
Chapter 2. WebSphere Process Server primary node configuration with DB2
103
The two SIBs created by the SCA configuration wizard are shown in
Figure 2-40.
Figure 2-40 SIBs created by SCA configuration wizard
104
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
10.Clink the link to the SCA.SYSTEM SIB configuration.
11.Click the Bus members link for the SIB as shown in Figure 2-41.
Figure 2-41 Click to display bus members
Chapter 2. WebSphere Process Server primary node configuration with DB2
105
12.Click the link to your cluster name as shown in Figure 2-42.
Figure 2-42 Click link to cluster name
13.Follow the link to the message engine configuration for the SCA.SYSTEM bus
as shown in Figure 2-43.
Figure 2-43 Click link to message engine configuration
106
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
14.Under Additional Properties, click the Data store link for the SCA.SYSTEM
bus as shown in Figure 2-44.
Figure 2-44 Click link to data store for SCA.SYSTEM bus
The data source JNDI name and the schema name should have been set
correctly by the SCA configuration wizard; however, you may need to remove
the authentication alias that is associated with the Message Engine Data
Store.
These two SIBs (and the other two you will configure later for use by CEI and
BPC) use DB2 z/OS as a data store. You previously created at the cell level a
data source called WPS SIB DataSource, which was to be shared by the four
SIBs. Because an authentication alias is already set on the WPS SIB
DataSource, you do not have to specify an authentication alias on the
Message Engine Data Store definition.
Be aware, however, that the fixWPSVars.jacl script will add an authentication
alias to the Message Engine Data Store definitions if you set the -sibauth
option when invoking the script. As long as you set -sibauth to the same
authentication alias that is specified on the WPS SIB DataSource, it does not
matter whether the alias is also set on the Message Engine Data Store
definitions. In general, however, we recommend that you use the minimum
number of authentication aliases and that you specify them only on the data
source definitions and not on the Message Engine Data Store definitions.
Chapter 2. WebSphere Process Server primary node configuration with DB2
107
15.Click the Authentication alias drop-down list box and select None. Make
sure that the Create tables check box is unchecked as shown in Figure 2-45.
Figure 2-45 Do not set Authentication Alias and ensure Create tables is not checked
16.Click OK but do not save the configuration changes yet.
17.Click the Bus members link at the top of the screen.
18.Then click the link to the SCA.APPLICATION bus and repeat the changes
described previously to remove the authentication alias. Remember to
uncheck the Create tables check box from the Message Engine Data Store
definition.
19.When you finish, click OK and save the configuration changes.
2.4.3 Configure Common Event Infrastructure
In WebSphere Process Server for z/OS Version 6.0.1, none of the WebSphere
Process Server infrastructure itself depended on the CEI; therefore, configuring it
was optional. In WebSphere Process Server V6.0.1, you had to configure CEI
only if your applications wanted to exploit it.
108
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
However, in WebSphere Process Server for z/OS Version 6.0.2, the Business
Process Container Observer (BPC Observer) makes use of CEI, and therefore
you must configure CEI if you expect to use the BPC Observer.
The wizard that configures BPC contains options that configure the BPC
Observer, but to configure the BPC Observer, the CEI must already have been
configured. Thus if you plan to use BPC Observer, you should configure CEI
before configuring BPC and the BPC Observer.
Before you start to configure CEI, you must decide which source you will use for
the CEI DDL. You have the following two options:
򐂰 Customize the DDL included in the PRS2520_WPS602Sql.zip file that is
provided in WPS and WESB Ver. 6.0.x for z/OS Configuration Tools and
Samples, PRS2520. Refer to the Techdoc WP100833 for information on how
to use the DDL in PRS2520_WPS602Sql.zip (both documents are available
on the IBM Techdoc Web site).
The DDL in the PRS2520_WPS602Sql.zip file uses one database for all the
tables, which means the tablespace names on the SIBs have been changed
from those generated by the product to avoid the problem of duplicate
tablespace names.
򐂰 Generate the DDL and then customize it so it is suitable for your DB2 z/OS
environment. In our configuration, we used this option.
In summary, the steps to configure the CEI are as follows:
1. Customize the CEI response file DB2ZOSResponseFile.rsp.
2. Run config_event_database.sh to generate the DDL.
3. Customize the DDL that creates the CEI tables and indexes.
4. Execute the DDL to create the CEI tables and indexes.
5. Run cr_db2zos_jdbc_provider.sh to configure the CEI resources in the
WebSphere Process Server.
6. Run event-profile.jacl to install the event-application.ear and the
event-message.ear.
7. Set the currentSchema property on the CEI JDBC data sources.
8. Delete the old CEI Cloudscape™ data source.
Customize the CEI response file
Customize the DB2ZOSResponseFile.rsp response file that is used as input to
the config_event_database.sh shell script. You can find an example of this
response file in the DeploymentManager <WAS_HOME>/event/dbconfig
directory in the DB2ZOSResponseFile.txt file (note the .txt extension).
Chapter 2. WebSphere Process Server primary node configuration with DB2
109
We copied this response file into our working directory /u/seniokj/wpswork and
renamed it DB2ZOSResponseFile.rsp before editing it.
The customized DB2ZOSResponseFile.rsp file for our A4 cell is shown in
Example 2-28.
Example 2-28 Customized DB2ZOSResponseFile.rsp
CLUSTER_NAME=a4cl01
SCOPE=cluster
DB_NAME=DB8I
JDBC_PROVIDER="DB2 Universal JDBC Driver Provider"
JDBC_CLASSPATH="/usr/lpp/db2/d8ig/jcc/classes"
UNIVERSAL_JDBC_DRIVER_NATIVEPATH="/usr/lpp/db2/d8ig/jcc/lib"
UNIVERSAL_JDBC_CLASSPATH="/usr/lpp/db2/d8ig/jcc/classes"
JDBC_DRIVER_TYPE=2
DB_HOST_NAME=db8i.wtscplx1.itso.ibm.com
DB_INSTANCE_PORT=38100
EXECUTE_SCRIPTS=NO
DB_TYPE=DB2ZOS
EVENT_DB_NAME=A4EVTDB
CATALOG_DB_NAME=A4EVCTDB
STORAGE_GROUP=A4DBSTO
BUFFER_POOL_4K=BP0
BUFFER_POOL_8K=BP8K0
BUFFER_POOL_16K=BP16K0
DAYS_TO_KEEP_EVENTS=1
AVERAGE_EVENTS_PER_SECOND=1
AVERAGE_NUMBER_CONTEXT_PER_EVENT=1
AVERAGE_NUMBER_EXTENDED_DATA_ELEMENT_PER_EVENT=2
AVERAGE_NUMBER_EXTENDED_DATA_ELEMENT_ARRAY_ELEMENTS=3
AVERAGE_NUMBER_MSG_TOKENS_PER_EVENT=1
AVERAGE_ASSOCIATIONS_PER_EVENT=2
TABLESPACE_EXTENDED_BINARY_VALUE_PRIMARY=100
TABLESPACE_EXTENDED_BINARY_VALUE_SECONDARY=10
TABLESPACE_ANY_VALUE_PRIMARY=100
TABLESPACE_ANY_VALUE_SECONDARY=10
PERCENTAGE_FREE_SPACE=20
FREE_PAGE=10
NUMBER_EVENT_DEFINITIONS=100
AVERAGE_SOURCE_CATEGORY_PER_EVENT_DEFINITION=5
AVERAGE_EXTENDED_DATA_ELEMENT_PER_EVENT_DEFINITION=5
AVERAGE_NUMBER_PROPERTY_DESCRIPTIONS_PER_EVENT_DEFINITION=5
TABLESPACE_HEX_DEFAULT_PRIMARY=100
TABLESPACE_HEX_DEFAULT_SECONDARY=10
110
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Notice in particular that we set the CLUSTER_NAME property to configure CEI
at the cluster level. Notice also that it is important to set
EXECUTE_SCRIPTS=NO (the default is YES) to prevent the shell script from
trying to run DDL before it has been customized.
Generate the DDL
To run the config_event_database.sh file, we prepared and ran the A4CFGCIE
job that is shown in Example 2-29.
Example 2-29 A4CFGCIE JCL
//INSTO EXEC PGM=IKJEFT01,REGION=0M,TIME=1440
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BPXBATCH SH +
export PATH=.:£PATH; +
cd /wasa4config/a4cell/a4dmnode/DeploymentManager; +
cd profiles/default/event/dbconfig; +
config_event_database.sh +
/u/seniokj/wpswork/DB2ZOSResponseFile.rsp +
1> /tmp/zWPSConfig_3033.out +
2> /tmp/zWPSConfig_3033.err
/*
//***********************************************************/
//* STEPS TO COPY THE OUTPUT THE JOB LOG
*/
//***********************************************************/
//CPOUT EXEC PGM=IKJEFT01,REGION=0M
//SYSEXEC DD DISP=SHR,DSN=BB46048.SBBOEXEC
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BBOHFSWR '/tmp/zWPSConfig_3033.out'
BBOHFSWR '/tmp/zWPSConfig_3033.err'
/*
//
Since CEI is being configured in a cluster, config_event_database.sh is executed
from the Deployment Manager <WAS_HOME>/event/dbconfig directory.
Chapter 2. WebSphere Process Server primary node configuration with DB2
111
When the A4CFGCIE job ends, check for the message CEIIN0186I, which
confirms that the CEI DDL has been created successfully as shown in
Example 2-30. Then look for the generated DDL in the Deployment Manager
<WAS_HOME>/event/dbscripts/ directory.
Example 2-30 Output from A4CFGCEI
INFO: CEIIN0178I The output directory for the data source scripts is
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/event/d
sscripts.
Oct 4, 2007 5:21:17 PM com.ibm.events.install.db.ConfigureDB
configureDB
INFO: CEIIN0176I Creating the database and data source scripts.
Oct 4, 2007 5:21:56 PM com.ibm.events.install.db.ConfigureDB
runCreateScripts
INFO: CEIIN0186I The Common Event Infrastructure database and data
source scripts for DB2ZOS created successfully.
Oct 4, 2007 5:21:56 PM com.ibm.events.install.db.ConfigureDB main
INFO: CEIIN0070I Consult the log file for more information.
Oct 4, 2007 5:21:56 PM com.ibm.events.install.db.ConfigureDB main
INFO: =========================================================
READY
For our A4 cell, the DDL was generated to:
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/
event/dbscripts
Note: If the A4CFGCEI job seems to take a long time to run, it could be that
you specified EXECUTE_SCRIPTS=YES in DB2ZOSResponseFile.rsp. In
that case, the script tries to prompt for a database userid and will go into a
loop testing for a response.
If you cancel the job, you may see the following output:
READY
BBOHFSWR '/tmp/zWPSConfig_3033.out'
Enter the DB2 user id:
Set EXECUTE_SCRIPTS=NO in the DB2ZOSResponseFile.rsp to avoid this.
112
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Customize the CEI DDL
To customize the CEI DDL and run it using a normal DB2 z/OS utility such as
DSNTEP2, it is easiest to copy the generated DDL from the UNIX file system into
the z/OS file. We created a job A4SQLCP3 to copy the DDL to a sequential data
set, and the JCL is shown in Example 2-31.
Example 2-31 First step of A4SQLCP3 copy job
//COPY EXEC PGM=IKJEFT01,REGION=0M,TIME=1440
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BPXBATCH SH +
cd /wasa4config/a4cell/a4dmnode/DeploymentManager/; +
cd profiles/default/event/dbscripts/db2zos/ddl; +
cp 'cr_db.db2'
/tmp/A4EVTDB
+
1> /tmp/ceisqlcopy_1029.out +
2> /tmp/ceisqlcopy_1029.err; +
cp 'cr_db_catalog.db2'
/tmp/A4EVTDBC
1> /tmp/ceisqlcopy_1030.out +
2> /tmp/ceisqlcopy_1030.err; +
cp 'cr_tbl.db2'
/tmp/A4EVTTB
+
1> /tmp/ceisqlcopy_1031.out +
2> /tmp/ceisqlcopy_1031.err; +
cp 'cr_tbl_catalog.db2'
/tmp/A4EVTTBC
+
1> /tmp/ceisqlcopy_1032.out +
2> /tmp/ceisqlcopy_1032.err; +
cp 'ins_metadata.db2'
/tmp/A4EVTINS
+
1> /tmp/ceisqlcopy_1033.out +
2> /tmp/ceisqlcopy_1033.err; +
cp 'catalogSeed.db2'
/tmp/A4EVTSEE
+
1> /tmp/ceisqlcopy_1034.out +
2> /tmp/ceisqlcopy_1034.err;
+
1. The job A4SQLCP3 first copies the DDL to a temporary directory.
2. The A4SQLCP3 job prints the output and the error files created in the first
step.
3. The A4SQLCP3 job copies the output from the UNIX System Services files to
sequential data sets using an OGET command.
4. The final step deletes the temporary UNIX System Services files.
After running these jobs you should have the following sequential data sets:
A4CELL.SQL.A4EVTDB
A4CELL.SQL.A4EVTDBC
A4CELL.SQL.A4EVTINS
Chapter 2. WebSphere Process Server primary node configuration with DB2
113
A4CELL.SQL.A4EVTSEE
A4CELL.SQL.A4EVTTB
A4CELL.SQL.A4EVTTBC
These files have an LRECL of 255 and a RECFM of VB, but to execute SQL in
batch mode requires the input file to have an LRECL of 80 and RECFM of F or
FB. After ensuring that no statements extend beyond column 72, we copied the
MVS data sets containing the SQL statements into members within a PDS with a
LRECL of 80. For our A4 cell, we copied the DDL into a partitioned data set
called A4CELL.WPSDB2.SQL.
The DDL that is generated for CEI by config_event_database.sh is unqualified;
you must add a schema name (that is, a qualifier) in front of all the table and
index names. The editing must be done very carefully.
You have to perform the following checks on each file:
1. Remove all unprintable characters.
2. Wherever a table name is mentioned, ensure it is qualified by a schema
name.
3. Wherever an index name is mentioned, ensure it is qualified by a schema
name.
We used the ISPF edit commands, in the following order, to modify the SQL
statements as described previously:
1. C P'.' ' ' ALL
This command removes all unprintable characters.
2. C 'TABLE cei' 'TABLE A4CELL.cei' ALL
This adds the schema name to the table name.
3. C 'INDEX ' 'INDEX A4CELL.'
This adds the schema name to the index name. Do not use the ALL
parameter with this command because it could change statements incorrectly.
4. C 'ON cei' 'ON A4CELL.cei' ALL
This adds the schema name to the table name on the create index.
5. C 'STORES cei' 'STORES A4CELL.cei' ALL
This command adds the schema name to the table name on a create aux
table.
6. C 'INTO cei' 'INTO A4CELL.cei' ALL
This adds the schema name to the table name on an insert statement.
114
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
7. C 'REFERENCES cei' 'REFERENCES A4CELL.cei' ALL
This adds the schema name to a foreign key definition.
8. C 'VIEW cei' 'VIEW A4CELL.cei' ALL
This command adds the schema name to the table name on a create table
view definition.
9. C 'UPDATE cei' 'UPDATE A4CELL.cei' ALL
This adds the schema name to the table name on an update statement.
10.F PRIQTY and SECQTY to find all primary and secondary space allocations.
Note: Several of the change commands described in the previous steps
include a space as part of the string to be changed in order to correctly add
the schema name to the following table or index name. Be sure to perform
these changes as shown using the quotes and the spaces.
Execute the CEI DDL
We ran the job A4SQLRU2. which executes the SQL statements needed to
create the CEI tables (see Example 2-32).
Example 2-32 A4SQLRU2 JCL
//CREATE
EXEC PGM=IKJEFT01,DYNAMNBR=20
//SYSTSPRT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(D8I1)
RUN PROGRAM(DSNTEP2) PLAN(DSNTEP81) LIB('DB8IU.RUNLIB.LOAD')
//SYSIN
DD *
SET CURRENT SQLID = 'A4CELL' ;
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4EVTDB)
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4EVTDBC)
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4EVTTB)
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4EVTTBC)
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4EVTINS)
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4EVTSEE)
Note: The order of the concatenated SYSIN DD statements is important and
should be executed as shown.
This job should complete with return code 0.
Chapter 2. WebSphere Process Server primary node configuration with DB2
115
Configure the CEI resources
The shell script cr_db2zos_jdbc_provider.sh is used to configure the CEI
resources in WebSphere Process Server. You can find the shell script in the
Deployment Manager <WAS_HOME>/event/dsscripts/db2zos directory.
The shell script was created by config_event_database.sh, which you ran earlier,
and has been customized with the variables you specified in the
DB2ZOSResponseFile.rsp file. However, the J2C authentication alias userid and
password are not specified in the response file, and you must enter them
interactively.
The cr_db2zos_jdbc_provider.sh script can be executed only in interactive mode
so we launched it from a telnet session. Example 2-33 shows the log of our telnet
session when we configured CEI in cluster a4cl01 of our A4 cell.
Example 2-33 Log of telnet session running cr_db2zos_jdbc_provider
A4ADMIN: > cd
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/event/d
sscripts/db2zos
A4ADMIN:/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default
/event/dsscripts/db2zos: >./cr_db2zos_jdbc_provider.sh cluster a4cl01
Enter the DB2 user id: A4DBU
Enter the DB2 password:
display
<== the password is suppressed from the
Oct 5, 2007 10:09:41 AM com.ibm.events.install.util.WsadminUtil
executeCommand
INFO: WASX7209I: Connected to process "dmgr" on node a4dmnode using
SOAP connector; The type of process is: DeploymentManager
WASX7303I: The following options are passed to the scripting
environment and are available as argument that is stored in the argv
variable: "[-cluster, a4
cl01, -action, add, -dbName, DB8I, -jdbcDriverType, 2, -jdbcProvider,
DB2 Universal JDBC Driver Provider, -jdbcClassPath,
/usr/lpp/db2/d8ig/jcc/classes, uniJdbcClassPath, /usr/lpp/db2/d8ig/jcc/classes, -uniJdbcNativePath,
/usr/lpp/db2/d8ig/jcc/lib]"
Oct 5, 2007 10:09:41 AM com.ibm.events.install.util.WsadminUtil
executeCommand
INFO: Oct 5, 2007 10:09:06 AM db2zos_jdbc_provider
INFO: CEIIN0564I The WebSphere Application Server is in cell a4cell
Oct 5, 2007 10:09:06 AM db2zos_jdbc_provider
116
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
INFO: CEIIN0566I The share database is specified to cluster scope
/ServerCluster:a4cl01.
Oct 5, 2007 10:09:06 AM db2zos_jdbc_provider
INFO: CEIIN0583I Creating the JDBC provider Event_DB2ZOS_JDBC_Provider
at scope /ServerCluster:a4cl01.
Oct 5, 2007 10:09:12 AM db2zos_jdbc_provider
INFO: CEIIN0584I The JDBC provider template "DB2 Universal JDBC Driver
Provider" has been found.
Oct 5, 2007 10:09:35 AM db2zos_jdbc_provider
INFO: CEIIN0578I Creating the data source
/ServerCluster:a4cl01/JDBCProvider:Event_DB2ZOS_JDBC_Provider/DataSourc
e:event..
Oct 5, 2007 10:09:36 AM db2zos_jdbc_provider
INFO: CEIIN0587I Modifying the connection pool properties for the data
source event at scope /ServerCluster:a4cl01.
Oct 5, 2007 10:09:37 AM db2zos_jdbc_provider
INFO: CEIIN0578I Creating the data source
/ServerCluster:a4cl01/JDBCProvider:Event_DB2ZOS_JDBC_Provider/DataSourc
e:event_catalog..
Oct 5, 2007 10:09:37 AM db2zos_jdbc_provider
INFO: CEIIN0579I Creating the connection factory
Event_Catalog_DB2ZOS_CF.
Oct 5, 2007 10:09:38 AM db2zos_jdbc_provider
INFO: CEIIN0587I Modifying the connection pool properties for the data
source event_catalog at scope /ServerCluster:a4cl01.
Oct 5, 2007 10:09:38 AM db2zos_jdbc_provider
INFO: CEIIN0575I Saving the configuration.
Oct 5, 2007 10:09:40 AM db2zos_jdbc_provider
INFO: CEIIN0571I The JDBC provider Event_DB2ZOS_JDBC_Provider and the
data sources event, event_catalog have been created successfully.
Chapter 2. WebSphere Process Server primary node configuration with DB2
117
Install the CEI applications
You need to install two CEI applications, event-application.ear and
event-message.ear. We installed both applications using the wsadmin utility.
We found that the total length of the command to execute wsadmin.sh and pass
all the variables exceeded the limit of BPXBATCH SYSIN so we ran wsadmin.sh
from a telnet command line as shown in Example 2-34. Notice that we used the
-cluster option to define the CEI JDBC provider at the cluster level.
Example 2-34 Telnet session installing event application
> cd
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/event/
application
> ../../bin/wsadmin.sh -profile event-profile.jacl
-f event-application.jacl -action install
-earfile event-application.ear -backendid DB2UDBOS390_V8_1
-cluster a4cl01
WASX7209I: Connected to process "dmgr" on node a4dmnode using SOAP
connector; The type of process is: DeploymentManager
WASX7303I: The following options are passed to the scripting
environment and are available as argument that is stored in the argv
variable: "[-action, ins
tall, -earfile, event-application.ear, -backendid, DB2UDBOS390_V8_1,
-cluster, a4cl01]"
Oct 5, 2007 10:35:19 AM com.ibm.events.install.msg
INFO: CEIIN0501I The enterprise application EventServer is not
detected.
Oct 5, 2007 10:35:21 AM com.ibm.events.install.msg
INFO: CEIIN0501I The enterprise application EventServer is not
detected.
Oct 5, 2007 10:35:21 AM com.ibm.events.install.msg
INFO: CEIIN0676I The enterprise application EventServer is being
installed on cluster a4cl01.
WASX7327I: Contents of was.policy file:
grant codeBase "file:${application}" {
// The following is required by JXPath
permission java.io.FilePermission
"${was.install.root}${/}java${/}jre${/}lib${/}jxpath.properties",
"read";
permission java.io.FilePermission
"${was.install.root}${/}event${/}CloudScapeEventDB${/}-", "read, write,
delete";
118
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
permission java.io.FilePermission "${java.io.tmpdir}${/}guid.lock",
"read, write, delete";
};
grant codeBase "file:${jars}" {
};
grant codeBase "file:${connectorComponent}" {
};
grant codeBase "file:${webComponent}" {
};
grant codeBase "file:${ejbComponent}" {
};
ADMA5016I: Installation of EventServer started.
ADMA5058I: Application and module versions validated with versions of
deployment targets.
ADMA5005I: The application EventServer is configured in the WebSphere
Application Server repository.
ADMA5053I: The library references for the installed optional package
are created.
ADMA5005I: The application EventServer is configured in the WebSphere
Application Server repository.
ADMA5001I: The application binaries are saved in
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/wstemp/
Script115709741ab/workspace/cells/
a4cell/applications/EventServer.ear/EventServer.ear
ADMA5005I: The application EventServer is configured in the WebSphere
Application Server repository.
CWSCA3013I: Resources for the SCA application EventServer are being
configured.
CWSCA3023I: The EAR file app23924.ear is being loaded for the SCA
module.
CWSCA3014I: Resources for the SCA application EventServer have been
configured successfully.
SECJ0400I: Successfuly updated the application EventServer with the
appContextIDForSecurity information.
ADMA5011I: The cleanup of the temp directory for application
EventServer is complete.
ADMA5013I: Application EventServer installed successfully.
Oct 5, 2007 10:36:44 AM com.ibm.events.install.msg
INFO: CEIIN0500I The enterprise application EventServer is detected.
Chapter 2. WebSphere Process Server primary node configuration with DB2
119
Oct 5, 2007 10:36:47 AM com.ibm.events.install.msg
INFO: CEIIN0638I The registered enterprise application of the Common
Event Infrastructure service at scope cluster=a4cl01 is EventServer.
Oct 5, 2007 10:36:47 AM com.ibm.events.install.msg
INFO: CEIIN0668I The enterprise application EventServer has been
installed successfully on cluster a4cl01.
Oct 5, 2007 10:36:48 AM com.ibm.events.install.msg
INFO: CEIIN0680I The Common Event Infrastructure resource of type
EventBusTransmissionProfile with the name Default Common Event
Infrastructure event bus
transmission for a4cl01 at scope Cell:a4cell has been created
successfully.
Oct 5, 2007 10:36:48 AM com.ibm.events.install.msg
INFO: CEIIN0613I The emitter factory profile Default Common Event
Infrastructure emitter for a4cl01 at scope Cell:a4cell has been created
successfully.
Oct 5, 2007 10:36:50 AM com.ibm.events.install.msg
INFO: CEIIN0546I Configuration updates have been saved.
After installing event-message.ear, we launched wsadmin.sh to install
event-message.ear, as shown in Example 2-35. When installing
event-message.ear, you will be prompted for the userid and password that will be
used as a J2C authentication alias on the CEI SIB definition.
Example 2-35 Telnet session to install event message application
> cd /wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/event/application:
> ../../bin/wsadmin.sh -profile event-profile.jacl
-f default-event-message.jacl -action install
-earfile event-message.ear -cluster a4cl01
WASX7209I: Connected to process "dmgr" on node a4dmnode using SOAP connector; The type
of process is: DeploymentManager
WASX7303I: The following options are passed to the scripting environment and are
available as argument that is stored in the argv variable: "[-action, ins
tall, -earfile, event-message.ear, -cluster, a4cl01]"
Oct 5, 2007 10:39:50 AM com.ibm.events.install.util.StdinUtil getValuesFromStdin
FINEST: No values found from stdin pipe.
Enter the user ID for embedded messaging authentication:
A4JMSU
Enter the password for the user ID for embedded messaging authentication:
Retype the password for the user ID for embedded messaging authentication:
Oct 5, 2007 10:40:34 AM com.ibm.events.install.msg
120
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
INFO: CEIIN0641I The authentication alias a4cl01/CommonEventInfrastructureJMSAuthAlias
for the Common Event Infrastructure application was created.
Oct 5, 2007 10:40:34 AM com.ibm.events.install.msg
INFO: CEIIN0541I Installing messaging resources.
Oct 5, 2007 10:40:43 AM com.ibm.events.install.msg
INFO: CEIIN0650I The WebSphere Application Server JMS bus
CommonEventInfrastructure_Bus has been created successfully.
Oct 5, 2007 10:40:45 AM com.ibm.events.install.msg
INFO: CEIIN0652I The WebSphere Application Server JMS bus member cluster=a4cl01 has been
added to JMS bus CommonEventInfrastructure_Bus successfully.
Oct 5, 2007 10:40:49 AM com.ibm.events.install.msg
INFO: CEIIN0656I The JMS destination CommonEventInfrastructureQueueDestination has been
created successfully.
Oct 5, 2007 10:40:49 AM com.ibm.events.install.msg
INFO: CEIIN0656I The JMS destination CommonEventInfrastructureTopicDestination has been
created successfully.
Oct 5, 2007 10:40:53 AM com.ibm.events.install.msg
INFO: CEIIN0523I The WebSphere Application Server queue CommonEventInfrastructure_Queue
at scope cell=a4cell has been created successfully.
Oct 5, 2007 10:40:56 AM com.ibm.events.install.msg
INFO: CEIIN0527I The WebSphere Application Server queue connection factory
CommonEventInfrastructure_QueueCF at scope cell=a4cell has been created success
fully.
Oct 5, 2007 10:40:57 AM com.ibm.events.install.msg
INFO: CEIIN0554I The WebSphere Application Server topic
CommonEventInfrastructure_AllEventsTopic at scope cell=a4cell has been created
successfully.
Oct 5, 2007 10:40:58 AM com.ibm.events.install.msg
INFO: CEIIN0558I The WebSphere Application Server topic connection factory
CommonEventInfrastructure_AllEventsTopicCF at scope cell=a4cell has been create
d successfully.
Oct 5, 2007 10:40:59 AM com.ibm.events.install.msg
INFO: CEIIN0660I The WebSphere Application Server JMS Activation Specification
CommonEventInfractructure_ActivationSpecs has been created successfully.
Oct 5, 2007 10:41:01 AM com.ibm.events.install.msg
INFO: CEIIN0634I The default resource for the Common Event Infrastructure application
has been modified successfully.
Resource Type: EmitterFactoryProfile
Scope: Cell:a4cell
Name: Default Common Event Infrastructure emitter
Oct 5, 2007 10:41:01 AM com.ibm.events.install.msg
INFO: CEIIN0599I The JMS transmission profile Default Common Event Infrastructure JMS
transmission at scope Cell:a4cell has been created successfully.
Oct 5, 2007 10:41:02 AM com.ibm.events.install.msg
INFO: CEIIN0634I The default resource for the Common Event Infrastructure application
has been modified successfully.
Resource Type: EventGroupProfile
Scope: Cell:a4cell
Name: All events
Oct 5, 2007 10:41:03 AM com.ibm.events.install.msg
Chapter 2. WebSphere Process Server primary node configuration with DB2
121
INFO: CEIIN0634I The default resource for the Common Event Infrastructure application
has been modified successfully.
Resource Type: EmitterFactoryProfile
Scope: Cell:a4cell
Name: Default Common Event Infrastructure emitter for a4cl01
Oct 5, 2007 10:41:03 AM com.ibm.events.install.msg
INFO: CEIIN0501I The enterprise application EventServerMdb is not detected.
Oct 5, 2007 10:41:03 AM com.ibm.events.install.msg
INFO: CEIIN0676I The enterprise application EventServerMdb is being installed on cluster
a4cl01.
WASX7327I: Contents of was.policy file:
grant codeBase "file:${application}" {
// The following is required by JXPath
permission java.io.FilePermission
"${was.install.root}${/}java${/}jre${/}lib${/}jxpath.properties", "read";
};
grant codeBase "file:${jars}" {
};
grant codeBase "file:${connectorComponent}" {
};
grant codeBase "file:${webComponent}" {
};
grant codeBase "file:${ejbComponent}" {
};
ADMA5016I: Installation of EventServerMdb started.
ADMA5058I: Application and module versions validated with versions of deployment
targets.
ADMA5005I: The application EventServerMdb is configured in the WebSphere Application
Server repository.
ADMA5053I: The library references for the installed optional package are created.
ADMA5005I: The application EventServerMdb is configured in the WebSphere Application
Server repository.
ADMA5001I: The application binaries are saved in
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/wstemp/Script115709b678f
/workspace/cells/
a4cell/applications/EventServerMdb.ear/EventServerMdb.ear
ADMA5005I: The application EventServerMdb is configured in the WebSphere Application
Server repository.
CWSCA3013I: Resources for the SCA application EventServerMdb are being configured.
CWSCA3023I: The EAR file app24635.ear is being loaded for the SCA module.
CWSCA3014I: Resources for the SCA application EventServerMdb have been configured
successfully.
SECJ0400I: Successfuly updated the application EventServerMdb with the
appContextIDForSecurity information.
ADMA5011I: The cleanup of the temp directory for application EventServerMdb is complete.
ADMA5013I: Application EventServerMdb installed successfully.
Oct 5, 2007 10:42:10 AM com.ibm.events.install.msg
INFO: CEIIN0500I The enterprise application EventServerMdb is detected.
122
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Oct 5, 2007 10:42:10 AM com.ibm.events.install.msg
INFO: CEIIN0638I The registered enterprise application of the Common Event
Infrastructure service at scope cluster=a4cl01 is EventServer EventServerMdb.
Oct 5, 2007 10:42:10 AM com.ibm.events.install.msg
INFO: CEIIN0668I The enterprise application EventServerMdb has been installed
successfully on cluster a4cl01.
Oct 5, 2007 10:42:13 AM com.ibm.events.install.msg
INFO: CEIIN0546I Configuration updates have been saved.
Notice that during the installation of event-message.ear, the event-message.jacl
script also configures a SIB for the CEI.
You can see the new SIB by navigating to Service Integration → Buses.
At this point, the CEI SIB is not fully configured. You could configure it manually,
but the configuration will be completed when you run the fixWPSVars.jacl script
later.
Set the currentSchema property on the CEI JDBC data sources
The shell script cr_db2zos_jdbc_provider.sh creates a JDBC provider with two
data sources for the CEI at cluster level. You must customize the
currentSchema property, and the steps that follow describe how to do so.
Chapter 2. WebSphere Process Server primary node configuration with DB2
123
1. Navigate to Resources → JDBC Providers and set the scope to the cluster
level. You will access a JDBC provider Event_DB2ZOS_JDBC_Provider as
shown in Figure 2-46.
Figure 2-46 CEI event JDBC provider
124
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
2. Click the link to the Event_DB2ZOS_JDBC_Provider configuration and then
click the Data sources link under Additional Properties as shown in
Figure 2-47.
Figure 2-47 Click link to data sources
You will access two data sources as shown in Figure 2-48.
Figure 2-48 CEI data sources
3. Click the data source in the first row (event) and then click Custom
properties. Look for the currentSchema property, which will not be set.
Chapter 2. WebSphere Process Server primary node configuration with DB2
125
4. Click the currentSchema property and set the value to the schema name you
wish to use for the CEI database. For CEI in our A4 cell, we used a schema
name of A4CELL as shown in Figure 2-49.
Figure 2-49 Set CEI event data source schema name
5. Check that the property fullyMaterializeLobData is set to false as shown in
Figure 2-50.
Figure 2-50 Check that fullyMaterializeLobData is set to false
126
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Delete the CEI Cloudscape data source
The Cloudscape data source defined for CEI can be deleted because you will be
using the DB2 JDBC provider when configuring WebSphere Process Server for
z/OS in a cluster. The following steps describe the process of deleting the
Cloudscape data source.
1. Navigate to Resources → JDBC providers and set the scope to the cluster
level as shown in Figure 2-51.
Figure 2-51 CEI JDBC providers
2. Click the Cloudscape JDBC Provider (XA) link.
Chapter 2. WebSphere Process Server primary node configuration with DB2
127
3. Click the link to Data sources under Additional Properties as shown in
Figure 2-52.
Figure 2-52 Link to CEI data sources
4. Check the box next to the data source and then click the Delete button as
shown in Figure 2-53.
Figure 2-53 Delete old CEI Cloudscape data source
5. Save your configuration changes.
2.4.4 Configure business process container
In WebSphere Process Server for z/OS Version 6.0.1, the business process
container can be configured using either a wizard provided on the WebSphere
Administration Console or by running the bpeconfig.jacl script.
128
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
When configuring a WebSphere Process Server for z/OS Version 6.0.1 cluster,
we recommended using the bpeconfig.jacl script rather than the wizard. The
bpeconfig.jacl had to be run interactively when configuring business process
container in a cluster.
In WebSphere Process Server for z/OS Version 6.0.2, you have the same two
options, and the bpeconfig.jacl script has been enhanced to accept a series of
properties passed to it on invocation. Although passing properties to
bpeconfig.jacl is much easier than driving bpeconfig.jacl interactively, it does not
support a clustered configuration, so you still have to run bpeconfig.jacl
interactively when configuring the business process container into a cluster.
We decided to use the business process container wizard to configure the
business process container in WebSphere Process Server for z/OS Version
6.0.2.
WebSphere Process Server for z/OS Version 6.0.2 includes a new BPC
feature—the BPC Observer, which is also configured using the business process
container installation wizard. If you want to use the BPC Observer, you normally
configure it at the same time as you configure the business process container.
In summary, the steps to configuring the business process container are as
follows:
1. Copy the supplied business process container DDL.
2. Customize the DDL that creates the business process container tables and
indexes.
3. Execute the business process container DDL.
4. Run the business process container installation wizard.
5. Run the Human Task Container installation wizard.
Copy the business process container DDL
The A4SQLCP1 job copies the supplied business process container DDL files
into MVS files. This copy process requires multiple steps.
1. The first step in the A4SQLCP1 job copies and converts the supplied DDL
into a temporary directory (see Example 2-36).
Example 2-36 A4SQLCP1 copies DDL
//COPY EXEC PGM=IKJEFT01,REGION=0M,TIME=1440
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BPXBATCH SH +
cd /usr/lpp/zWPSA4/V6R0/dbscripts; +
Chapter 2. WebSphere Process Server primary node configuration with DB2
129
cd ProcessChoreographer/DB2zOSV8; +
/u/jo/wpswork/cvtA2E.sh +
'createSchema.sql' +
'/tmp/A4BPETB.sql' +
1> /tmp/wpssqlcopy_1030.out +
2> /tmp/wpssqlcopy_1030.err; +
/u/jo/wpswork/cvtA2E.sh +
'createSchema_Observer.sql' +
'/tmp/A4BPEOTB.sql' +
1> /tmp/wpssqlcopy_1031.out +
2> /tmp/wpssqlcopy_1031.err; +
/u/jo/wpswork/cvtA2E.sh +
'createTablespace.sql' +
'/tmp/A4BPETS.sql' +
1> /tmp/wpssqlcopy_1032.out +
2> /tmp/wpssqlcopy_1032.err; +
/u/jo/wpswork/cvtA2E.sh +
'createTablespace_Observer.sql' +
'/tmp/A4BPEOTS.sql' +
1> /tmp/wpssqlcopy_1033.out +
2> /tmp/wpssqlcopy_1033.err;
2. The A4SQLCP1 job prints the output and the error files created in the first
step.
3. The A4SQLCP1 job copies the output from the UNIX System Services files to
ISPF data sets using an OGET command.
4. The A4SQLCP1 job deletes the temporary UNIX System Services files.
After running these jobs, you should have the following MVS files:
A4CELL.SQL.A4BPEOTB
A4CELL.SQL.A4BPEOTS
A4CELL.SQL.A4BPETB
A4CELL.SQL.A4BPETS
These files have an LRECL of 255 and a RECFM of VB, but to execute SQL in
batch mode requires the input file to have an LRECL of 80 and RECFM of F or
FB. To make these changes, we first ensured that no statements extended
beyond column 72. Then we copied the MVS data sets containing the SQL
statements into members within a PDS with a LRECL of 80.
130
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Customize the business process container DDL
You have to perform the following checks on each file:
򐂰 Remove all unprintable characters.
򐂰 Wherever a table name is mentioned, ensure it is qualified by a schema
name.
򐂰 Wherever an index name is mentioned, ensure it is qualified by a schema
name.
To modify the SQL statements as described in the preceding list, we used the
following ISPF edit commands in the following order:
1. C P'.' ' ' ALL
This command removes all unprintable characters.
2. C '@STOGROUP@' 'A4DBSTO' ALL
This changes the DB2 storage group.
3. C '@DBNAME@' 'A4BPEDB' ALL
This changes the DB2 database name.
4. C '@_SQLID@' 'A4CELL' ALL
This changes the DB2 schema name.
5. C '@WLMID@' 'D8IGWLMJ' ALL
This command changes the WLM_ENVIRONMENT name of the stored
procedure address space. This address space will run the user-defined
function provided in bpcodbutil.jar.
Note: Several of the change commands include a space in order to correctly
add the schema name to the table or index name that follows. Be sure to
perform these changes as shown using the quotes and the spaces.
Execute the business process container DDL
We ran the job A4SQLRU3 shown in Example 2-37, which executes only the
DDL to create the business process container tables.
Example 2-37 Job A4SQLRU3 to execute business process container DDL
//JOBLIB DD DISP=SHR,DSN=DB8IU.SDSNEXIT
//
DD DISP=SHR,DSN=DB8I8.SDSNLOAD
//*
//* Before running this:
//* The userid on the SET CURRENT SQLID statement must
//* have DB2 SYSADM authority and EXECUTE on PLAN DSNTIA81
Chapter 2. WebSphere Process Server primary node configuration with DB2
131
//*
//* Create BPE Tables and Tablespaces.
//*
//CREATE
EXEC PGM=IKJEFT01,DYNAMNBR=20
//SYSTSPRT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(D8I1)
RUN PROGRAM(DSNTEP2) PLAN(DSNTEP81) LIB('DB8IU.RUNLIB.LOAD')
//SYSIN
DD *
SET CURRENT SQLID = 'A4CELL' ;
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4BPETS)
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4BPETB)
This job should complete with return code 0.
The DDL for the BPC Observer cannot be executed via SPUFI or DSNTEP2 at
this time because it uses a CREATE FUNCTION that refers to a Java utility that
must be defined to DB2 first. We decided to configure the BPC Observer DDL as
a later step.
132
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Run the business process container installation wizard
The following steps show how the business process container installation wizard
is invoked using the WepSphere Administration Console.
1. Log in to the WebSphere Administration Console and navigate to Servers →
Clusters.
2. Click the cluster name and then click Business process container under
Additional Properties as shown in Figure 2-54.
Figure 2-54 Navigate to Business process container configuration
Chapter 2. WebSphere Process Server primary node configuration with DB2
133
3. Click the Business process container Installation wizard link to start the
configuration process as shown in Figure 2-55.
Figure 2-55 Start Business process container installation wizard
The messages in the message box at the top of the screen indicate that the
business process container and the human task container have not been
configured.
The business process container installation wizard includes the following three
steps:
1. First you choose the type of database that will be used as the data store for
business process container. For our WebSphere Process Server for z/OS cell,
we selected DB2 on z/OS as shown in Figure 2-56.
Figure 2-56 Select data store
134
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
After you have chosen the type of data store, the wizard completes the
implementation class name and the classpath for the JDBC provider.
Farther down the database configuration page inappropriate values are set
for the Data source user name and Data source password fields. You must
also change some of the custom properties.
2. Set the data source user name and data source password to the userid and
password you have decided to use as the J2C authentication alias for JDBC
data sources. For our A4 cell, this name was A4DBU so we completed the
fields as shown in Figure 2-57.
Figure 2-57 Set data source user name
3. Change the databaseName property in the Custom Properties list box to the
location name of your DB2 system. For our A4 cell, this name was DB8I as
shown in Figure 2-58.
Figure 2-58 Set database name property
Chapter 2. WebSphere Process Server primary node configuration with DB2
135
4. Scroll down the list of custom properties and set the currentSchema property
to the correct value for the business process container database. For our A4
cell, we set currentSchema to A4CELL as shown in Figure 2-59.
Figure 2-59 Set currentSchema property
5. Click Next to proceed.
On the step 2 panel of the Business process container Installation wizard, the
JMS userid and the JMS API userid are set to the userid you used to log in to
the WebSphere Administration Console.
6. Set these userids and their passwords correctly to reflect the userids you
planned to use.
For our A4 cell, the JMS userid is A4JMSU and the JMS API userid is
A4JMSAPI as shown in Figure 2-60.
Figure 2-60 Set JMS userids and role groups
7. Click Next to proceed.
136
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
8. You can change the context root for the business process container in step 3
of the wizard, but we decided to let it default to /bpc. You must change the
JMS userid and JMS password fields to the userid and password you planned
to use for the business process container SIB JMS queue access. For our A4
cell, this was A4JMSU as shown in Figure 2-61.
Figure 2-61 Set business process container context root and JMS userid
9. Click Next.
A summary of the configuration actions that will made is displayed (see
Figure 2-62). Notice that the messages at the top warn that you must
manually create the tablespaces, tables, and indexes because the wizard is
not going to create them.
Figure 2-62 Business process container installation wizard configuration summary
10.Click Finish.
Chapter 2. WebSphere Process Server primary node configuration with DB2
137
After you click Finish, the messages shown in Example 2-38 are issued and
confirm the correct configuration of the business process container.
Example 2-38 Messages issued by business process container installation wizard
Installing...
Check the SystemOut.log on the Deployment Manager or server where the application is
deployed for specific information about the EJB deployment process as it occurs.
ADMA5016I: Installation of BPEContainer_a4cl01 started.
WSEC0106W: Your application may have Web Services Security enabled. If it does, you must
go to the Enterprise Application Management panels to configure the binding information
for Web Services Security. The binding information for Web Services Security is not
collected during application deployment. If it is not properly configured, your
application may not start or be usable.
ADMA5058I: Application and module versions validated with versions of deployment
targets.
ADMA5005I: The application BPEContainer_a4cl01 is configured in the WebSphere
Application Server repository.
ADMA5053I: The library references for the installed optional package are created.
ADMA5005I: The application BPEContainer_a4cl01 is configured in the WebSphere
Application Server repository.
ADMA5001I: The application binaries are saved in
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/wstemp/1769895740/worksp
ace/cells/a4cell/applications/BPEContainer_a4cl01.ear/BPEContainer_a4cl01.ear
ADMA5005I: The application BPEContainer_a4cl01 is configured in the WebSphere
Application Server repository.
CWSCA3013I: Resources for the SCA application BPEContainer_a4cl01 are being configured.
CWSCA3023I: The EAR file 1769895740BPEContainer_a4cl01.ear is being loaded for the SCA
module.
CWSCA3017I: Installation task Resource Task for SCA Messaging Binding and EIS Binding is
running.
CWSCA4007I: SCDL module BFMIF_a4cl01 is being loaded. Import
"sca/dynamic/import/scaimport".
CWSCA4007I: SCDL module BFMIF_a4cl01 is being loaded. Import
"sca/dynamic/import/wsimport".
CWSCA4008I: SCDL module BFMIF_a4cl01 is being loaded. Export
"com/ibm/bpe/api/sca/BFMWS".
CWSCA3017I: Installation task MQ Resource Task for SCA MQImportBinding/MQExportBinding
is running.
CWSCA3017I: Installation task SIBus Destination Resource Task for SCA Asynchronous
Invocations is running.
CWSCA3017I: Installation task EJB NamespaceBinding Resource Task for SCAImportBinding is
running.
CWSCA3017I: Installation task SIBus Destination Resource Task for SCA SOAP/JMS
Invocations is running.
CWSCA3014I: Resources for the SCA application BPEContainer_a4cl01 have been configured
successfully.
SECJ0400I: Successfuly updated the application BPEContainer_a4cl01 with the
appContextIDForSecurity information.
ADMA5011I: The cleanup of the temp directory for application BPEContainer_a4cl01 is
complete.
ADMA5013I: Application BPEContainer_a4cl01 installed successfully.
ADMA5017I: Uninstallation of BPCExplorer_a4cl01 started.
138
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
CWSCA3018I: Resources for the SCA application BPCExplorer_a4cl01 are being removed.
ADMA5104I: The server index entry for WebSphere:cell=a4cell,node=a4nodea is updated
successfully.
ADMA5102I: The configuration data for BPCExplorer_a4cl01 from the configuration
repository is deleted successfully.
ADMA5011I: The cleanup of the temp directory for application BPCExplorer_a4cl01 is
complete.
ADMA5106I: Application BPCExplorer_a4cl01 uninstalled successfully.
ADMA5016I: Installation of BPCExplorer_a4cl01 started.
ADMA5058I: Application and module versions validated with versions of deployment
targets.
ADMA5009I: An application archive is extracted at
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/wstemp/wstemp/app_1158aa
36912/ext
ADMA5003I: The JavaServer Pages (JSP) files in the Web archive (WAR) files
bpcexplorer.war compiled successfully.
ADMA5005I: The application BPCExplorer_a4cl01 is configured in the WebSphere Application
Server repository.
ADMA5053I: The library references for the installed optional package are created.
ADMA5005I: The application BPCExplorer_a4cl01 is configured in the WebSphere Application
Server repository.
ADMA5001I: The application binaries are saved in
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/wstemp/1769895740/worksp
ace/cells/a4cell/applications/BPCExplorer_a4cl01.ear/BPCExplorer_a4cl01.ear
ADMA5005I: The application BPCExplorer_a4cl01 is configured in the WebSphere Application
Server repository.
CWSCA3013I: Resources for the SCA application BPCExplorer_a4cl01 are being configured.
CWSCA3023I: The EAR file ext is being loaded for the SCA module.
CWSCA3014I: Resources for the SCA application BPCExplorer_a4cl01 have been configured
successfully.
SECJ0400I: Successfuly updated the application BPCExplorer_a4cl01 with the
appContextIDForSecurity information.
ADMA5011I: The cleanup of the temp directory for application BPCExplorer_a4cl01 is
complete.
ADMA5013I: Application BPCExplorer_a4cl01 installed successfully.
ADMA5017I: Uninstallation of BPCObserver_a4cl01 started.
CWSCA3018I: Resources for the SCA application BPCObserver_a4cl01 are being removed.
ADMA5104I: The server index entry for WebSphere:cell=a4cell,node=a4nodea is updated
successfully.
ADMA5102I: The configuration data for BPCObserver_a4cl01 from the configuration
repository is deleted successfully.
ADMA5011I: The cleanup of the temp directory for application BPCObserver_a4cl01 is
complete.
ADMA5106I: Application BPCObserver_a4cl01 uninstalled successfully.
ADMA5016I: Installation of BPCObserver_a4cl01 started.
ADMA5058I: Application and module versions validated with versions of deployment
targets.
ADMA5005I: The application BPCObserver_a4cl01 is configured in the WebSphere Application
Server repository.
ADMA5053I: The library references for the installed optional package are created.
ADMA5005I: The application BPCObserver_a4cl01 is configured in the WebSphere Application
Server repository.
Chapter 2. WebSphere Process Server primary node configuration with DB2
139
ADMA5001I: The application binaries are saved in
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/wstemp/1769895740/worksp
ace/cells/a4cell/applications/BPCObserver_a4cl01.ear/BPCObserver_a4cl01.ear
ADMA5005I: The application BPCObserver_a4cl01 is configured in the WebSphere Application
Server repository.
CWSCA3013I: Resources for the SCA application BPCObserver_a4cl01 are being configured.
CWSCA3023I: The EAR file 1769895740BPCObserver_a4cl01.ear is being loaded for the SCA
module.
CWSCA3014I: Resources for the SCA application BPCObserver_a4cl01 have been configured
successfully.
SECJ0400I: Successfuly updated the application BPCObserver_a4cl01 with the
appContextIDForSecurity information.
ADMA5011I: The cleanup of the temp directory for application BPCObserver_a4cl01 is
complete.
ADMA5013I: Application BPCObserver_a4cl01 installed successfully.
ADMA5017I: Uninstallation of BPCECollector_a4cl01 started.
CWSCA3018I: Resources for the SCA application BPCECollector_a4cl01 are being removed.
ADMA5104I: The server index entry for WebSphere:cell=a4cell,node=a4nodea is updated
successfully.
ADMA5102I: The configuration data for BPCECollector_a4cl01 from the configuration
repository is deleted successfully.
ADMA5011I: The cleanup of the temp directory for application BPCECollector_a4cl01 is
complete.
ADMA5106I: Application BPCECollector_a4cl01 uninstalled successfully.
ADMA5016I: Installation of BPCECollector_a4cl01 started.
ADMA5058I: Application and module versions validated with versions of deployment
targets.
ADMA5005I: The application BPCECollector_a4cl01 is configured in the WebSphere
Application Server repository.
ADMA5053I: The library references for the installed optional package are created.
ADMA5005I: The application BPCECollector_a4cl01 is configured in the WebSphere
Application Server repository.
ADMA5001I: The application binaries are saved in
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/wstemp/1769895740/worksp
ace/cells/a4cell/applications/BPCECollector_a4cl01.ear/BPCECollector_a4cl01.ear
ADMA5005I: The application BPCECollector_a4cl01 is configured in the WebSphere
Application Server repository.
CWSCA3013I: Resources for the SCA application BPCECollector_a4cl01 are being configured.
CWSCA3023I: The EAR file 1769895740BPCECollector_a4cl01.ear is being loaded for the SCA
module.
CWSCA3014I: Resources for the SCA application BPCECollector_a4cl01 have been configured
successfully.
SECJ0400I: Successfuly updated the application BPCECollector_a4cl01 with the
appContextIDForSecurity information.
ADMA5011I: The cleanup of the temp directory for application BPCECollector_a4cl01 is
complete.
ADMA5013I: Application BPCECollector_a4cl01 installed successfully.
ADMA5013I: Application BPEContainer_a4cl01 installed successfully.
ADMA5013I: Application BPCExplorer_a4cl01 installed successfully.
ADMA5013I: Application BPCObserver_a4cl01 installed successfully.
ADMA5013I: Application BPCECollector_a4cl01 installed successfully.
140
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
After saving your changes to the master configuration, you must also restart the server
to be able to use the business process container.
In order to use human task capabilities, the Human Task Manager must also be configured.
The Human Task Manager configuration is here.
To start the application, first save changes to the master configuration.
Save to Master Configuration
Configure the human task container
After you have configured the business process container, you configure the
human task container. When you finish with the business process container
installation wizard and save the configuration changes, you return to the Server
Cluster panel.
1. Click the Human task container link under Additional Properties as shown
in Figure 2-63.
Figure 2-63 Click link to configure human task container
Chapter 2. WebSphere Process Server primary node configuration with DB2
141
2. Under Additional Properties, click the link to start the Human task container
installation wizard as shown in Figure 2-64.
Figure 2-64 Start Human task container installation wizard
3. In the panel for step 1 of the wizard, set the appropriate userids and
passwords.
The Webservices Endpoint field under SCA Bindings configuration
should be left as HTMIF_<clustername> where <clustername> is the cluster
into which you are configuring the human task container.
142
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
For our A4 cell, the values we entered are as shown in Figure 2-65.
Figure 2-65 Set userids and role groups
4. Click Next to proceed to step 2 of the Human task container installation
wizard.
5. In the step 2 panel (see Figure 2-66), you can make selections for the mail
session and logging.
Figure 2-66 Enable CEI logging and audit logging
We decided not to check the box for a mail session because we did not have
a mail server configured. However, since we planned to use the BPC
Observer, we checked the Enable Common Event Infrastructure logging and
Enable audit logging for all human tasks check boxes.
Chapter 2. WebSphere Process Server primary node configuration with DB2
143
6. Click Next to proceed to step 3 of the wizard, which is a summary of the
configuration actions that will be performed (see Figure 2-67).
Figure 2-67 Human task container installation wizard configuration summary
7. Click Finish to start the configuration.
After you click Finish, the messages shown in Example 2-39 are issued and
confirm the correct configuration of the human task container.
Example 2-39 Messages issued by Human task container installation wizard
Installing...
Check the SystemOut.log on the Deployment Manager or server where the application is
deployed for specific information about the EJB deployment process as it occurs.
ADMA5016I: Installation of TaskContainer_a4cl01 started.
WSEC0106W: Your application may have Web Services Security enabled. If it does, you must
go to the Enterprise Application Management panels to configure the binding information
for Web Services Security. The binding information for Web Services Security is not
collected during application deployment. If it is not properly configured, your
application may not start or be usable.
ADMA5016I: Installation of SchedulerCalendars started.
ADMA5058I: Application and module versions validated with versions of deployment
targets.
ADMA5005I: The application SchedulerCalendars is configured in the WebSphere Application
Server repository.
ADMA5053I: The library references for the installed optional package are created.
ADMA5005I: The application SchedulerCalendars is configured in the WebSphere Application
Server repository.
ADMA5001I: The application binaries are saved in
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/wstemp/1769895740/worksp
ace/cells/a4cell/applications/SchedulerCalendars.ear/SchedulerCalendars.ear
ADMA5005I: The application SchedulerCalendars is configured in the WebSphere Application
Server repository.
144
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
CWSCA3013I: Resources for the SCA application SchedulerCalendars are being configured.
CWSCA3023I: The EAR file 1769895740SchedulerCalendars.ear is being loaded for the SCA
module.
CWSCA3014I: Resources for the SCA application SchedulerCalendars have been configured
successfully.
SECJ0400I: Successfuly updated the application SchedulerCalendars with the
appContextIDForSecurity information.
ADMA5011I: The cleanup of the temp directory for application SchedulerCalendars is
complete.
ADMA5013I: Application SchedulerCalendars installed successfully.
ADMA5013I: Application SchedulerCalendars installed successfully.
After saving to the master configuration, you must restart the server to be able to use
the Human Task Manager.
In order to use Human Task Manager capabilities, the Business Process Container must
also be configured. The Business Process Container configuration is here.
To start the application, first save changes to the master configuration.
Save to Master Configuration
The Business process container and Human task container installation
wizards install applications in addition to configuring several resources. You
can confirm whether the containers are started as follows:
8. Navigate to Applications → SCA Modules.
Both the two entries listed should be started as shown in Figure 2-68.
Figure 2-68 Check that business process container and human task container SCA
modules are started
The business process container configuration is now complete. Back up the HFS
using the job HFSDUMP.
Chapter 2. WebSphere Process Server primary node configuration with DB2
145
2.4.5 Configure BPC Event Collector and BPC Observer
The BPC Observer depends on a component called the BPC Event Collector,
which must be configured along with the BPC Observer.
The BPC Event Collector makes use of a DB2 user-defined function (UDF),
which is Java code provided with WebSphere Process Server in the jar file
bpcodbutl.jar.
The Java function is named in CREATE FUNCTION statements in the DDL that
configures the BPC Event Collector in DB2. Therefore the function must be
installed into DB2 before you run the DDL that contains the CREATE FUNCTION
statements.
The following two approaches are used to define the function to DB2:
򐂰 Create a stored procedure address space configured for Java and put
bpcodbutil.jar on the CLASSPATH.
򐂰 Load bpcodbutil.jar into DB2 using the DB2-provided stored procedure
SQLJ.DB2_INSTALL_JAR.
We used the latter approach because it is described in the WebSphere Process
Server documentation. The setupEventCollector.sh shell script loads
bpcodbutil.jar into the DB2 catalog (into SYSIBM.SYSJARCONTENTS) and
defines all the BPC Event Collector and BPC Observer tables.
A disadvantage to this approach is that the bpcodbutil.jar file is no longer
associated with a particular WebSphere Process Server node’s product HFS.
Normally product upgrades are implemented by rolling out the new product
across one node at a time, but if bpcodbutil.jar is updated by a program
temporary fix (PTF), you have to replace it in the DB2 catalog.
The setupEventCollector.sh script provides an option that loads bpcodbutil.jar
and also configures the BPC Event Collector and BPC Observer tables, but no
single, separate option just replaces bpcodbutil.jar. You have to create your own
program to call SQLJ.DB2_REPLACE_JAR to replace bpcodbutil.jar.
For this reason, you may prefer not to load bpcodbutil.jar into DB2 and instead
load it from the CLASSPATH of the stored procedure address space. The next
two sections describe each of the two previously listed approaches to making
bpcodbutil.jar available to CREATE FUNCTION.
146
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Accessing bpcodbutil.jar from stored procedure CLASSPATH
This section describes how to set up a DB2 stored procedure address space so
that bpcodbutil.jar is loaded via the CLASSPATH. We did not follow this
approach, but it is a valid alternative described on the DB2 Infocenter Web
site—that is, the IBM Information Management Software for z/OS Solutions
Information Center, which is accessible from:
http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp
You should consult the DB2 Infocenter for more detailed information about how to
set up stored procedure address spaces to run a Java routine.
We followed the approach described in the next section “Loading bpcodbutil.jar
into the DB2 catalog” on page 152.
The DDL provided for the Event Collector includes CREATE FUNCTION
statements. Before you can execute a CREATE FUNCTION statement, the
function must be available via either CLASSPATH or the DB2 catalog table
SYSIBM.SYSJARCONTENTS.
The EXTERNAL NAME parameter on the CREATE FUNCTION statement
references the Java class within bpcodbutil.jar that provides the INTERVALIN
UDF.
The two formats for the EXTERNAL NAME are as follows:
򐂰 The DDL, as supplied, uses the format that expects bpcodbutil.jar to be
loaded into the DB2 catalog. That format is as follows:
EXTERNAL NAME
‘BPCODBUTIL:com.ibm.bpe.observer.dbutil.Timestamputil.intervalinInt’
The first part of the EXTERNAL NAME (BPCODBUTIL) is the name of the jar
file that contains the class. You use this form if you plan to load bpcodbutil.jar
into the DB2 catalog.
򐂰 The second form of EXTERNAL NAME does not specify the name of the JAR
file, which means that the class must be loaded from the CLASSPATH of the
stored procedure address space where it will execute. This form of
EXTERNAL NAME is as follows:
EXTERNAL NAME
‘com.ibm.bpe.observer.dbutil.Timestamputil.intervalinInt’
The CREATE FUNCTION statement also contains the WLM ENVIRONMENT
parameter. The WLM ENVIRONMENT name you specify on CREATE
FUNCTION must be defined to zWLM, and you must create a stored procedure
address space that will service that WLM ENVIRONMENT. That stored
procedure address space must be set up as a Java-language address space with
Chapter 2. WebSphere Process Server primary node configuration with DB2
147
a //JAVAENV DD statement that includes environment variables for a Java virtual
machine. One of these is the CLASSPATH on which you will include
bpcodbutil.jar.
For example, the steps that follow are based on the assumption that your DB2
data-sharing group name is DB2G:
1. You can choose to use a WLM ENVIRONMENT called DB2GWPSJ on the
CREATE FUNCTION statements in the BPC Event Collector DDL.
2. Define the application environment called DB2GWPSJ to zWLM, specifying
the name of the stored procedure address space that will service that
environment.
3. Start the WLM ISPF dialog using the command TSO %IWMARIN0 from the
ISPF command line.
4. Press Enter to remove the WLM logo.
5. Choose option 2 to extract the WLM definition from the coupling data set.
6. Select option 9 to define the application environments.
7. Under the Action column on the left, you can either enter 1 to create a new
definition or locate an entry for an existing DB2 stored procedure application
environment and enter 2 to copy it.
8. Define the DB2GWPSJ application environment as shown in Figure 2-69.
Figure 2-69 Define DB2GWPSJ application environment to zWLM
9. Hit PF3 to go back to the main menu.
10.Move your cursor to the Utilities option at the top of the screen and press
Enter.
148
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
11.Select option 1 to Install the changed definition.
12.Select option 3 to activate the WLM policy. You must select your current WLM
policy on the next menu.
The DB2GWPSJ application environment has now been created and is
active.
13.Allocate a sequential data set to contain the JVM environment variables. This
data set should be allocated as RECFM=VB, LRECL=255.The name of this
data set does not matter, but let us assume you call it
A4CELL.WPS.JAVAENV.
14.Edit the A4CELL.WPS.JAVAENV data set and set up the environment
variables as shown in Example 2-40.
Example 2-40 JAVAENV environment variables
XPLINK(ON),
ENVAR("JAVA_HOME=/wasa4config/a4cell/a4dmnode/DeploymentManager/java",
"JCC_HOME=/usr/lpp/db2/db2g/jcc",
"CLASSPATH=.:/wasa4config/a4cell/a4dmnode/DeploymentManager/lib/bpcodbu
til.jar",
"JVMPROPS=/u/db2g/jvmprops",
"WORK_DIR=/tmp/db2gwlmj"),
MSGFILE(JSPDEBUG)
– Set the JAVA_HOME variable to the path for the Java SDK that is
associated with WebSphere Application Server Version 6.0.2. Normally
each node references its Java SDK at <WAS_INSTALL_ROOT>/java;
however, because the JCL for a stored procedure address space applies
across the sysplex, specifying one of the WebSphere Application Server
nodes on the path does not make sense unless you organize your system
proclibs so that the DB2GWPSJ-started task JCL is not in a shared
proclib. In Example 2-40, we reference the DeploymentManager’s Java
SDK.
– The variable JCC_HOME should reference the path to the DB2 Universal
Driver home directory.
Chapter 2. WebSphere Process Server primary node configuration with DB2
149
– The CLASSPATH variable must include the current directory (“.”) and the
path to bpcodbutil.jar.
– The JVMPROPS variable must reference a properties files in the UNIX file
system. The properties files should be set up as shown in Example 2-41.
Example 2-41 JVMPROPS file
# Properties file
# Set the initial
-Xms64M
# Set the maximum
-Xmx128M
# Initial size of
-Xinitacsh512K
# Initial size of
-Xinitsh512K
# Initial size of
-Xinitth32M
for JVM for Java routines
size of middleware heap
size of non-system heap
application class system heap
system heap
transient heap
– The properties WORK_DIR and MSGFILE are used to control where
diagnostics are issued.
15.Create a started task JCL in SYS1.PROCLIB for the DB2GWPSJ stored
procedure address space (see Example 2-42). Note the two DD statements
JAVAENV and JSPDEBUG, The latter is useful during testing to resolve
problems.
Example 2-42 JCL for DB2GWPSJ stored procedure address space
//D82GWPSJ PROC DB2SSN=DB2G,NUMTCB=1,APPLENV=DB2GWPSJ
//*
//NUMTCB@1 SET NUMTCB=
<== Null NUMTCB symbol
//*
//DSNTPSMP EXEC PGM=DSNX9WLM,TIME=1440,
//
PARM='&DB2SSN,1,&APPLENV',
<== Use 1, not NUMTCB
//
REGION=0M,DYNAMNBR=5
<== Allow for Dyn Allocs
//* Include SDSNEXIT to use Secondary Authids (DSN3@ATH DSN3@SGN exits)
//STEPLIB DD DISP=SHR,DSN=RC48.DB2.LOAD
//
DD DISP=SHR,DSN=DB2G.SDSNEXIT
//
DD DISP=SHR,DSN=DB2.SDSNLOAD
//
DD DISP=SHR,DSN=DB2.SDSNLOD2
//
DD DISP=SHR,DSN=DB2.SDXXLOAD
//
DD DISP=SHR,DSN=CBC.SCCNCMP
<== C Compiler
//
DD DISP=SHR,DSN=CEE.SCEERUN
<== LE runtime
//SYSEXEC DD DISP=SHR,
<== Location of DSNTPSMP
//
DSN=DB2.SDSNCLST
//JAVAENV
//JSPDEBUG DD
//SYSOUT
DD
//SYSTSPRT DD
150
DD
DISP=SHR,DSN=A4CELL.WPS.JAVAENV
SYSOUT=*
SYSOUT=*
SYSOUT=*
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
//CEEDUMP DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSABEND DD DUMMY
//DSNTRACE DD SYSOUT=*
//*
//**** Data sets required by the SQL Procedures Processor
//SQLDBRM DD DISP=SHR,
<== DBRM Library
//
DSN=DB2G.DBRMLIB.DATA
//SQLCSRC DD DISP=SHR,
<== Generated C Source
//
DSN=DB2G.SRCLIB.DATA
//SQLLMOD DD DISP=SHR,
<== Application Loadlib
//
DSN=DB2G.RUNLIB.LOAD
//SQLLIBC DD DISP=SHR,
<== C header files
//
DSN=CEE.SCEEH.H
//
DD DISP=SHR,
//
DSN=CEE.SCEEH.SYS.H
//
DD DISP=SHR,
<== Debug header file
//
DSN=DB2.SDSNC.H
//SQLLIBL DD DISP=SHR,
<== Linkedit includes
//
DSN=CEE.SCEELKED
//
DD DISP=SHR,
//
DSN=DB2.SDSNLOAD
//SYSMSGS DD DISP=SHR,
<== Prelinker msg file
//
DSN=CEE.SCEEMSGP(EDCPMSGE)
//*
//**** DSNTPSMP Configuration File - CFGTPSMP (optional)
//*
A site provided sequential dataset or member, used to
//*
define customized operation of DSNTPSMP in this APPLENV.
//*CFGTPSMP DD DISP=SHR,DSN=
//*
//**** Workfiles required by the SQL Procedures Processor
//SQLSRC
DD UNIT=SYSALLDA,SPACE=(23440,(20,20)),
//
DCB=(RECFM=FB,LRECL=80,BLKSIZE=23440)
//SQLPRINT DD UNIT=SYSALLDA,SPACE=(23476,(20,20)),
//
DCB=(RECFM=VB,LRECL=137,BLKSIZE=23476)
//SQLTERM DD UNIT=SYSALLDA,SPACE=(23476,(20,20)),
//
DCB=(RECFM=VB,LRECL=137,BLKSIZE=23476)
//SQLOUT
DD UNIT=SYSALLDA,SPACE=(23476,(20,20)),
//
DCB=(RECFM=VB,LRECL=137,BLKSIZE=23476)
//SQLCPRT DD UNIT=SYSALLDA,SPACE=(23476,(20,20)),
//
DCB=(RECFM=VB,LRECL=137,BLKSIZE=23476)
//SQLUT1
DD UNIT=SYSALLDA,SPACE=(23440,(20,20)),
//
DCB=(RECFM=FB,LRECL=80,BLKSIZE=23440)
//SQLUT2
DD UNIT=SYSALLDA,SPACE=(23440,(20,20)),
//
DCB=(RECFM=FB,LRECL=80,BLKSIZE=23440)
//SQLCIN
DD UNIT=SYSALLDA,SPACE=(32000,(20,20))
//SQLLIN
DD UNIT=SYSALLDA,SPACE=(3200,(30,30)),
//
DCB=(RECFM=FB,LRECL=80,BLKSIZE=3200)
//SQLDUMMY DD DUMMY
//SYSMOD
DD UNIT=SYSALLDA,SPACE=(23440,(20,20)),
<= PRELINKER
//
DCB=(RECFM=FB,LRECL=80,BLKSIZE=23440)
Chapter 2. WebSphere Process Server primary node configuration with DB2
151
16.Define a RACF-started class profile so that the stored procedure address
space runs under a userid that has authority to access the CLASSPATH
variable you will use in the //JAVAENV DD statement.
17.Start the DB2GWPSJ address space.
18.You can now execute the DDL to define the BPC Event Collector and BPC
Observer tables, including the CREATE FUNCTION statements. You could
use standard DB2 for z/OS utilities such as DSNTEP2, provided you edit the
supplied DDL so it uses the correct schema name. The DDL for the BPC
Observer can be found in directory:
/usr/lpp/zWPSA4/V6R0/dbscripts/ProcessChoreographer/DB2zOSV8
The create Tablespace_Observer.sql file contains the DDL to create the
tablespaces, and the createSchema_Observer.sql file creates the tables,
functions, and indexes. If you used the JCL example we provided previously in
Example 2-36 on page 129, you will have already copied the BPC Observer DDL
into two z/OS sequential files. You must have edited the DDL as described in
“Customize the business process container DDL” on page 131 before you
execute it.
Loading bpcodbutil.jar into the DB2 catalog
The WebSphere Process Server documentation describes the
setupEventCollector.sh shell script that can be used to configure the BPC Event
Collector. We followed this approach to load bpcodbutil.jar into the DB2 catalog
and define the BPC Event Collector and BPC Observer tables.
The setupEventCollector.sh script runs interactively. It includes a menu with four
options enabling you to choose different configuration tasks.
When you select the option to configure the database, the shell prompts you for
the name of the database in which you will configure the BPC Event Collector.
The shell script will check for the existence of the BPC Observer tablespaces in
the database that you name in response to the prompt. Therefore, you cannot
configure BPC Event Collector in a separate database; the BPC Event Collector
tablespaces must share the same database with the other BPC tablespaces.
Check that the stored procedure SQLJ.DB2_INSTALL_JAR has been installed
and that a WLM ENVIRONMENT and stored procedure address space has been
prepared to run it.
152
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
At this point, you can configure the BPC Observer. In summary, the steps to do
so are as follows:
1. Run the DDL to define the BPC Event Collector and BPC Observer
tablespaces in the same database as the other BPC tablespaces.
2. Run setupEventCollector.sh to load bpcodbutil.jar into DB2 and define the
BPC Event Collector and BPC Observer tables.
3. Run setupEventCollector.sh to change configuration properties.
4. Run setupObserver.sh to set the schema name used by the BPC Observer.
Create the BPC Observer tablespaces
Earlier when you copied the BPC DDL from the UNIX file system into sequential
data sets, some DDL was related to the BPC Event Collector and BPC Observer,
which are, respectively, the DDL files and the name of the sequential data sets
we copied the DDL into when configuring BPC Observer for our A4 cell.
createTablespace_Observer.sql
createSchema_Observer.sql
A4CELL.SQL.A4BPEOTS
A4CELL.SQL.A4BPEOTB
At this stage you need to define only the tablespaces to DB2. You should have
already edited the DDL to include the correct schema name.
For our A4 cell, we ran job A4SQLRU4 to define the BPC Event Collector and
BPC Observer tablespaces as shown in Example 2-43.
Example 2-43 Job A4SQLRU4 definesBPC Observer tablespaces
//JOBLIB DD DISP=SHR,DSN=DB8IU.SDSNEXIT
//
DD DISP=SHR,DSN=DB8I8.SDSNLOAD
//*
//* Before running this:
//* The userid on the SET CURRENT SQLID statement must
//* have DB2 SYSADM authority and EXECUTE on PLAN DSNTIA81
//*
//* Create BPE Tables and Tablespaces.
//*
//CREATE
EXEC PGM=IKJEFT01,DYNAMNBR=20
//SYSTSPRT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(D8I1)
RUN PROGRAM(DSNTEP2) PLAN(DSNTEP81) LIB('DB8IU.RUNLIB.LOAD')
//SYSIN
DD *
SET CURRENT SQLID = 'A4CELL' ;
//
DD DISP=SHR,DSN=A4CELL.WPSDB2.SQL(A4BPEOTS)
Chapter 2. WebSphere Process Server primary node configuration with DB2
153
Run setupEventCollector.sh to load bpcodbutil.jar
Before you run setupEventCollector.sh, the DDL for the BPC Event Collector and
BPC Observer must be updated to contain a SET CURRENT SQLID statement
at the start. If you do not do so, the shell script fails to execute because the
schema name does not equal the current SQLID, and you will encounter the
following error:
A DYNAMIC CREATE STATEMENT CANNOT BE PROCESSED WHEN THE VALUE OF
CURRENT SCHEMA DIFFERS FROM CURRENT SQLID
Error Code: -20283
The setupEventCollector.sh script uses the DDL that is located in the UNIX file
system in the following DeploymentManager directory:
<WAS_HOME>/dbscripts/ProcessChoreographer/DB2zOSV8/createSchema_
Observer.sql
However, this is a symbolic link to the product HFS. If you do not want to edit the
DDL in the product HFS, delete the symbolic link and copy the
createSchema_Observer.sql file from the product HFS to:
<WAS_HOME>/dbscripts/ProcessChoreographer/DB2zOSV8.
Insert the following line at the start of createSchema_Observer.sql:
SET CURRENT SQLID=’@_SQLID@’;
The string “@_SQLID@” will be substituted by the setupEventCollector.sh shell
script according to the schema name you enter when prompted. Note that
createSchema_Observer.sql is an ASCII file and must remain in ASCII after you
edit it.
When setupEventCollector.sh creates the BPC Event Collector and BPC
Observer tables, it will do so under a userid you specify in response to a prompt.
That userid must be connected to the RACF group for the schema name. For our
A4 cell, for example, the userid we specified when prompted by
setupEventCollector.sh was the userid A4DBU that we planned to use as the
JAAS authentication alias userid on the BPC data sources. Therefore, we had to
connect A4DBU to the RACF group A4CELL. If you do not do so, you will
encounter SQLCODE -553.
We issued the following RACF command to perform the connect:
CONNECT A4DBU GROUP(A4CELL)
When setupEventCollector.sh loads bpcodbutil.jar into the DB2 catalog, it
requires USAGE on the jar file. If you do not do this, you will encounter
SQLCODE -551.
154
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
We issued the following DB2 GRANT:
GRANT USAGE ON JAR A4CELL.BPCDBUTIL TO A4CELL;
Notice that you must export the variable WAS_HOME before invoking
setupEventCollector.sh as shown in Example 2-44.
Example 2-44 telnet log of setupEventCollector.sh execution
A4ADMIN:/var/WebSphere/home/A4CFG: >
export WAS_HOME=/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default
A4ADMIN:/var/WebSphere/home/A4CFG: >
cd /wasa4config/a4cell/a4dmnode/DeploymentManager/ProcessChoreographer/config
A4ADMIN:/wasa4config/a4cell/a4dmnode/DeploymentManager/ProcessChoreographer/config: >
./setupEventCollector.sh -conntype SOAP -user A4ADMIN -password A4ADM
IN -profileName default -cluster a4cl01
WASX7209I: Connected to process "dmgr" on node a4dmnode using SOAP connector; The type
of process is: DeploymentManager
WASX7303I: The following options are passed to the scripting environment and are
available as argument that is stored in the argv variable: "[-cluster, a4
cl01]"
-------------------------------------------------------------------------------Welcome to the WebSphere Business Process Choreographer Event Collector setup!
-------------------------------------------------------------------------------Logfile is
'/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/logs/setupEventCollecto
r.log'
Initializing ...
Commands Menu
Working on cluster 'a4cl01'.
1)
2)
3)
4)
Prepare a database for the Event Collector
Install the Event Collector application
Remove the Event Collector application and related objects
Change configuration settings of an installed Event Collector
0) Exit Menu
1
Prepare a database for the WebSphere Business Process Choreographer Event Collector
Select the type of your DBMS :
'd' ... DB2
'c' ... Cloudscape
'7' ... DB2 V7 on z/OS
Chapter 2. WebSphere Process Server primary node configuration with DB2
155
'8' ... DB2 V8 on z/OS
'o' ... Oracle
'x' ... Exit
Your selection : [c] 8
Selected database management system : DB2zOSV8
Specify the database to be used.
Note: Database must already exist.
Specify the name of database in local catalog : [BPEDB]
Selected local name: 'DB8I'
DB8I
Specify the name of the database as known by the susbsystem [DB8I] :
Selected remote name: 'A4BPEDB'
Specify userid to connect to the database 'DB8I' [db2admin] :
Specify the password for userid 'A4DBU' :
Trying to connect to database 'DB8I', using user 'A4DBU'
Connected to 'DB8I'
Specify the database schema to be used. [A4DBU] :
Selected schema: 'A4CELL'
A4BPEDB
A4DBU
A4CELL
Specify the DB2 storage group name to be used. [OBSVRSG] :
Selected storage group: A4DBSTO
A4DBSTO
Specify the WLM environment name where the UDF should run. [] :
Selected WLM environment name: D8IGWLMJ
D8IGWLMJ
Checking for required tablespace(es) ['OBSVR01', 'OBSVR02', 'OBSVR03', 'OBSVR04',
'OBSVR05', 'OBSVR06', 'OBSVR07', 'OBSVR08', 'AS25A01', 'AS25A02', 'AS25A
03', 'AS25A04']
All required tablespaces were found.
Loading the jar file '/wasa4config/a4cell/a4dmnode/DeploymentManager/lib/bpcodbutil.jar'
into the database.
Note: To activate the updated jar file, you must restart the database DB8I.
The jar file '/wasa4config/a4cell/a4dmnode/DeploymentManager/lib/bpcodbutil.jar' was
sucessfully installed.
The setup of the database completed successfully.
Note: To allow the Event Collector to work with this database, you must also setup a
datasource within the Administrative Console.
Commands Menu
Working on cluster 'a4cl01'.
1) Prepare a database for the Event Collector
2) Install the Event Collector application
156
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
3) Remove the Event Collector application and related objects
4) Change configuration settings of an installed Event Collector
0) Exit Menu
0
A4ADMIN:/wasa4config/a4cell/a4dmnode/DeploymentManager/ProcessChoreographer/config:>
Although we entered 0 at the last prompt to exit the shell script, you can remain in
the shell script because, in the next step, you alter the schema name that the
BPC Event Collector and BPC Observer applications will use.
Change Event Collector configuration properties
By selecting option 4 from the setupEventCollector.sh menu, you can change
the schema name used for the Event Collector and reduce some of the
thresholds that control when events are made available to the BPC Observer. If
you do not reduce the thresholds, no events will be listed when you get to the
point where you test the BPC Observer.
We executed setupEventCollector.sh from a telnet session and the log of the
session is shown in Example 2-45.
Example 2-45 Run setupEventCollector.sh to change configuration properties
A4ADMIN:/var/WebSphere/home/A4CFG: >
export WAS_HOME=/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default
A4ADMIN:/var/WebSphere/home/A4CFG: >
cd /wasa4config/a4cell/a4dmnode/DeploymentManager/ProcessChoreographer/config
A4ADMIN:/wasa4config/a4cell/a4dmnode/DeploymentManager/ProcessChoreographer/config: >
./setupEventCollector.sh -conntype SOAP -user A4ADMIN -password A4ADMIN -profileName
default -cluster a4cl01
A4ADMIN:/wasa4config/a4cell/a4dmnode/DeploymentManager/ProcessChoreographer/config:
WASX7209I: Connected to process "dmgr" on node a4dmnode using SOAP connector; The type
of process is: DeploymentManager
WASX7303I: The following options are passed to the scripting environment and are
available as argument that is stored in the argv variable: "[-cluster, a4cl01]"
-------------------------------------------------------------------------------Welcome to the WebSphere Business Process Choreographer Event Collector setup!
-------------------------------------------------------------------------------Logfile is
'/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/logs/setupEventCollecto
r.log'
Initializing ...
Commands Menu
Chapter 2. WebSphere Process Server primary node configuration with DB2
157
Working on cluster 'a4cl01'.
1)
2)
3)
4)
Prepare a database for the Event Collector
Install the Event Collector application
Remove the Event Collector application and related objects
Change configuration settings of an installed Event Collector
0) Exit Menu
4
Enter number of the configuration parameter you want to change/display:
1)
2)
3)
4)
BPCEventCollectorSchema
BPCEventTransformerEventCount
BPCEventTransformerMaxWaitTime
BPCEventTransformerToleranceTime
0) Exit Menu
Your selection :
1
Edit a configuration parameter.
Configuration parameter:
Description:
Data type:
Current value is:
BPCEventCollectorSchema
The database schema under which the Event Collector
tables were created. If this value is not set, the
default schema of the authenticated user is taken.
String
'<not set>'
Enter a new value. Enter 'Space' to unset. Press 'Enter' to exit.
Your selection : A4CELL
Value for 'BPCEventCollectorSchema' set to 'A4CELL'.
Enter number of the configuration parameter you want to change/display:
1)
2)
3)
4)
BPCEventCollectorSchema
BPCEventTransformerEventCount
BPCEventTransformerMaxWaitTime
BPCEventTransformerToleranceTime
0) Exit Menu
Your selection :
2
Edit a configuration parameter.
Configuration parameter:
Description:
Data type:
158
BPCEventTransformerEventCount
The number of events after which the Event
Collector sends a notification to the Transformer.
Integer
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Unit:
Current value is:
Events
'500'
Enter a new value. Press 'Enter' to exit.
Your selection : 0
Value for 'BPCEventTransformerEventCount' set to '0'.
Enter number of the configuration parameter you want to change/display:
1)
2)
3)
4)
BPCEventCollectorSchema
BPCEventTransformerEventCount
BPCEventTransformerMaxWaitTime
BPCEventTransformerToleranceTime
0) Exit Menu
Your selection :
3
Edit a configuration parameter.
Configuration parameter:
Description:
Data type:
Unit:
Current value is:
BPCEventTransformerMaxWaitTime
Time in minutes after the Transformer is notified
although the number of events is not reached.
Integer
Minutes
'10'
Enter a new value. Press 'Enter' to exit.
Your selection : 1
Value for 'BPCEventTransformerMaxWaitTime' set to '1'.
Enter number of the configuration parameter you want to change/display:
1)
2)
3)
4)
BPCEventCollectorSchema
BPCEventTransformerEventCount
BPCEventTransformerMaxWaitTime
BPCEventTransformerToleranceTime
0) Exit Menu
Your selection :
4
Edit a configuration parameter.
Configuration parameter:
Description:
Data type:
Unit:
Current value is:
BPCEventTransformerToleranceTime
Time in minutes while the Transformer ignores the
events in the database.
Integer
Minutes
'10'
Chapter 2. WebSphere Process Server primary node configuration with DB2
159
Enter a new value. Press 'Enter' to exit.
Your selection : 1
Value for 'BPCEventTransformerToleranceTime' set to '1'.
Enter number of the configuration parameter you want to change/display:
1)
2)
3)
4)
BPCEventCollectorSchema
BPCEventTransformerEventCount
BPCEventTransformerMaxWaitTime
BPCEventTransformerToleranceTime
0) Exit Menu
Your selection :
0
Do you want to save the changes? (y/n) y
Update of BPCECollector_a4cl01 has started.
CWSCA3020I: The SCA application BPCECollector_a4cl01 is being updated.
ADMA5009I: An application archive is extracted at
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/wstemp/wstemp/app_11595d
b200d/ext
ADMA5064I: FileMergeTask completed successfully for BPCECollector_a4cl01.
ADMA5005I: The application BPCECollector_a4cl01 is configured in the WebSphere
Application Server repository.
ADMA5005I: The application BPCECollector_a4cl01 is configured in the WebSphere
Application Server repository.
CWSCA3021I: The SCA application BPCECollector_a4cl01 has been updated.
ADMA5005I: The application BPCECollector_a4cl01 is configured in the WebSphere
Application Server repository.
ADMA5011I: The cleanup of the temp directory for application BPCECollector_a4cl01 is
complete.
Update of BPCECollector_a4cl01 has ended.
Note: To activate the changes, you must restart the application BPCECollector_a4cl01.
Do you want to restart the application now? (y/n) y
Stopping the application 'BPCECollector_a4cl01'...
Failed to start 'BPCECollector_a4cl01'
Error: Scripting exception occured !
com.ibm.ws.scripting.ScriptingException
com.ibm.ws.scripting.ScriptingException: WASX7025E: Error found in String ""; cannot
create ObjectName.
Traceback (innermost last):
File
"/wasa4config/a4cell/a4dmnode/DeploymentManager/ProcessChoreographer/config/./bpelib.py"
, line 2596, in stopApplication
Starting the application 'BPCECollector_a4cl01'...
Failed to stop 'BPCECollector_a4cl01'
Error: Scripting exception occured !
com.ibm.ws.scripting.ScriptingException
com.ibm.ws.scripting.ScriptingException: WASX7025E: Error found in String ""; cannot
create ObjectName.
160
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Traceback (innermost last):
File
"/wasa4config/a4cell/a4dmnode/DeploymentManager/ProcessChoreographer/config/./bpelib.py"
, line 2552, in startApplication
Information: Please run the node synchronization (run syncNode.bat|.sh) to activate the
changes.
Commands Menu
Working on cluster 'a4cl01'.
1)
2)
3)
4)
Prepare a database for the Event Collector
Install the Event Collector application
Remove the Event Collector application and related objects
Change configuration settings of an installed Event Collector
0) Exit Menu
0
A4ADMIN:/wasa4config/a4cell/a4dmnode/DeploymentManager/ProcessChoreographer/config: >
After selecting option 4, notice that in order to change the configuration settings,
we were prompted to choose the parameters we wanted to change. The first of
these parameters is BPCEventCollectorSchema.You must set the schema name
at this point; otherwise, you will encounter SQLCODE -440 problems when
running the BPC Event Collector.
The changed values we set for the BPC Event Collector are:
BPCEventCollectorSchema=A4CELL
BPCEventTransformerEventCount=0
BPCEventTransformerMaxWaitTime=1
BPCEventTransformerToleranceTime=1
On the previous invocation, because we experienced a problem after replying “Y”
to the question about restarting the application, we replied “N” this time. Then we
stopped and started the BPC Event Collector application using the WebSphere
Administration Console.
Run setupObserver.sh to set the BPC Observer schema
A second shell script—setupObserver.sh—must be executed to set the schema
name used by the BPC Observer. The setupObserver.sh script is also interactive
and like setupEventCollector, it presents a menu of options to choose from.
Chapter 2. WebSphere Process Server primary node configuration with DB2
161
Execute setupObserver.sh from OMVS or a telnet session. When presented with
the menu, choose option 1 to set the BPCObserverSchema as shown in
Example 2-46.
Example 2-46 Run setupObserver.sh execution to set BPC Observer schema
A4ADMIN:/var/WebSphere/home/A4CFG: >
export WAS_HOME=/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default
A4ADMIN:/var/WebSphere/home/A4CFG: >
cd /wasa4config/a4cell/a4dmnode/DeploymentManager/ProcessChoreographer/config
A4ADMIN:/wasa4config/a4cell/a4dmnode/DeploymentManager/ProcessChoreographer/config:
>./setupObserver.sh -conntype SOAP -user A4ADMIN -password A4ADMIN -profileName default
-cluster a4cl01
WASX7209I: Connected to process "dmgr" on node a4dmnode using SOAP connector; The type
of process is: DeploymentManager
WASX7303I: The following options are passed to the scripting environment and are
available as argument that is stored in the argv variable: "[-cluster, a4
cl01]"
-------------------------------------------------------------------------------Welcome to the WebSphere Business Process Choreographer Observer setup!
-------------------------------------------------------------------------------Logfile is
'/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/logs/setupObserver.log'
Initializing ...
Commands Menu
Working on cluster 'a4cl01'.
1) Install the Observer application
2) Remove the Observer application and related objects
3) Change configuration settings of an installed Observer
0) Exit Menu
3
Enter number of the configuration parameter you want to change/display:
1) BPCObserverSchema
2) ReportAtSnapshotRange
0) Exit Menu
Your selection :
1
Edit a configuration parameter.
Configuration parameter:
162
BPCObserverSchema
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Description:
Data type:
Current value is:
The database schema under which the Observer tables
were created. If this value is not set, the default
schema of the authenticated user is taken.
String
'<not set>'
Enter a new value. Enter 'Space' to unset. Press 'Enter' to exit.
Your selection : A4CELL
Value for 'BPCObserverSchema' set to 'A4CELL'.
Enter number of the configuration parameter you want to change/display:
1) BPCObserverSchema
2) ReportAtSnapshotRange
0) Exit Menu
Your selection :
0
Do you want to save the changes? (y/n) y
Update of BPCObserver_a4cl01 has started.
CWSCA3020I: The SCA application BPCObserver_a4cl01 is being updated.
ADMA5009I: An application archive is extracted at
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/wstemp/wstemp/app_115960
30ce2/ext
ADMA5064I: FileMergeTask completed successfully for BPCObserver_a4cl01.
ADMA5005I: The application BPCObserver_a4cl01 is configured in the WebSphere Application
Server repository.
ADMA5005I: The application BPCObserver_a4cl01 is configured in the WebSphere Application
Server repository.
CWSCA3021I: The SCA application BPCObserver_a4cl01 has been updated.
ADMA5005I: The application BPCObserver_a4cl01 is configured in the WebSphere Application
Server repository.
ADMA5011I: The cleanup of the temp directory for application BPCObserver_a4cl01 is
complete.
Update of BPCObserver_a4cl01 has ended.
Note: To activate the changes, you must restart the application BPCObserver_a4cl01.
Do you want to restart the application now? (y/n) n
Information: Please run the node synchronization (run syncNode.bat|.sh) to activate the
changes.
Commands Menu
Working on cluster 'a4cl01'.
1) Install the Observer application
2) Remove the Observer application and related objects
3) Change configuration settings of an installed Observer
Chapter 2. WebSphere Process Server primary node configuration with DB2
163
0) Exit Menu
0
A4ADMIN:/wasa4config/a4cell/a4dmnode/DeploymentManager/ProcessChoreographer/config: >
2.4.6 Complete the configuration
Before you start the server, additional changes are required to complete the
configuration. Most of the changes are performed by running fixWPSVars.jacl
against the primary node; however, some manual changes are necessary. You
use the WebSphere Administration Console to make these changes.
In summary the steps are as follows:
1. Run fixWPSvars.jacl against the primary node.
2. Optionally define an ESB logger mediation data source.
3. Optionally correct the ESB logger namespace binding.
4. Copy the server-bpc.xml file into the node’s configuration HFS.
5. Grant SELECT on SYSIBM.SYSTABLES to the BPC database JAAS
authentication alias userid.
6. Remove db2jcc_license_cu.jar from the CLASSPATH of the DB2 JDBC™
providers.
7. Recheck that the data sources are all configured correctly.
Run fixWPSvars.jacl against the primary node
The JCL for A4FIXNA is provided in Appendix B, “Additional material” on
page 235. Example 2-47 shows the first step of the A4FIXNA job.
Example 2-47 Run fixWPSVars.jacl for primary node
//INSTO EXEC PGM=IKJEFT01,REGION=0M,TIME=1440
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BPXBATCH SH +
export PATH=.:$PATH; +
cd /wasa4config/a4cell/a4dmnode/DeploymentManager; +
cd profiles/default/bin; +
wsadmin.sh +
-conntype none +
-f /u/jo/wpswork/fixWPSvars.jacl +
-wbiInstallRoot /wasa4config/a4cell/a4nodea/AppServer
-cell a4cell +
-node a4nodea +
164
+
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
-jcchome /usr/lpp/db2/d8ig/jcc +
-jccproperties /u/db8iu/properties +
-dbLoc DB8I
+
-sibjndi jdbc/MEDataSource +
-sibauth WPSDBAlias +
-sibSCA A4CELLS +
-sibAPP A4CELLA +
-sibCEI A4CELLC +
-sibBPC A4CELLB +
-esbSchema +
1> /tmp/zFixVars_4031.out +
2> /tmp/zFixVars_4031.err
Create ESB logger mediation data source
The process of completing this optional step is as follows:
1. From the WebSphere Administrative Console, navigate to Resources →
JDBC providers.
2. Set the scope to the cluster level and then navigate to DB2 Universal JDBC
Driver Provider → Data sources.
One data source is listed for BPEDataSourceDb2zOS_<clustername>.
3. Click New to create a new data source called ESB Logger Mediation Data
Source.
Chapter 2. WebSphere Process Server primary node configuration with DB2
165
Make sure the DB2 universal data source properties have the correct values
for your DB2 environment. Our values are shown in Figure 2-70.
Figure 2-70 ESBLogegr data source properties
4. Set the component-managed authentication alias name as shown in
Figure 2-71. We used WPSDBAlias, which is the same name used by the
main WebSphere Process Server data source, WPS_Datasource.
Figure 2-71 Set authentication alias for ESBLogger data source
166
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
5. Set the database name to the location name of your DB2 system and set the
driver type to 2 as shown in Figure 2-72. The host name and port fields can
remain as the defaults (they are used by only driver type 4 data sources) but
should not be blank.
Figure 2-72 Set database name anddriver type
6. Click OK. You are returned to the list of data sources that at this point show
the data source you just created (see Figure 2-73).
Figure 2-73 Data source list with new ESBLogger data source
Chapter 2. WebSphere Process Server primary node configuration with DB2
167
7. Click the ESB Logger Mediation Data Source link and then click Custom
properties under Additional Properties.
8. Click the custom property fullyMaterializeLobData and set its value to false.
9. Click the custom property currentSchema and set its value to that of your
schema name. For our A4 cell, we set the currentSchema property to
A4CELL as shown in Figure 2-74.
Figure 2-74 Set current schema for ESBLogger data source
10.Click OK and save your configuration changes.
Change the namespace binding on ESB Logger
Complete this optional step as follows:
1. Define the namespace binding for the ESBLogger.
2. Using the WebSphere Administration console, navigate to Environment →
Naming → Name Space Bindings.
3. Set the scope to the server in the primary node.
168
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
4. Click New and add Binding Identifier Name ESBMessageLogger to
namespace esb/messageLogger/qualifier and a string value equal to your
schema ID. Our value is A4CELL as shown in Figure 2-75.
Figure 2-75 ESB namespace binding general properties
Note: If you do not perform step 4, a schema name of ESBLOG is used.
5. Click OK.
6. Change the scope to that of the server in the secondary node and make the
same namespace binding changes for that server.
7. Click OK and then save your configuration changes.
Chapter 2. WebSphere Process Server primary node configuration with DB2
169
Copy server-bpc.xml
Complete the following steps:
1. Copy the server-bpc.xml file into the DMGR's /config/cells/ ... directory
structure. The file will be copied to the nodes when the next synchronization
occurs.
If you do not perform this step, you will encounter the following errors in the
server and nodeagent:
java.io.FileNotFoundException:
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/
config/cells/a4cell/nodes/a4dmnode/servers/dmgr/server-bpc.xml
(EDC5129I No such file or directory. (errno2=0x056200622))
2. Copy the server-bpc.xml file from the following Deployment Manager
directory:
<WAS_HOME>/profileTemplates/managed.bfm/documents
/config/templates/servertypes/APPLICATION_SERVER/servers/default
to the following directories under the Deployment Manager’s
<WAS_HOME>/profiles/default/config/cells/<cellname>/nodes directory:
/<dmnode>/servers/dmgr
/<node>/servers/nodeagent
/<node>/servers/<server>
For example, we entered the following copy commands via a telnet session:
cp /wasa4config/a4cell/a4dmnode/DeploymentManager/profileTemplates/managed.bfm/documents
/config/templates/servertypes/APPLICATION_SERVER/servers/default/server-bpc.xml
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/config/cells/a4cell/
nodes/a4dmnode/servers/dmgr/server-bpc.xml
cp /wasa4config/a4cell/a4dmnode/DeploymentManager/profileTemplates/managed.bfm/documents
/config/templates/servertypes/APPLICATION_SERVER/servers/default/server-bpc.xml
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/config/cells/a4cell/
nodes/a4nodea/servers/nodeagent/server-bpc.xml
cp /wasa4config/a4cell/a4dmnode/DeploymentManager/profileTemplates/managed.bfm/documents
/config/templates/servertypes/APPLICATION_SERVER/servers/default/server-bpc.xml
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/config/cells/a4cell/
nodes/a4nodea/servers/a4sr01a/server-bpc.xml
Grant access to SYSIBM.SYSTABLES
In this step, you grant SELECT on SYSIBM.SYSTABLES to the BPC database’s
JAAC authentication alias userid.
170
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Important: When we started the server and tried to connect to BPC, we
received the following error in the Application Server servant job log, which we
traced to a SELECT statement on SYSIBM.SYSTABLES:
Trace: 2007/07/10 18:30:19.814 01 t=7FF290 c=UNK key=P8 (13007002)
ThreadId: 0000000a
FunctionName: com.ibm.ws.startupservice.StartBeanInfo
SourceId: com.ibm.ws.startupservice.StartBeanInfo
Category: SEVERE
ExtendedMessage: BBOO0220E: STUP0005E: Startup bean named
ejb/htm/TaskContainerStartUpBean forced application to stop.
Trace: 2007/07/10 18:30:19.815 01 t=7FF290 c=UNK key=P8 (0000000A)
Description: Log Boss/390 Error
from filename: ./bborjtr.cpp
at line: 932
error message: BBOO0220E: STUP0005E: Startup bean named
ejb/htm/TaskContainerStartUpBean forced application to stop.
com.ibm.ws.st
artupservice.StartBeanInfo com.ibm.ws.startupservice.StartBeanInfo
Trace: 2007/07/10 18:30:20.056 01 t=7FF290 c=UNK key=P8 (13007002)
ThreadId: 0000000a
FunctionName: com.ibm.ws.runtime.component.ApplicationMgrImpl
SourceId: com.ibm.ws.runtime.component.ApplicationMgrImpl
Category: WARNING
ExtendedMessage: BBOO0221W: WSVR0101W: An error occurred starting,
TaskContainer_a4nodea_a4sr01a
Trace: 2007/07/10 18:30:20.058 01 t=7FF290 c=UNK key=P8 (13007002)
ThreadId: 0000000a
FunctionName: com.ibm.ws.runtime.component.ApplicationMgrImpl
SourceId: com.ibm.ws.runtime.component.ApplicationMgrImpl
Category: AUDIT
ExtendedMessage: BBOO0222I: WSVR0217I: Stopping application:
TaskContainer_a4nodea_a4sr01a
Trace: 2007/07/10 18:30:20.061 01 t=7FF290 c=UNK key=P8 (13007002)
ThreadId: 0000000a
FunctionName:
com.ibm.task.framework.StartUpBean.stop(StartUpBean.java:205)
SourceId: com.ibm.task.util.TraceHTM
Category: FINER
ExtendedMessage: ENTRY
We traced this problem to a SELECT statement on SYSIBM.SYSTABLES. The
userid DBUSER, which on our system is A4DBU, requires select access to
Chapter 2. WebSphere Process Server primary node configuration with DB2
171
SYSIBM.SYSTABLES. We granted this access using the following spufi
command:
GRANT SELECT ON TABLE SYSIBM.SYSTABLES TO A4DBU;
Remove db2jcc_license_cu.jar
Some of the jar files defined on the CLASSPATH of the DB2 JDBC providers
have invalid paths. These cause errors such as:
This classloader contains bad files , please check file:
/pp/db2v8/UK20656/jcc/classes/db2jcc_license_cu.jar
Defects have been opened for this; however, it is easy to correct by removing the
unnecessary jar files from the CLASSPATH. The db2jcc_license_cu.jar file is
defined on the CLASSPATH of the DB2 JDBDC providers twice as follows:
${JDBC_DRIVER_PATH}/db2jcc_license_cu.jar
${UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cu.jar
In the first entry above the definition is the JDBC_DRIVER_PATH variable that
resolves to an incorrect location. The db2jcc_license_cu.jar file does not exist in
the directory in:
${JDBC_DRIVER_PATH}/db2jcc_license_cu.jar.
In addition, although the ${UNIVERSAL_JDBC_DRIVER_PATH} variable
resolves to ${WAS_INSTALL_ROOT}/UniversalDriver/lib, which is a valid path to
locate db2jcc_license_cu.jar, the ${WAS_INSTALL_ROOT} variable is not
defined at a cluster or cell level. Therefore, it cannot be resolved by DB2 JDBC
providers defined at the cluster or cell level.
To resolve these problems, it is necessary to remove some entries from the
CLASSPATH of the DB2 JDBC providers defined at the cluster and cell level.
For the DB2 universal JDBC provider defined at the cell level, remove the
following four jar files from the CLASSPATH:
${JDBC_DRIVER_PATH}/db2jcc.jar
${JDBC_DRIVER_PATH}/db2jcc_license_cu.jar
${JDBC_DRIVER_PATH}/db2jcc_license_cisuz.jar
${UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cu.jar
Two DB2 universal JDBC providers are defined at cluster level:
򐂰 DB2 Universal JDBC Driver Provider defined at cluster level
򐂰 Event_DB2ZOS_JDBC_Provider defined at cluster level
172
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Remove the following jar file from the CLASSPATH:
${UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cu.jar
Removing the jar file is shown in Figure 2-76.
Figure 2-76 Remove db2jcc_license_cu.jar from DB2 JDBC providers
When you finish, the CLASSPATH of the three DB2 JDBC providers should
contain only the following two jar files:
${DB2UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc.jar
${DB2UNIVERSAL_JDBC_DRIVER_PATH}/db2jcc_license_cisuz.jar
Chapter 2. WebSphere Process Server primary node configuration with DB2
173
Note: The white paper, WPS V.6.0.x for z/OS Datasource and Database
Configuration Hints and Tips, WP100833, suggests you can also resolve the
classloader problem for db2jcc_license_cu.jar by defining the environment
variable WAS_INSTALL_ROOT at the cell level so that the variable
${UNIVERSAL_JDBC_DRIVER_PATH} (which is set to
${WAS_INSTALL_ROOT}/UniversalDriver/lib) is resolved to a valid path.
Although this solution is a valid alternative for a non-clustered configuration,
when you are configuring WebSphere Process Server in a cluster, you cannot
define WAS_INSTALL_ROOT at the cell or cluster level because that variable
contains the path to a particular node.
Because the db2jcc_license_cu.jar file is not required when using the DB2
Universal Driver, the easiest approach is to remove it from the CLASSPATH.
Check all the data sources
Although the fixWPSvars.jacl script sets most of the correct values for the various
data sources and bus definitions, we recommend manually inspecting all the
data sources again. In particular, you should look for the currentSchema property
that is set in the Custom properties for a data source definition because
fixWPSvars.jacl does not correct schema names.
Data sources are defined at both the cell and cluster level when you configure
WebSphere Process Server for z/OS in a cluster.
1. Using the WebSphere Administration console, navigate to Resources →
JDBC providers.
2. Set the scope to the cell level by clearing out the node, cluster, and server
fields and clicking Apply.
3. Navigate to DB2 Universal JDBC Driver Provider → Data sources.
174
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
We had three data sources defined at the cell level on our system, as shown
in Figure 2-77.
Figure 2-77 Data sources at cell level
4. Click the first data source and check that the component-managed
authentication alias is set to the correct value.
Note: WebSphere Process Server is comprised of several components
configured separately. While several different authentication alias names
are used by the data sources, these authentication aliases may refer to the
same userid and password.
For our A4 cell, for example, we wanted to use the userid A4DBU as the
authentication alias on all JDBC data sources. However, the configuration
procedure created several different authentication aliases with different
names but with the same userid/password.
If your intention, like ours, is to use the same authentication alias userid on
all data sources, you can simplify your configuration by altering all the data
sources to use the same authentication alias. Then delete all the J2C
authentication alias entries that are no longer required:
a. Navigate to Security → Global Security.
b. Expand JAAS Configuration on the right and click J2C
Authentication Aliases to see all the aliases.
c. Select and delete any that are no longer required.
5. After checking the component-managed authentication alias, click Custom
properties.
Chapter 2. WebSphere Process Server primary node configuration with DB2
175
6. Check that fullyMaterializeLobData has a value of false and that
currentSchema is set to the correct schema name for that data source.
We found that no currentSchema was set for the WPS_Datasource, and we
had to set it.
Note: An incorrect currentSchema will result in various negative
SQLCODE errors. If currentSchema is not set correctly for the
WPS_DataSource, for example, you will encounter a DB2 SQLCODE -601
error in the Deployment Manager’s servant. You may also encounter
SQLCODE -204 in the application server servant for table WSCH_LMGRs.
7. Repeat the check for the other data sources and save any configuration
changes you make.
8. Navigate again to Resources → JDBC providers.
9. Set the scope to the cluster level and click Apply.
10.Navigate to DB2 Universal JDBC Driver Provider → Data sources.
Two data sources were at the cluster level in our system, as shown in
Figure 2-78. (You may see only one if you decided not to create the optional
ESBLogger data source.)
Figure 2-78 Data sources at cluster level
176
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
11.Click each data source in turn and check the same items that you checked for
the data sources at the cell level.
12.Save any configuration changes you make.
2.4.7 Start the primary node server
We started the server using the following command:
S A4ACRA,JOBNAME=A4SR01A,ENV=A4CELL.A4NODEA.A4SR01A
When you see the following message in the servant job log:
BBOO0222I: WSVR0001I: Server SERVANT PROCESS a4sr01a open for
e-business
log in to the WebSphere Administration Console. The URL we used is:
http://wtsc48.itso.ibm.com:22548/ibm/console/
At this point, the job log should contain no errors. If you encounter errors, check
the logs in the /<app_server_root>/profiles/default/logs/ffdc directory. The
<app_server_root> in our case is:
/wasa4config/a4cell/a4nodea/AppServer.
2.5 Verify installation
We tested the system using the installation verification procedures (IVPs) that
are documented in the white paper, Performing Installation Verification for WPS
on z/OS V6.0.1, WP100830. Although this document was created for V6.0.1 it is
valid for V6.0.2. The .ear files and the documentation is available at the IBM
Techdocs Library Web site at:
http://www.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/WP100830
Chapter 2. WebSphere Process Server primary node configuration with DB2
177
178
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
3
Chapter 3.
WebSphere Process Server
for z/OS secondary node
customization
After you have configured the primary node and created a cluster with a cluster
member, you can extend the cluster “horizontally.” You do so by configuring one
or more secondary nodes on other LPARs in your Parallel Sysplex.
Horizontal clustering is desirable because it provides high availability by
protecting against single points of failure that would exist if you ran WebSphere
Process Server for z/OS only in a single LPAR.
On z/OS, you configure a horizontal cluster to increase availability by removing
single points of failure such as the WebSphere controller, the adjunct, or a
backend enterprise information system such as DB2, IMS, or CICS.
On a non-z/OS platform, an additional reason to configure a cluster is to achieve
scalability. However with WebSphere Application Server for z/OS, you can scale
the environment within an LPAR by simply adding more servant regions to the
server.
© Copyright IBM Corp. 2008. All rights reserved.
179
In this chapter, we describe how to define a secondary empty node and augment
it to support WebSphere Process Server for z/OS. After the secondary node has
been federated, a second cluster member (server) is created in the secondary
node by using the WebSphere Administration Console.
180
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
3.1 WebSphere Process Server secondary node
configuration steps
The sequence of steps required to configure a secondary node are as follows:
1. Launch the WebSphere Application Server for z/OS ISPF dialog and
configure the secondary empty node.
2. Run the zSMPInstall script for the secondary empty node.
3. Edit a new ManagedDB2 response file and customize it for the secondary
node.
4. Run the zWPSConfig script to augment the secondary empty node for
WebSphere Process Server for z/OS.
5. Federate the secondary node.
6. Add DB2 libraries to the started task JCL of secondary node address spaces.
7. Add a cluster member in the secondary node.
8. Update the new server’s configuration (that is, the server short name, ports,
and virtual hosts).
9. Update some of the node agent’s ports for the secondary node.
10.Start the server on the secondary node.
Define variables for the secondary node
We started the ISPF dialog by entering the TSO command shown in Figure 3-1.
Note that we used a new APPL(A4NB) so the variables for the secondary node
(node B) were separate from those used for the primary node.
Figure 3-1 Start ISPF dialog for secondary empty node
Complete these steps to define the variables for the secondary node:
1. Select option 2, Create Network Deployment cells and nodes.
2. Select option 2, Create an empty managed node.
3. Select option 1, Load security domain variables.
Chapter 3. WebSphere Process Server for z/OS secondary node customization
181
4. Enter the name of the data set containing the security domain variables,
which in our case is A4CELL.A4SECDM.SAVECFG.
5. Select option 2, Allocate target data sets.
The target data set names from our spreadsheet are shown in Figure 3-2.
Figure 3-2 Empty node B target data set names
6. After allocating the data sets, select the following options
a. Option 3, Define variables, which takes you to the Define Variables to
Configure a Managed Node ISPF panel.
b. Option 1, System Locations.
You must fill in the variables you entered in the Empty Managed Node
worksheet for node B. Figure 3-3 shows System Locations (1 of 2) from
the Empty Managed Node worksheet. It is important to ensure that the
system name (LPAR name) is set correctly and that you refer to the correct
set of WebSphere SBBO* libraries.
Figure 3-3 System Locations worksheet (1 of 2)
182
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 3-4 shows the variables as entered into the ISPF panel Systems
Locations (1 of 2).
Figure 3-4 ISPF panel System Locations (1 of 2)
Figure 3-5 shows the second part of the System Locations worksheet. The
path to the WebSphere Application Server product directory should not be
the mount point of the HFS/ZFS that contains the WebSphere Application
Server for z/OS product. Instead you should create an intermediate
symbolic link that references the physical mount point.
Figure 3-5 System Locations worksheet (2 of 2)
For a full explanation of the importance of using intermediate symbolic
links, refer to the white papers, WebSphere z/)S V6 - WSC Sample ND
Configuration, WP100653, and WebSphere Application Server for z/OS -
Chapter 3. WebSphere Process Server for z/OS secondary node customization
183
Planning for Test, Production and Maintenance, WP100396, which you
can obtain from the IBM Techdocs Library Web site at:
http://www.ibm.com/support/techdocs/atsmastr.nsf/Web/Techdocs
Figure 3-6 shows the variables as entered into the ISPF panel System
Locations (2 of 2).
Figure 3-6 ISPF panel System Locations (2 of 2)
7. After you entered all variables for the System Locations panels, select
option 2, System Environment Customization.
Here you have to fill in the variables you entered in the configuration
spreadsheet for the system environment customization part of the empty
managed node configuration.
Figure 3-7 shows the System Environment Customization (1 of 1)
spreadsheet as we defined it for our installation.
Figure 3-7 System Environment Customization spreadsheet (1 of 1)
184
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 3-8 shows the data as entered into the ISPF panel System
Environment Customization (1 of 3).
Figure 3-8 ISPF panel System Environment Customization (1 of 3)
The spreadsheet does not include sections for System Environment
Customization (2 of 3) and System Environment Customization (3 of 3), but
you must enter the same values as those shown for the same panels on the
DMGR spreadsheet (see “Deployment Manager customization” on page 14).
Figure 3-9 shows the data as entered into the ISPF panel System
Environment Customization (2 of 3) when configuring an empty managed
node.
Figure 3-9 ISPF panel System Environment Customization (2 of 3)
Chapter 3. WebSphere Process Server for z/OS secondary node customization
185
Figure 3-10 shows the data as entered into the ISPF panel System
Environment Customization (3 of 3) when configuring an empty managed
node.
Figure 3-10 ISPF panel System Environment Customization (3 of 3)
8. When the System Environment Customization is complete, select option 3,
Server Customization.
9. Fill in the variables you entered in the configuration spreadsheet for the
Server Customization spreadsheet part of the standalone server
configuration.
Figure 3-11 shows the Empty Managed Node Customization spreadsheet
(1 of 4) as we defined it for our installation.
Figure 3-11 Server Customization spreadsheet (1 of 4)
186
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 3-12 shows the equivalent data as entered into the ISPF panel Server
Customization (1 of 4) when configuring the secondary node.
Figure 3-12 ISPF panel Server Customization (1 of 4)
Chapter 3. WebSphere Process Server for z/OS secondary node customization
187
Figure 3-13 shows the Server Customization (2 of 4) spreadsheet as we
defined it for our installation.
Figure 3-13 Server Customization spreadsheet (2 of 4)
188
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 3-14 shows the equivalent data as entered into the ISPF panel Server
Customization (2 of 4) when configuring the secondary node.
Figure 3-14 ISPF panel Server Customization (2 of 4)
Figure 3-15 shows the Server Customization spreadsheet (3 of 4) as we
defined it for our installation when configuring the secondary node.
Figure 3-15 Server Customization spreadsheet (3 of 4)
Chapter 3. WebSphere Process Server for z/OS secondary node customization
189
Figure 3-16 shows the equivalent data as entered into the ISPF panel Server
Customization (3 of 4) when configuring the secondary node.
Figure 3-16 ISPF panel Server Customization (3 of 4)
190
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Figure 3-17 shows the Server Customization spreadsheet (4 of 4) as we
defined it for our installation when configuring the secondary node.
Figure 3-17 Server Customization spreadsheet (4 of 4)
Chapter 3. WebSphere Process Server for z/OS secondary node customization
191
Figure 3-18 shows the equivalent data as entered into the ISPF panel Server
Customization (4 of 4) when configuring the secondary node.
Figure 3-18 ISPF panel Server Customization (4 of 4)
10.After you entered all variables, you select option 4, View Security Domain
Configuration Panels, and verify that the variables displayed are what you
expect for the cell you are configuring.
11.Press the F3 key, then select option 4 to generate the jobs.
12.Select option 5 to view the instructions member BBOMNINS.
13.Run the jobs. Follow the instructions in member BBOMNINS; however, do not
run BBOWMNAN at this time. Stop after you have run the job BBOMHFSB.
We ran these jobs without using UID=0.
192
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Run zSMPInstall against the secondary empty node
We copied the JCL we used to run zSMPInstall for the primary node and tailored
it to run against the secondary node as shown in Example 3-1.
Example 3-1 Job A4INSANB
//INSTO EXEC PGM=IKJEFT01,REGION=0M,TIME=1440
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BPXBATCH SH +
export PATH=.:$PATH; +
cd /wasa4config/a4cell/a4nodeb/AppServer/bin; +
/usr/lpp/zWPSA4/V6R0/zos.config/bin/zSMPInstall.sh +
'-smproot /usr/lpp/zWPSA4/V6R0' +
'-runtime /wasa4config/a4cell/a4nodeb/AppServer' +
'-install' +
1> /tmp/installonly_1033.out +
2> /tmp/installonly_1033.err
//***********************************************************/
//* STEPS TO COPY THE OUTPUT THE JOB LOG
*/
//***********************************************************/
//CPOUT EXEC PGM=IKJEFT01,REGION=0M
//SYSEXEC DD DISP=SHR,DSN=BB46052.SBBOEXEC
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BBOHFSWR '/tmp/installonly_1033.out'
BBOHFSWR '/tmp/installonly_1033.err'
/*
//
Note: Job A4INSANB, and all the jobs in this chapter, are included in
Appendix B, “Additional material” on page 235.
Chapter 3. WebSphere Process Server for z/OS secondary node customization
193
Edit a ManagedDB2.rsp file for the secondary node
We copied the ManagedDB2.rsp response file we used when configuring the
primary node to a new file called NodeBManagedDB2.rsp. Then we edited it so
the properties were correct for the secondary node. Example 3-2 shows the four
properties we changed. All other properties were the same as those that we had
specified in the ManagedDB2.rsp file for the primary node.
Example 3-2 Updated properties in NodeBManagedDB2.rsp file
profilePath=/wasa4config/a4cell/a4nodeb/AppServer/profiles/default
templatePath=/wasa4config/a4cell/a4nodeb/AppServer/profileTemplates/managed.*
cellName=a4baseb
nodeName=a4nodeb
Run zWPSConfig against the secondary empty node
We ran the shell script zWPSConfig.sh by submitting job A4CFG NB (see
Example 3-3).
Example 3-3 ‘Job A4CFGNB
//***********************************************************/
//* Run zWPSConfig.sh
*/
//***********************************************************/
//INSTO EXEC PGM=IKJEFT01,REGION=0M,TIME=1440
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BPXBATCH SH +
export PATH=.:$PATH; +
cd /wasa4config/a4cell/a4nodeb/AppServer/bin; +
zWPSConfig.sh +
-response /u/seniokj/wpswork/NodeBManagedDB2.rsp +
-augment +
1> /tmp/zWPSConfig_2033.out +
2> /tmp/zWPSConfig_2033.err
/*
//***********************************************************/
//* STEPS TO COPY THE OUTPUT THE JOB LOG
*/
//***********************************************************/
//CPOUT EXEC PGM=IKJEFT01,REGION=0M
//SYSEXEC DD DISP=SHR,DSN=BB36052.SBBOEXEC
//SYSTSPRT DD SYSOUT=*
//SYSTSIN DD *
BBOHFSWR '/tmp/zWPSConfig_2033.out'
194
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
BBOHFSWR '/tmp/zWPSConfig_2033.err'
/*
//
The output from A4CFGNB should be the same as for the A4CFGNA job, which
was previously shown in Example 2-15 on page 57.
Federate the secondary node
The following steps enable you to federate the secondary node:
1. Make sure that the Deployment Manager is started. To start our Deployment
Manager, we used the following command:
S A4MGCR,JOBNAME=A4DMGR,ENV=A4CELL.A4DMNODE.A4DMGR
2. Return to the .CNTL data set that contains the customized jobs for creating
the empty managed node and run the BBOWMNAN job. On our system, the
.CNTL data set was in A4CELL.A4BASEB.EMPTY.CNTL.
This job will start the node agent A4AGNTB once the node has been federated. If
the BBOWMNAN job does not finish within approximately 10 minutes and
appears to be inactive, the most likely cause is that the node agent has not
initialized correctly. Look at the output from the node agent and diagnose the
cause of the problem.
3. When BBOWMNAN completes normally, you will see the following message:
ADMU0003I: Node a4nodeb has been successfully federated.
4. In the job log for the node agent A4AGNTB, look for message ADMS0003I
indicating that synchronization with the Deployment Manager has succeeded
(see Example 3-4).
Example 3-4 Node agent job log showing synchronization completed
BBOO0222I: WSVR0001I: Server CONTROL PROCESS nodeagent open for 373
e-business
BBOO0019I INITIALIZATION COMPLETE FOR WEBSPHERE FOR Z/OS CONTROL 382
PROCESS A4AGNTA.
BBOO0247I INITIALIZATION COMPLETE FOR WEBSPHERE FOR Z/OS CONTROL 383
PROCESS A4CELL/A4NODEA/A4AGNTA/A4AGNTB.
BBOO0222I: ADMR0011I: Document 384
cells/a4cell/nodes/a4nodeb/servers/nodeagent/trace.dat is deleted.
ADMS0003I: The configuration synchronization completed successfully.
Chapter 3. WebSphere Process Server for z/OS secondary node customization
195
5. When you are satisfied that the secondary node has been successfully
federated, take another backup of the configuration HFS data sets. We
backed up the HFS using the HFSDUMP job.
Add DB2 libraries to the started task JCL
Started task JCL for the secondary node’s address space is copied into
SYS1.PROCLIB by the BBOWCPYM job you ran while configuring the
secondary empty node. WebSphere Process Server accesses DB2 for z/OS, and
the DB2 load libraries must be added to the STEPLIB of the servant regions
(including the adjunct) if they are not defined in the system LINKLST.
1. We updated the following members of SYS1.PROCLIB:
A4CRABZ
A4ASRBZ
2. We added the highlighted SDSN* libraries:
//STEPLIB
//
//
//
//
DD
DD
DD
DD
DD
DISP=SHR,DSN=BB46048.SBBOLD2
DISP=SHR,DSN=BB46048.SBBOLOAD
DISP=SHR,DSN=DB8IU.SDSNEXIT
DISP=SHR,DSN=DB8I8.SDSNLOAD
DISP=SHR,DSN=DB8I8.SDSNLOD2
Add a second cluster member in the secondary node
The procedure for adding a cluster member into the secondary node is very
similar to that which you followed in order to create a cluster member in the
primary node, which is described in “Create the cluster and first cluster member”
on page 74.
1. Make sure that the Deployment Manager and both node agents are running.
2. On the WebSphere Administration console, navigate to Application
Servers → Clusters.
196
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
3. Click the link to open the configuration of your cluster as shown in
Figure 3-19.
Figure 3-19 Click link to cluster configuration
4. Click the link to Cluster members that is on the right under Additional
properties.
5. Click New to start the Create cluster member wizard.
6. On the Step 1 screen, enter the name of the cluster member (server) that you
will create in the secondary node. Make sure that the correct secondary node
is selected in the drop-down list box.
Chapter 3. WebSphere Process Server for z/OS secondary node customization
197
For our A4 secondary node a4nodeb, the cluster member is a4sr01b as
shown in Figure 3-20.
Figure 3-20 Step 1 of Create cluster member wizard
198
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
7. Click Apply. In the area at the bottom of the screen, a row with the name of
the new server you entered on the last screen is displayed (see Figure 3-21).
Figure 3-21 New server listed
Note: It is important to click Apply on the Step 1 screen before clicking Next;
otherwise, the second step of the wizard will have null input.
Chapter 3. WebSphere Process Server for z/OS secondary node customization
199
8. Uncheck the Generate Unique Http Ports check box.
9. Click Next to progress to the Step 2 Summary panel as shown in Figure 3-22.
Figure 3-22 Summary of actions prior to creating cluster member
Notice that the information under Summary of actions indicates that the
so-called “Clone Template” is the server a4cell/a4nodea/a4sr01a. This means
that the primary node’s server (the first cluster member of cluster a4cl01) is
being used as the template for cloning the new server in the secondary node.
200
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
10.Check the information in the Summary panel and when you are satisfied that
it is correct, click Finish. You are returned to the list of cluster members, and
the second server you just created is displayed in the list as shown in
Figure 3-23.
Figure 3-23 Second server listed
11.Click the link at the top of the page to save your configuration changes.
Update the secondary node server configuration
Although the new server in the secondary node is cloned from that in the primary
node, you must make a few changes to the second server’s configuration. The
server short name will take an incorrect default. In addition you must check the
port assignments. The changes can be made by following these steps:
1. On the WebSphere Administration console, navigate to Application
Servers → Servers.
2. Click the server you created in the secondary node. For our A4 cell, this was
a4sr01b.
Chapter 3. WebSphere Process Server for z/OS secondary node customization
201
3. Change the server short name from BBOS001 to the uppercase equivalent of
your server long name. For our server a4sr01b (which is the lowercase “long”
name), we set the short name to A4SR01B as shown in Figure 3-24.
Figure 3-24 Set short name for server in secondary node
4. Click OK, but do not save the configuration changes yet because you must
also change the port numbers.
5. Follow the procedure described in “Update the server configuration” on
page 83 to set the correct port values for the server. The port numbers should
be exactly the same as those used by the server in the primary node.
6. When you have finished, save the configuration changes.
Update node agent ports for the secondary node
The node agent in the secondary node will have some ports assigned to default
values. Follow the same procedure you followed when configuring the primary
node to set the correct port values. The procedure is described in “Update the
node agent ports” on page 94.
Start the secondary node server
The following steps enable you to start the second node server:
1. We started the server using the following command:
S A4ACRB,JOBNAME=A4SR01B,ENV=A4CELL.A4NODEA.A4SR01B
2. When you see the following message in the servant job log:
BBOO0222I: WSVR0001I: Server SERVANT PROCESS a4sr01b open for
e-business
202
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
log in to the WebSphere Administrative Console. We used the following URL:
http://wtsc48.itso.ibm.com:22548/ibm/console/
At this point, the job log should not list any errors. If you get errors, look in the
error logs in /<app_server_root>/profiles/default/logs/ffdc. The
<app_server_root> in our case is /wasa4config/a4cell/a4nodeb/AppServer.
Chapter 3. WebSphere Process Server for z/OS secondary node customization
203
204
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
4
Chapter 4.
IBM HTTP Server for z/OS
configuration
After the WebSphere Process Server for z/OS cluster has been configured, you
must create HTTP servers. These servers run the WebSphere HTTP plugin so
that HTTP requests are balanced across the cluster and session affinity
maintained.
Note: In this section, the terms “HTTP server” and “Web server” are
equivalent and refer to the IBM HTTP Server for z/OS.
A complete description of the steps required to configure IBM HTTP Server for
z/OS is beyond the scope of this Redpaper. We do not explain the steps you
must take to enable the IBM HTTP Server for z/OS to run on a z/OS LPAR for the
first time. You can read about how to do that in the manual, “HTTP Server
Planning, Installing Using,” SC34-4826.
Once you have enabled the IBM HTTP Server for z/OS to run in a z/OS LPAR,
you can use the information in this chapter to configure an HTTP server in each
LPAR where you have configured WebSphere Process Server nodes.
© Copyright IBM Corp. 2008. All rights reserved.
205
4.1 HTTP server configuration
In summary, the steps required to configure HTTP servers to work with a
WebSphere Process Server for z/OS cluster are as follows:
1. Plan a TCP/IP address and DVIPA name that will be used to balance HTTP
requests between cloned HTTP servers in your Parallel Sysplex.
2. Create and mount HFS/ZFS data sets for the HTTP server configuration and
logs.
3. Customize the httpd.conf and httpd.envars files.
4. Create started task JCL for the HTTP servers.
5. Add the WebSphere plugin to the httpd.conf files of each HTTP server.
6. Define HTTP servers using the WebSphere Administration Console.
7. Update the HTTP server start and stop commands.
8. Generate the plugin-cfg.xml file.
9. Edit the plugin-cfg.xml file to correct the path to the plugin log file.
Set up TCP/IP addresses and domain names
The following steps enable you to set up TCP/IP addresses and domain names:
1. Plan and define the TCP/IP addresses and domain names that you will use to
distribute HTTP requests across multiple HTTP servers in your sysplex.
Your network systems programmer must define a Distributed Virtual IP
Address (DVIPA) that will be used when making requests from a browser to
the WebSphere Process Server cluster.
2. Add a domain name entry to your Domain Name Server (DNS) that maps to
the DVIPA address.
For example, in our environment we had two LPARs, SC48 and SC52. The
domain names and IP addresses are shown in the first two rows of Table 4-1.
We defined a DVIPA as shown in the third row of Table 4-1.
Table 4-1 TCP/IP address and domain names for A4 cell
206
Usage
TCPIP address
Domain Name
Primary node’s nondistributed ports.
(LPAR SC48)
9.12.4.38
wtsc48.itso.ibm.com
Secondary node’s nondistributed ports.
(LPAR SC52)
9.12.4.42
wtsc52.itso.ibm.com
DVIPA for HTTP requests to HTTP servers
9.12.4.108
a4.http.itso.ibm.com
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
The DVIPA domain name was registered in our DNS so we could use that
name in URLs entered from our browsers.
The domain names that are specific to each LPAR are not distributed virtual IP
addresses. They can be virtual IP addresses but they must not be distributed.
For a full discussion of choosing network names and DVIPAs, we recommend
you consult the white paper, WebSphere z/OS V6 - WSC Sample ND
Configuration, WP100653, available on the IBM Techdocs Library Web site here:
http://www.ibm.com/support/techdocs/atsmastr.nsf/Web/Techdocs
Create and mount Web server HFS/ZFS data sets
We recommend you use a ZFS data set rather than HFS data sets because ZFS
performs better and HFS is functionally stabilized. You should define all new
UNIX file systems on z/OS using ZFS rather than HFS.
1. Create an HFS or a ZFS to hold the HTTP server configuration and another
larger HFS/ZFS to hold the logs. You need a configuration HFS/ZFS and a log
HFS/ZFS for each LPAR that runs a WebSphere Process Server node.
2. Create mount points for these HFS/ZFS data sets that are not shared - for
example, /$SYSNAME/web/wps, where $SYSNAME is the system symbolic
variable that resolves to the LPAR name.
3. Mount the HFS/ZFS data sets.
4. On each LPAR, create a symbolic link in the sysplex root called /web/wps
pointing to /$SYSNAME/web/wps. This means that each HTTP server's
started task JCL and configuration files can reference the same symbolic link
/web/wps to refer to that LPAR's HTTP configuration or logs directory.
5. Update BPXPRMxx in SYS1.PARMLIB and add mount statements for the
HFS/ZFS data sets, making sure you use the SYSNAME and NOAUTOMOVE
properties to ensure correct ownership of the configuration HFS/ZFS data
sets.
6. Create the required directories under the mount points.
Depending on how you decide to organize your HTTP server logs, you could
decide to create a different directory structure for the logs, but the default
httpd.conf file uses the following directories.
/pub
/pub/reports
/logs
Chapter 4. IBM HTTP Server for z/OS configuration
207
7. Make sure the permissions are set to at least 770 with the owner set to the
HTTP server's userid and the group authority set to the WebSphere HTTP
plugin 205
8. cell's configuration group.
The HTTP server started task userid can write to the HTTP log files because
it is the owner of the directories and files under /web/wps.
WebSphere administrators can write to can write to the HTTP configuration
files (to update the plugin-cfg.xml, for example) because they are members of
the RACF group that has group privilege over /web/wps.
Customize the httpd.conf and httpd.envars files
The following steps enable you to customize the httpd.conf and httpd.envars files:
1. Copy the sample httpd.conf.base file from
<httpserver_install_root>/samples/config to the directory you decided to use
for the HTTP server configuration. Rename the file to httpd.conf.
For our environment, we copied it into each /$SYSNAME/web/wps directory.
2. In httpd.conf, set the correct host name directive. This directive must be the
DVIPA that was created so that sysplex distributor will balance requests
across the HTTP servers.
3. Review the rest of httpd.conf file, checking that the logs and reporting
directories refer to the directory where you want to hold logs. It is best to
override the port directive using the -p parameter on the started task JCL, but
you could code the correct value in the httpd.conf too.
4. In httpd.envars, set JAVA_HOME so it points to the WebSphere node's /java
directory, which is at <appserver_install_root>/java.
The httpd.envars file we used for our webwps48 HTTP server is shown in
Example 4-1. The same file can be used for HTTP servers on other LPARs,
but you must change the WebSphere Application Server’s node name on
JAVA_HOME.
Example 4-1 Configured httpd.envvars file for webwps48 HTTP server
JAVA_HOME=/wasa4config/a4cell/a4nodea/AppServer/java
PATH=/bin:.:/usr/sbin:/usr/lpp/internet/bin:/usr/lpp/internet/sbin:\
/usr/lpp/ldap/bin:$JAVA_HOME
SHELL=/bin/sh
TZ=EST5EDT
LANG=C
LC_ALL=en_US.IBM-1047
NLSPATH=/usr/lib/nls/msg/%L/%N:/usr/lpp/internet/%L/%N:\
/usr/lpp/ldap/lib/nls/msg/%L/%N
208
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
LIBPATH=/usr/lpp/internet/bin:/usr/lpp/internet/sbin:/usr/lpp/ldap/lib
STEPLIB=CURRENT
GSKV3CACHESIZE=1024
GSKV2CACHESIZE=512
Make sure that the PATH contains $JAVA_HOME so that the plugin is running
with the same level of Java as WebSphere Application Server.
Create started task JCL for the HTTP server
We decided to include two numeric digits from the LPAR name in the name of our
HTTP server. We created started tasks called WEBWPS48 on LPAR SC48 and
WEBWPS52 on LPAR SC52.
1. Create JCL in SYS1.PROCLIB like that shown in Example 4-2.
Example 4-2 HTTP server started task JCL
//WEBWPS48 PROC P1='-p 80',
// P2='-r /web/wps/httpd.conf',
//*P3='-B -vv',
// P3='-B',
// LEPARM='ENVAR("_CEE_ENVFILE=/web/wps/httpd.envvars")'
//***************************************************************
//WEBSRV
EXEC PGM=IMWHTTPD,REGION=0K,TIME=NOLIMIT,
//
PARM=('&LEPARM/&P1 &P2 &P3')
//***************************************************************
//SYSIN
DD DUMMY
//OUTDSC
OUTPUT DEST=*
//SYSPRINT DD SYSOUT=*
//SYSERR
DD SYSOUT=*
//STDOUT
DD SYSOUT=*
//STDERR
DD SYSOUT=*
//SYSOUT
DD SYSOUT=*
//CEEDUMP DD SYSOUT=*
Notice that you can pass the port number on the -p PARM so you do not have
to code it in the httpd.conf file on the port directive.
2. Check that the HTTP server starts successfully. Look for the following
message in the HTTP server log:
IMW3536I SA 51184628 0.0.0.0:80 * * READY
Chapter 4. IBM HTTP Server for z/OS configuration
209
Add the WebSphere HTTP plugin to the httpd.conf file
The following steps enable you to add the plugin to the httpd.conf file:
1. Add the WebSphere HTTP plugin's ServerInit, ServerTerm, and Service
directives to the httpd.conf file for each HTTP server.
2. Place the ServerInit and ServerTerm statements before any “Pass”
statements in the httpd.conf file.
3. On ServerInit and ServerTerm, you must set the path to the plugin DLL, as the
first parameter. The plugin DLL is located here:
<app_server_root>/bin/ihs390WAS60Plugin_http.so
4. On the ServerInit directive only, you set the path to the plugin-cfg.xml file as
the second parameter.
You can place the plugin in any directory you like, but the HTTP server’s
started task userid requires READ permission to it. We recommend placing
the plugin-cfg.xml file in the same directory as httpd.conf.
For example, the ServerInit and ServerTerm statements for our A4 cell are as
shown in Example 4-3. Note that the ServerInit statement should be coded on
one line but has been split across two lines so it fits on the page.
Example 4-3 ServerInit and ServerTerm directives in httpd.conf for our A4 cell
ServerInit
/wasa4config/a4cell/a4nodea/AppServer/bin/ihs390WAS60Plugin_http.so:init_exit \
/web/wps/plugin-cfg.xml
ServerTerm
/wasa4config/a4cell/a4nodea/AppServer/bin/ihs390WAS60Plugin_http.so:term_exit
5. Add Service directives after the ServerTerm statement for each of the context
roots that exist in your WebSphere HTTP plugin cell and that you wish to be
served through the HTTP server.
An easy way to obtain a list of all these context roots is to copy them from the
plugin-cfg.xml file after you have generated it. See “Generate the
plugin-cfg.xml file” on page 225.
The context roots required for WebSphere Process Server itself are shown in
Example 4-4. You must add Service directives for your application's context
roots.
Example 4-4 Service directives in httpd.conf for our A4 cell
Service
Service
Service
Service
Service
/BFMIF_a4cl01/*
/bpc/*
/bpcobserver/*
/HTMIF_a4cl01/*
/bpcivt/*
/wasa4config/a4cell/a4nodea/AppServer/bin/ihs390WAS60Plugin_http.so:service_exit
/wasa4config/a4cell/a4nodea/AppServer/bin/ihs390WAS60Plugin_http.so:service_exit
/wasa4config/a4cell/a4nodea/AppServer/bin/ihs390WAS60Plugin_http.so:service_exit
/wasa4config/a4cell/a4nodea/AppServer/bin/ihs390WAS60Plugin_http.so:service_exit
/wasa4config/a4cell/a4nodea/AppServer/bin/ihs390WAS60Plugin_http.so:service_exit
210
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
6. Start the HTTP server to check that the plugin initializes successfully. Check
for the following message:
WebSphere HTTP Plug-in for z/OS and OS/390 initialization went OK :-)
Define the Web servers to WebSphere Administration Console
Although not required, it can be useful to define the Web servers to the
WebSphere Administration Console because you can see the status of the
servers on the administration console and view the httpd.conf and plugin-cfg.xml
files. You can also start and stop the HTTP servers from the administration
console. The definitions for the HTTP server are associated with a managed
node, and the HTTP server is referred to as a “managed HTTP server.”
1. On the WebSphere Administration Console, navigate to Application
Servers → Web servers.
2. Click New as shown in Figure 4-1.
Figure 4-1 Start the wizard to configure new Web server
Chapter 4. IBM HTTP Server for z/OS configuration
211
3. Select the primary node from the Select node drop-down list box as shown in
Figure 4-2. (Careful - it may start off pointing to the secondary node!)
Figure 4-2 Select node and enter Web server name
4. Enter the HTTP server name in the Server name field. We entered the
lowercase form of the HTTP server's started task name, webwps48.
212
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
5. Click Next to progress to the second step of the wizard as shown in
Figure 4-3.
Figure 4-3 Enter Web server properties
6. Allow type to default to IHS.
7. Set the port number. We used the default port 80.
8. Set the installation path for the HTTP server. On our system, this path is the
default location /usr/lpp/internet.
9. Set the location of the plugin-cfg.xml file. We set it to be the same directory as
the httpd.conf file - that is, /web/wps.
Chapter 4. IBM HTTP Server for z/OS configuration
213
10.Click Next to progress to step 3 of the wizard as shown in Figure 4-4.
Figure 4-4 Select IHS OS390 WebServer Template
11.Click the radio button to select the IHS OS390 template.
12.Click Next to progress to step 4 of the wizard, which summarizes the
properties entered, as shown in Figure 4-5.
Figure 4-5 Web server configuration summary
214
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
13.Click Finish.
You will be returned to the list of Web servers, and your Web server will be
listed as shown in Figure 4-6. Do not save the configuration yet.
Figure 4-6 Select Web server
14.Click the link to the first Web server.
Chapter 4. IBM HTTP Server for z/OS configuration
215
15.Change the configuration file name to the location of your httpd.conf file. On
our system, we specified /web/wps/httpd.conf as shown in Figure 4-7.
Figure 4-7 Set Web server General Properties
16.Click Apply.
216
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
17.Click the link on the right to Plug-in properties. You access the screen shown
in Figure 4-8.
Figure 4-8 Set plugin properties
18.Uncheck the Automatically propagate plugin configuration file check box.
(This step does not work with IBM HTTP Server - IHS - on z/OS.)
19.Set the plug-in logging path to the directory you created to hold the HTTP
server logs. For our webwps48 HTTP server, the path is
/web/wps/logs/http_plugin.log.
20.Click OK.
You can now create the second HTTP server on the secondary node. Follow
these steps:
1. Navigate back to Servers → Web servers.
2. Click New.
Chapter 4. IBM HTTP Server for z/OS configuration
217
3. Make sure the secondary node is selected in the Select node drop-down list
box as shown in Figure 4-9.
Figure 4-9 Enter name for second Web server
4. Set the second Web server’s name. We entered the lowercase form of the
HTTP server's started task name, webwps52.
5. Click Next to access the panel shown in Figure 4-10.
Figure 4-10 Set properties for second Web server
218
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
6. Allow type to default to IHS.
7. Set the port number. We used the default port 80.
8. Set the Installation path for the HTTP server. On our system, this path is the
default location, /usr/lpp/internet.
9. Set the location of the plugin-cfg.xml file. We set it to be the same directory as
the httpd.conf file - that is, /web/wps.
10.Click Next.
11.Click the one radio button to select the IHS z/OS template as shown in
Figure 4-11.
Figure 4-11 Select IHSZOS template
12.Click Next.
13.Click Finish.
14.Click the link to the second Web server.
Chapter 4. IBM HTTP Server for z/OS configuration
219
15.Change the configuration file name to the location of your httpd.conf file. On
our system, we specified /web/wps/httpd.conf as shown in Figure 4-12.
Figure 4-12 Set file name of second Web server
16.Click Apply.
220
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
17.Click the Plug-in properties link on the right to access the Plug-in
properties panel as shown in Figure 4-13.
Figure 4-13 Set plugin properties for second Web server
18.Uncheck the Automatically propagate plugin configuration file check box as
shown. (This step does not work with IHS on z/OS.)
19.Set the plug-in logging path to the directory you created to hold HTTP server
logs. For our webwps52 HTTP server, this path is
/web/wps/logs/http_plugin.log.
20.Click OK.
You will now need to perform additional settings to complete the configuration of
the Web servers into your WebSphere environment.
1. Navigate to Environment → Virtual Hosts and make sure a virtual host
entry exists in for the HTTP server’s ports. We had virtual host entries for the
ports 80 and 443.
Chapter 4. IBM HTTP Server for z/OS configuration
221
2. Navigate to Application servers → Servers and click the link to the first
WebSphere Application Server. Our server is a4sr01a.
3. Navigate to Web Container → HTTP Transport.
4. Click the blue asterisk (*) link for the first port and then click Custom
properties.
5. Click New.
6. Add the property TrustedProxy and set the value to true as shown in
Figure 4-14.
Figure 4-14 Set TrustedProxy property on HTTP transport port
7. Click the paper trail link at the top of the page to navigate back to the first
application server’s HTTP transports.
8. Select the second port (the HTTPs port), then click Custom properties.
9. Click New.
10.As before, add the property TrustedProxy and set the value to true.
11.Navigate to the second WebSphere Application Server (our server is
a4sr01b), and following the procedure just described, set TrustedProxy to true
for both of its HTTP transport ports.
12.Save your configuration changes.
222
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Although not absolutely necessary in order to configure an HTTP server, we
recommend that you set WLMStatefulSession to true to evenly distribute HTTP
sessions between multiple servants. Once you have created your horizontal
cluster, you will probably want to scale your environment by running more than
one servant region.
If the HTTP sessions are not evenly distributed, the majority of the sessions (and
hence the load) can end up being “pinned” to one servant. Refer to the
WebSphere Application Server for z/OS Infocenter for a full discussion of this
subject in “Configuring an application server to use the WLM even distribution of
HTTP requests function.”
1. Navigate to Servers → Application servers and click the link to the first
server.
2. Navigate to: Administration → Administration Services under Server
Infrastructure.
3. Under Additional Properties, click Custom Properties.
4. Click WLMStatefulSession and change the Value field to true as shown in
Figure 4-15.
Figure 4-15 Set WLMStatefulSession to true
5. Click OK.
Chapter 4. IBM HTTP Server for z/OS configuration
223
6. Click the paper trail link at the top of the screen to navigate back to
Servers → Application servers and then click the link to the second server.
7. Navigate to Administration → Administration Services under Server
Infrastructure. Under Additional Properties, click Custom Properties.
8. Click WLMStatefulSession and change the Value field to true.
9. Click OK.
10.Save the configuration changes and synchronize to the nodes.
Update the HTTP server start and stop commands
By default the start and stop commands for the HTTP servers are START
IMWEBSRV and STOP IMWEBSRV, respectively. If your HTTP server started
tasks are not called IMWEBSRV, and you want to be able to stop and start them
from the WebSphere Administration Console, then you must update the start and
stop commands, which you can do by following these steps:
1. Navigate to Application Servers → Web Servers and click the link to the
first HTTP server configuration.
2. Click the Process Definition link on the right.
224
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
3. Set the correct start and stop commands and clear out StartCommandArgs,
removing ICSPARM='-vv' as shown in Figure 4-16.
Figure 4-16 Update start and stop commands for Web server
If you leave the -vv option in the StartCommandArgs field, it will enable
verbose tracing for the HTTP server. Should you need it, it is best to enable
tracing in the HTTP server using the following z/OS modify command:
F<webserver>,APPL=-vv.)
4. Click OK.
5. Click the link in the paper trail at the top of the screen to navigate back to
Application Servers → Web Servers.
6. Click the link to the second HTTP server’s configuration and make the same
changes there.
7. Click OK and then save the configuration and synchronize to the nodes.
Generate the plugin-cfg.xml file
Follow these steps to generate the plugin-cfg.xml file:
1. Open an OMVS session or telnet session and navigate to the Deployment
Manager <app_server_root>/profiles/default/bin directory.
Chapter 4. IBM HTTP Server for z/OS configuration
225
For example, for our A4 cell we navigated to the following directory:
cd /wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/bin
2. Run the GenPluginCfg.sh script with no parameters as shown in
Example 4-5. Doing so generates a plugin that is “cluster-aware” and has
information about the cluster members and all the WebSphere Process
Server applications.
Example 4-5 Telnet session log generating plugin
A4ADMIN:/SC48/var/WebSphere/home/A4CFG:
> cd /wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/bin
A4ADMIN:/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/bin:
>./GenPluginCfg.sh
IBM WebSphere Application Server, Release 6.0
WebSphere Plugin Configuration Generator
Copyright IBM Corp., 1997-2004
PLGC0012I: The plug-in is generating a server plug-in configuration file using the
cluster definition a4cell.
PLGC0005I: Plug-in configuration file = /wasa/config/cells/plugin-cfg.xml
A4ADMIN:/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/bin:
>./GenPluginCfg.sh
IBM WebSphere Application Server, Release 6.0
WebSphere Plugin Configuration Generator
Copyright IBM Corp., 1997-2004
PLGC0012I: The plug-in is generating a server plug-in configuration file using the
cluster definition a4cell.
PLGC0005I: Plug-in configuration file = /wasa/config/cells/plugin-cfg.xml
Notice the message PLGC0005I states that the plugin-cfg.xml file is at
/wasa/config/cells. In fact the plugin-cfg.xml file is generated to the
DeploymentManager <app_server_root>/profiles/default/config/cells directory.
For our A4 cell, the file was generated to the following directory:
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/config/cells
Edit the plugin-cfg.xml file to update log paths
Use an ASCII editor to edit the plugin-cfg.xml file for each HTTP server to set the
correct plugin log path. If you do not do so, you will receive the following error in
the HTTP server SDSF log:
ws_config_parser: handleLogEnd: Failed to open log file:
'/wasa/logs/http_plugin.log', OS Err: 129
For our A4 cell configuration, we changed all occurrences of /wasa/logs to
/web/wps in plugin-cfg.xml.
226
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Copy the plugin-cfg.xml file into the directory you specified as the second
parameter on the ServerInit directive in httpd.conf. For our A4 cell, we copied the
plugin-cfg.xml file into /SC48/web/wps and /SC52/web/wps.
Make sure that the permissions on the plugin-cfg.xml file allow the HTTP server
started task userid and the WebSphere HTTP plugin cell’s controller started task
userid to read it.
View plugin-cfg.xml in the administration console
When you configured the Web servers in the WebSphere Administration
Console, you specified the path to the plugin-cfg.xml file. If that path is correct,
and the cell’s controller userid has the correct permission, you should be able to
view the contents of plugin-cfg.xml from the administration console.
1. Navigate to Application Server → Web Servers and then click the link to
one of the Web servers.
2. Click the link to Plugin properties on the right.
3. Click the View button as shown in Figure 4-17. If an error has occurred and
the plugin-cfg.xml is not displayed, check the system log for messages that
might indicate a permission problem. Also recheck that the path you specified
for the plugin-cfg.xml file is correct.
Figure 4-17 View plugin-cfg.xml
Start the HTTP servers
To complete this part of the HTTP server configuration process, follow these
steps:
1. Start the HTTP servers using the MVS START command or using the
WebSphere Administration Console.
2. Check for the following messages in the HTTP server’s SDSF log:
WebSphere HTTP Plug-in for z/OS and OS/390 initialization went OK :-)
3. Check the status of the Web servers on the WebSphere Administration
Console by navigating to Application Servers → Web Servers. You should
Chapter 4. IBM HTTP Server for z/OS configuration
227
see both Web servers with the green “started” arrow icon as shown in
Figure 4-18.
Figure 4-18 HTTP servers show started status
Verify the applications
Verify once again that you can access the WebSphere Process Server Web
applications through the HTTP servers.
Try accessing BPC Observer, for example, from a browser by specifying the
HTTP server port. Open another browser and try it again. You should see
JavaServer™ Pages™ (JSP™) initialization messages in the SDSF log of both
node's servants when the plugin routes one request to one server and the next to
the other server.
For our A4 cell, we used the following URL:
http://a4.http.itso.ibm.com/bpc/
228
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
A
Appendix A.
Errors we encountered
This appendix describes the problems we encountered during the configuration
of our WebSphere Process Server.
© Copyright IBM Corp. 2008. All rights reserved.
229
GlobalMonitoringMbean
In the Process Server servant job log, you may get the following error (see
Figure A-1):
The service is unable to activate MBean: type GlobalMonitoringMBean
Figure A-1 MBEAN error
This ia a known fault which we believe does not affect the functioning of the
WebSphere Process Server. It is due to be fixed in a later release.
Human Task Container settings runtime configuration
We encountered a problem when we performed the following sequence using the
WebSphere Administration Console. When the problem occurs, it prevents you
from logging back in to the Administration Console until you restart the server:
Application servers → a4sr01a → Human Task Container Settings, then
select Runtime Configuration
230
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
You may get the following error (see Figure A-2):
+CEE0374C CONDITION=CEE3250C
Figure A-2 CEE0374C error
Note: This error has been reported to IBM, PMR 55072,180,000.
Failure to define business process container
We received the ADMA5014E failure message during the installation of the
business process container. See the high lighted lines in Example: A-1.
Example: A-1 Messages issued when BPC failed to configure
Installing...
Check the SystemOut.log on the Deployment Manager or server where the application is
deployed for specific information about the EJB deployment process as it occurs.
ADMA5016I: Installation of BPEContainer_a4cl01 started.
WSEC0106W: Your application may have Web Services Security enabled. If it does, you must
go to the Enterprise Application Management panels to configure the binding information
for Web Services Security. The binding information for Web Services Security is not
collected during application deployment. If it is not properly configured, your
application may not start or be usable.
Appendix A. Errors we encountered
231
ADMA5058I: Application and module versions validated with versions of deployment
targets.
ADMA5005I: The application BPEContainer_a4cl01 is configured in the WebSphere
Application Server repository.
ADMA5053I: The library references for the installed optional package are created.
ADMA5005I: The application BPEContainer_a4cl01 is configured in the WebSphere
Application Server repository.
ADMA5001I: The application binaries are saved in
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/wstemp/1769895740/worksp
ace/cells/a4cell/applications/BPEContainer_a4cl01.ear/BPEContainer_a4cl01.ear
ADMA5005I: The application BPEContainer_a4cl01 is configured in the WebSphere
Application Server repository.
CWSCA3013I: Resources for the SCA application BPEContainer_a4cl01 are being configured.
CWSCA3023I: The EAR file 1769895740BPEContainer_a4cl01.ear is being loaded for the SCA
module.
CWSCA3017I: Installation task Resource Task for SCA Messaging Binding and EIS Binding is
running.
CWSCA4007I: SCDL module BFMIF_a4cl01 is being loaded. Import
"sca/dynamic/import/scaimport".
CWSCA4007I: SCDL module BFMIF_a4cl01 is being loaded. Import
"sca/dynamic/import/wsimport".
CWSCA4008I: SCDL module BFMIF_a4cl01 is being loaded. Export
"com/ibm/bpe/api/sca/BFMWS".
CWSCA3017I: Installation task MQ Resource Task for SCA MQImportBinding/MQExportBinding
is running.
CWSCA3017I: Installation task SIBus Destination Resource Task for SCA Asynchronous
Invocations is running.
CWSCA3017I: Installation task EJB NamespaceBinding Resource Task for SCAImportBinding is
running.
CWSCA3017I: Installation task SIBus Destination Resource Task for SCA SOAP/JMS
Invocations is running.
CWSCA3014I: Resources for the SCA application BPEContainer_a4cl01 have been configured
successfully.
SECJ0400I: Successfuly updated the application BPEContainer_a4cl01 with the
appContextIDForSecurity information.
ADMA5011I: The cleanup of the temp directory for application BPEContainer_a4cl01 is
complete.
ADMA5014E: The installation of application BPEContainer_a4cl01 failed.
ADMA5016I: Installation of BPCExplorer_a4cl01 started.
ADMA5058I: Application and module versions validated with versions of deployment
targets.
ADMA5009I: An application archive is extracted at
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/wstemp/wstemp/app_1158a6
3fd4e/ext
ADMA5003I: The JavaServer Pages (JSP) files in the Web archive (WAR) files
bpcexplorer.war compiled successfully.
ADMA5005I: The application BPCExplorer_a4cl01 is configured in the WebSphere Application
Server repository.
ADMA5053I: The library references for the installed optional package are created.
ADMA5005I: The application BPCExplorer_a4cl01 is configured in the WebSphere Application
Server repository.
ADMA5001I: The application binaries are saved in
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/wstemp/1769895740/worksp
ace/cells/a4cell/applications/BPCExplorer_a4cl01.ear/BPCExplorer_a4cl01.ear
232
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
ADMA5005I: The application BPCExplorer_a4cl01 is configured in the WebSphere Application
Server repository.
CWSCA3013I: Resources for the SCA application BPCExplorer_a4cl01 are being configured.
CWSCA3023I: The EAR file ext is being loaded for the SCA module.
CWSCA3014I: Resources for the SCA application BPCExplorer_a4cl01 have been configured
successfully.
SECJ0400I: Successfuly updated the application BPCExplorer_a4cl01 with the
appContextIDForSecurity information.
ADMA5011I: The cleanup of the temp directory for application BPCExplorer_a4cl01 is
complete.
ADMA5013I: Application BPCExplorer_a4cl01 installed successfully.
ADMA5016I: Installation of BPCObserver_a4cl01 started.
ADMA5058I: Application and module versions validated with versions of deployment
targets.
ADMA5005I: The application BPCObserver_a4cl01 is configured in the WebSphere Application
Server repository.
ADMA5053I: The library references for the installed optional package are created.
ADMA5005I: The application BPCObserver_a4cl01 is configured in the WebSphere Application
Server repository.
ADMA5001I: The application binaries are saved in
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/wstemp/1769895740/worksp
ace/cells/a4cell/applications/BPCObserver_a4cl01.ear/BPCObserver_a4cl01.ear
ADMA5005I: The application BPCObserver_a4cl01 is configured in the WebSphere Application
Server repository.
CWSCA3013I: Resources for the SCA application BPCObserver_a4cl01 are being configured.
CWSCA3023I: The EAR file 1769895740BPCObserver_a4cl01.ear is being loaded for the SCA
module.
CWSCA3014I: Resources for the SCA application BPCObserver_a4cl01 have been configured
successfully.
SECJ0400I: Successfuly updated the application BPCObserver_a4cl01 with the
appContextIDForSecurity information.
ADMA5011I: The cleanup of the temp directory for application BPCObserver_a4cl01 is
complete.
ADMA5013I: Application BPCObserver_a4cl01 installed successfully.
ADMA5016I: Installation of BPCECollector_a4cl01 started.
ADMA5058I: Application and module versions validated with versions of deployment
targets.
ADMA5005I: The application BPCECollector_a4cl01 is configured in the WebSphere
Application Server repository.
ADMA5053I: The library references for the installed optional package are created.
ADMA5005I: The application BPCECollector_a4cl01 is configured in the WebSphere
Application Server repository.
ADMA5001I: The application binaries are saved in
/wasa4config/a4cell/a4dmnode/DeploymentManager/profiles/default/wstemp/1769895740/worksp
ace/cells/a4cell/applications/BPCECollector_a4cl01.ear/BPCECollector_a4cl01.ear
ADMA5005I: The application BPCECollector_a4cl01 is configured in the WebSphere
Application Server repository.
CWSCA3013I: Resources for the SCA application BPCECollector_a4cl01 are being configured.
CWSCA3023I: The EAR file 1769895740BPCECollector_a4cl01.ear is being loaded for the SCA
module.
CWSCA3014I: Resources for the SCA application BPCECollector_a4cl01 have been configured
successfully.
SECJ0400I: Successfuly updated the application BPCECollector_a4cl01 with the
appContextIDForSecurity information.
Appendix A. Errors we encountered
233
ADMA5011I: The cleanup of the temp directory for application BPCECollector_a4cl01 is
complete.
ADMA5013I: Application BPCECollector_a4cl01 installed successfully.
ADMA5014E: The installation of application BPEContainer_a4cl01 failed.
ADMA5013I: Application BPCExplorer_a4cl01 installed successfully.
ADMA5013I: Application BPCObserver_a4cl01 installed successfully.
ADMA5013I: Application BPCECollector_a4cl01 installed successfully.
After saving your changes to the master configuration, you must also restart the server
to be able to use the business process container.
In order to use human task capabilities, the Human Task Manager must also be configured.
The Human Task Manager configuration is here.
To start the application, first save changes to the master configuration.
Save to Master Configuration
We looked in the log of the Deployment Manager’s servant and found the errors
shown in Example A-2.
Example: A-2 Errors in the DMGR’s servant when configuring BPC
Trace: 2007/10/10 14:48:49.620 01 t=7B9408 c=UNK key=P8 (13007002)
ThreadId: 00000563
FunctionName: checkDBStatus()
SourceId: CommonDB
Category: SEVERE
ExtendedMessage: Error encountered while checking database
status.java.sql.SQLException:
Failure in loading T2 native library db2jcct2zos, reason:
java.lang.UnsatisfiedLinkError:
/pp/db2v8/UK20656/jcc/lib/libdb2jcct2zos.so: EDC5157I An internal error has occurred.
(errno2=0x0BDF03B2)DSRA0010E: SQL State = null, Error Code = -99,999DSRA0010E:
SQL State = null, Error Code = -99,999
These errors occur because the Deployment Manager’s servant did not have the
DB2 SDSNEXIT, SDSNLOAD and SDSNLOD2 libraries in its STEPLIB. The DB2
Universal JDBC driver is trying to load a non-Java load module from the
SDSNLOAD2 library, and in order to do this, the library must be in STEPLIB or
LNKLIST.
234
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
B
Appendix B.
Additional material
This paper refers to additional material that can be downloaded from the Internet
as described below.
Locating the Web material
The Web material associated with this paper is available in softcopy on the
Internet from the IBM Redbooks Web server. Point your Web browser at:
ftp://www.redbooks.ibm.com/redbooks/REDP4388
Alternatively, you can go to the IBM Redbooks Web site at:
ibm.com/redbooks
Select Additional Materials and open the directory that corresponds with the
IBM Redpaper form number, REDP4388.
© Copyright IBM Corp. 2008. All rights reserved.
235
Using the Web material
The additional Web material that accompanies this paper includes the following
files:
File name
redp4388.zip
Description
Zipped Code Samples, readme file
How to use the Web material
Create a subdirectory (folder) on your workstation, and unzip the contents of the
Web material zip file into this folder. Open the readme file. This file contains the
description of the accompanying files and the instructions for their use.
236
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Related publications
The publications listed in this section are considered particularly suitable for a
more detailed discussion of the topics covered in this paper.
IBM Redbooks
For information about ordering these publications, see “How to get Redbooks” on
page 238.
򐂰 WebSphere Process Server for z/OS Configuring a stand-alone server
environment, REDP-4349
򐂰 z/OS Getting Started: WebSphere Process Server and WebSphere
Enterprise Service Bus V6, SG24-7378
Other publications
These publications are also relevant as further information sources:
򐂰 z/OS V1R8.0 UNIX System Services Planning, GA22-7800 (can be found at
http://www-1.ibm.com/support/docview.wss?uid=pub1ga22780010).
© Copyright IBM Corp. 2008. All rights reserved.
237
Online resources
These Web sites are also relevant as further information sources:
򐂰 Installing and Configuring WebSphere Process Server.
http://publib.boulder.ibm.com/infocenter/dmndhelp/v6rxmx/index.jsp?t
opic=/com.ibm.wsps.602.z.ins.doc/doc/iins_zos_welcome.html
򐂰 The IVP we used is documented in Performing Installation Verification for
WPS on z/OS V6.0.1.
http://www.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/WP100830
򐂰 WebSphere for z/OS Version 6 - Configuration Planning Spreadsheet
http://www.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/PRS1331
򐂰 Sample script to fix variable settings in WPS and WESB for z/OS Ver. 6.0.x
http://www-03.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/PRS2232
򐂰 The following Techdocs articles are available at
http://www.ibm.com/support/techdocs
– PRS2378, WebSphere Process Server v6.0.1 for z/OS Base Application
Server Configuration Lab
– PRS2520, WPS and WESB ver.6.0.x for z/OS Configuration Tools and
Samples
– WP100830, Performing Installation Verification for WPS on z/OS V6.0.1
– WP100833, WPS V.6.0.x for z/OS Datasource & Database Configuration
Hints & Tips
– WP100878, WPS/WESB V6.0.x for z/OS: Network Deployment
Configuration Lab
– WP100653, WebSphere z/OS V6 - WSC Sample ND Configuration
How to get Redbooks
You can search for, view, or download Redbooks, Redpapers, Technotes, draft
publications and Additional materials, as well as order hardcopy Redbooks, at
this Web site:
ibm.com/redbooks
238
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Help from IBM
IBM Support and downloads
ibm.com/support
IBM Global Services
ibm.com/services
Related publications
239
240
WebSphere Process Server for z/OS: Configuring a Network Deployment environment
Back cover
WebSphere Process Server
for z/OS:
Configuring a Network
Deployment Environment
Provides
step-by-step
configuration guides
WebSphere Process Server for z/OS forms part of
the WebSphere Business Integration family of
products that provide functionality for implementing
Service-Oriented Architecture (SOA) on System z.
Includes WebSphere
Process Server DB2
setup
This IBM Redpaper provides a detailed
step-by-step configuration guide to setting up a
clustered WebSphere Application Server Network
Deployment cell and a guide to implementing
WebSphere Process Server with DB2 in that cell.
We configure WebSphere Process Server this way
because this type of cell is used in a typical
customer production environment. It provides
resilience and scalability.
Describes a Network
Deployment
environment
®
Redpaper
INTERNATIONAL
TECHNICAL
SUPPORT
ORGANIZATION
BUILDING TECHNICAL
INFORMATION BASED ON
PRACTICAL EXPERIENCE
IBM Redbooks are developed by
the IBM International Technical
Support Organization. Experts
from IBM, Customers and
Partners from around the world
create timely technical
information based on realistic
scenarios. Specific
recommendations are provided
to help you implement IT
solutions more effectively in
your environment.
For more information:
ibm.com/redbooks
REDP-4388-00
™
Download