|
IBM WebSphere for z/OS & Distributed Platforms: An Administrator's Guide
In this book, IBM's own enterprise WebSphere experts offer authoritative, comprehensive guidance for deploying and managing WebSphere on z/OS for mainframes, UNIX/Linux-based distributed systems, and Windows servers. Drawing on their extensive experience supporting enterprise customers and developing new WebSphere technologies, the authors address
the entire management lifecycle: planning, installation, configuration, administration, application deployment, tuning, and troubleshooting.
This book thoroughly covers WebSphere Application Server Version 5.0 and 5.1: both IBM Base WebSphere Application Server offerings and the advanced scalability and failover capabilities built into the popular IBM Network Deployment Edition. It has been designed to serve both as a comprehensive learning tool and as a rapid reference for working professionals.
Coverage includes
*
The WebSphere Application Server architecture: a detailed introduction for working administrators
*
Installation and configuration on both distributed and z/OS platforms, from planning through security
*
Assembling, deploying, and securing applications with the Application Assembly Tool and Assembly Toolkit
*
Managing WebSphere Application Server, including clustering and workload management
*
Automating administrative tasks using the powerful WebSphere scripting tools
*
Performance monitoring/tuning using both WebSphere- and system-level tools, including real-world tuning scenarios
*
A start-to-finish methodology for WebSphere troubleshooting
*
Covering z/OS, UNIX, Linux, and Windows platforms
*
Learn all you need to know from IBM's own WebSphere development and advanced deployment teams
*
Includes the latest most thorough coverage WebSphere V5.0/5.1
Copyright Pearson Education. All rights reserved.
CONTENTS:
Foreword.
Acknowledgments.
I. WEBSPHERE ENVIRONMENT OVERVIEW.
1. Introduction.
1.1: About This Book
1.2: Conventions Used in this Book
2. Compare and Contrast: WebSphere on z/OS and the Distributed Platforms.
Objectives
2.1: Supported Platforms
2.2: Differences between z/OS and the Distributed Operating Systems
2.3: z/OS Quality of Service Features
2.4: WebSphere on the Distributed Platforms and z/OS
2.5: Summary
3. WebSphere Architecture and Design.
Objectives
3.1: Introduction
3.2: Product Packaging
3.3: Network Deployment (ND) Architecture
3.3.1: Network Deployment and Base Core Concepts
3.3.2: Server Process
3.3.3: Node and Node Agent
3.3.4: Cell and Deployment Manager
3.4: WebSphere Components
3.4.1: Web Container
3.4.2: EJB Container
3.4.3: JCA Service
3.4.4: JTA/JTS Service
3.4.5: JDBC and Connection Pooling
3.4.6: JMS Service
3.4.7: Naming Service
3.4.8: Security Service
3.4.9: Administrative Service
3.4.10: Configuration Repository
3.4.11: Administrative Tools
3.4.12: Enterprise Applications
3.4.13: Web Services
3.4.14: JavaMail Service
3.4.15: Application Client Container
3.4.16: http Server Plug-in
3.4.17: Distributed Management Model
3.4.18: Clustering
3.5: ND Architectural Considerations for z/OS Platform
3.5.1: The Address Space
3.5.2: The Minimum
3.5.3: The Server
3.5.4: The Node
3.5.5: The Cell
3.5.6: The Cluster
3.6: Summary
4. WebSphere Topology: Distributed and z/OS.
Objectives
4.1: Overview
4.2: Choosing a Topology
4.2.1: Topology Planning Considerations
4.3: Topology Examples
4.3.1: Single Server Topology
4.4: Three-Tier Topology
4.5: MultiTier and MultiCell Topology (Gold Standard-99.999%)
4.6: Mixed Server Topology
4.7: Topology Planning for z/OS
4.7.1: The Configurations on z/OS
4.7.2: Monoplex
4.7.3: Single System with Every Tester Having Their Own Base Cell, Node, and Application Server
4.7.4: Single System, Single Base Cell, Single Node with Multiple Application Servers
4.7.5: Single System, Deployment Manager Cell, Any Combination of Node, Server, Cluster
4.7.6: The Deployment Manager Node (Also Called a Network Deployment Installation)
4.7.7: The Node Agent
4.7.8: Sysplex
4.7.9: Other Topology Considerations-Coexisting Installations
4.8: Summary
5. WebSphere Installation-Distributed.
Objectives
5.1: Overview
5.2: Installation Considerations
5.2.1: Administration
5.2.2: Security
5.2.3: Performance
5.2.4: Software Prerequisites
5.2.5: Hardware Prerequisites
5.3: Migrating to WebSphere V5.0
5.3.1: A Big Jump from WebSphere V3.5 to WebSphere V5.0
5.3.2: A Small Hop from WebSphere V4.0 to WebSphere V5
5.4: Installation of WebSphere Application Server V5
5.4.1: Installation with the Graphical Installer
5.4.2: Installation with the Silent Installer
5.5: WebSphere Installation on Linux Example
5.5.1: WebSphere Application Server Base Edition Installation
5.5.2: WebSphere Application Server Network Deployment Edition Installation
5.5.3: Additional Recommended Steps
5.5.4: Installing an Interim Fix and Fix Pack on WebSphere
5.6: Summary
6. WebSphere Installation-z/OS.
Objectives
6.1: Preinstallation Considerations
6.1.1: Administration
6.1.2: Security
6.1.3: Performance
6.1.4: Software Prerequisites
6.1.5: Hardware Prerequisites
6.1.6: Migrating to WebSphere 5.0
6.1.7: A Big Jump from WebSphere V3.5 to WebSphere V5.0
6.1.8: A Small Hop from WebSphere V4.01 to WebSphere V5.0
6.2: Installation
6.2.1: SMP/e Overview
6.3: The Customization Process
6.3.1: The ISPF Panels
6.3.2: Allocate Target Data Sets
6.3.3: Define WebSphere Variables
6.3.4: Generate Customization Jobs
6.3.5: Download the Directions to Your Workstation
6.3.6: Save Variables
6.3.7: Directions to Create a WebSphere V5.0 Base
6.3.8: Manual System Changes
6.3.9: Starting the Base Environment
6.4: Logging into the Base Administration Console
6.5: Deployment Manager Node
6.5.1: A Network Deployment Configuration
6.5.2: Allocate Target Data sets for the Deployment Manager Node
6.5.3: Jobs and Started Procedures That Make Configuration Changes
6.5.4: Start the Node Agent Server
6.5.5: Start the Application Server
6.5.6: Logging into the Network Deployment Administrative Console
6.6: Summary
7. Getting Started with WebSphere-An Overview.
Objectives
7.1: A Basic WebSphere System
7.1.1: First Steps
7.2: The Websphere Administrative Console
7.3: WebSphere Directory Structure on Distributed
7.4: WebSphere Directory Structure on z/OS
7.4.1: WebSphere Directory Structure in USS
7.4.2: WebSphere Directory Structure in MVS
7.5: Starting and Stopping WebSphere
7.6: Tools Installed with WebSphere
7.6.1: Tools for Installing and Upgrading
7.6.2: Tools for Assembling and Deploying Applications
7.6.3: Administration Tools
7.6.4: Tools for Monitoring and Tuning
7.6.5: Tools for Problem Determination
7.7: Summary
II. WEBSPHERE CONFIGURATION.
8. Configuring WebSphere Application Server.
Objectives
8.1: Creating and Configuring Application Servers
8.1.1: Creating an Application Server
8.1.2: Templates
8.1.3: Configuring Application Servers
8.1.4: ORB Service Configuration
8.1.5: Transaction Service
8.2: Creating and Configuring WebSphere Data Sources and JDBC Providers
8.2.1: WebSphere Data Sources (Version 4)
8.2.2: WebSphere Data Sources
8.2.3: Creating the Trade 3 JDBC Provider and Data Source
8.3: Configuring the WebSphere Environment
8.3.1: Configuring Virtual Hosts
8.3.2: Managing WebSphere Variables
8.4: Creating WebSphere Variables
8.5: Session Management
8.5.1: General Properties
8.5.2: Session Affinity
8.5.3: Session Persistence
8.5.4: Databases versus Memory-to-Memory Replication
8.6: Summary
9. The WebSphere Naming Service.
Objectives
9.1: Naming Service Architecture
9.1.1: Namespace Chapteritions
9.1.2: Bootstrap Ports
9.1.3: Bindings in the Distributed Namespace
9.2: Interoperability
9.2.1: Clients Running on Previous Versions of WebSphere
9.2.2: Non-WebSphere Clients
9.2.3: Accessing Older WebSphere Servers from Version 5 Clients
9.3: Administratively Configured Bindings
9.4: The dumpNameSpace Tool
9.4.1: Syntax
9.5: Summary
10. The Web Server Plug-in.
Objectives
10.1: An Overview of the Web Server Plug-in
10.2: Installing the Web Server Plug-in
10.2.1: Preinstall Preparation
10.2.2: Installation Steps
10.2.3: Verifying the Installation
10.3: Basic Plug-in Configuration
10.3.1: The Plug-in Configuration File
10.3.2: Servers and Clusters
10.3.3: Configuring Virtual Hosts
10.3.4: Configuring URIs
10.4: Advanced Plug-in Configuration
10.4.1: Editing the Configuration File
10.4.2: Understanding Routes
10.4.3: Customizing Load Balancing Settings
10.5: Securing Communication between the Plug-in and the Application Server
10.5.1: Creating Security Certificates with ikeyman
10.5.2: Creating a Secure Transport for the Web Container
10.5.3: Configuring the Plug-in to Use a Secure Transport
10.6: Tuning Plug-in Failover for Your Environment
10.6.1: About Plug-in Failover
10.6.2: Consideration for Multiprocessed Web Servers
10.7: WebServer Plug-in Logging and Tracing
10.7.1: The Plug-in Log File
10.8: Summary
11. The Java Message Service.
Objectives
11.1: Java Message Service
11.1.1: Queues
11.1.2: Topics
11.2: Overview WebSphere Application Server JMS Providers
11.2.1: The WebSphere JMS Provider
11.2.2: The WebSphere MQ JMS Provider
11.2.3: The Generic JMS Provider
11.2.4: JMS Web Services Support
11.3: JMS Topology-Base Installation versus Network Deployment
11.4: Managing a JMS Server
11.4.1: Configuring the Internal JMS Server
11.4.2: Configuring the Message Listener Service
11.4.3: Configuring Listener Ports
11.4.4: Configuring the Message Listener Service Thread Pool
11.4.5: Configuring a JMS Provider
11.4.6: Configuring WebSphere MQ JMS Provider
11.4.7: Generic JMS Provider
11.5: JMS Provider Security
11.5.1: JMS Security Overview
11.6: Installing WebSphere MQ
11.7: Migrating from WebSphere Embedded Messaging to WebSphere MQ
11.8: Tuning JMS
11.9: WebSphere MQ Connection Pooling
11.10: Troubleshooting Tips for JMS
11.10.1: Tools for Troubleshooting
11.11: Configuring JMS on z/OS
11.11.1: The ISPF Panels
11.12: Summary
12. Web Services-An Overview.
Objectives
12.1: Web Services Overview
12.2: Support for Web Services in WebSphere V5
12.3: Web Services Implementation in WebSphere
12.4: Installing Web Services Components in WebSphere
12.4.1: Install WebSphere Network Deployment with Web Services Option
12.4.2: Setup Access to UDDI Registry
12.4.3: Install Web Services Gateway
12.5: Installing a Web Services Application
12.5.1: Making the Application SOAP Enabled
12.5.2: Installing a SOAPenabled EAR file
12.5.3: Configuring Namespace URI and WSDL URI
12.5.4: Deploying Channels
12.5.5: Deploying Filters
12.5.6: Deploying UDDI References
12.5.7: Deploying Services to the Gateway
12.6: The Customization Process for the Web Services Technology on z/OS
12.6.1: The Web Services Gateway (V5.0.2 or Newer on z/OS)
12.7: Summary
13. WebSphere Security on the Distributed Platforms.
Objectives
13.1: Securing Your WebSphere Environment
13.2: WebSphere Global Security Components Overview
13.3: WebSphere Security Administration
13.3.1: Global Security
13.3.2: Configuring a User Registry
13.3.3: Configuring Authentication Mechanisms
13.3.4: Enabling Global Security
13.3.5: Configuring Secure Sockets Layer (SSL)
13.3.6: Configure the Authentication Protocol
13.3.7: Configuring Java Authentication and Authorization Service
13.3.8: Override Global Security Configurations at the Server Level
13.3.9: Performance Considerations
13.3.10: Security-Related Configuration Files
13.4: Operational Considerations
13.4.1: Run WebSphere Using a Non-root User on UNIX Systems
13.4.2: File Permissions
13.4.3: Administrative Roles
13.4.4: Naming and Security
13.5: Trace Specifications for Security
13.5.1: Enabling Server Trace
13.5.2: Enabling Client Trace
13.6: Summary
14. WebSphere Security on the z/OS Platform.
Objectives
14.1: Configure z/OS Security for WebSphere
14.2: Z/OS Security Concepts
14.2.1: System Authorization Facility (SAF)
14.2.2: Resource Access Control Facility (RACF)
14.2.3: Z/OS UNIX Security
14.2.4: Started Tasks and User ID
14.3: Walkthrough of a Sample RACF Job for Configuring Security for WebSphere
14.3.1: Users/groups and Started Tasks
14.3.2: Profiles to Protect WebSphere on z/OS Infrastructure
14.3.3: Additional Permissions Required by WebSphere on z/OS
14.3.4: Consolidate Users and Profits
14.3.5: SSL Setup
14.3.6: WebSphere 5.0.2
14.4: WebSphere on z/OS Security Administration
14.4.1: Local OS User Registry
14.4.2: Thread Identity and Synchronize to OS Thread
14.4.3: Use EJBROLE for Authorization
14.4.4: Use ICSF as Authentication Mechanism
14.4.5: Configure System SSL Repertoire
14.4.6: zSAS
14.5: Summary
III. ASSEMBLING AND DEPLOYING APPLICATIONS IN WEBSPHERE.
15. Assembling Applications in WebSphere.
Objectives
15.1: Introduction
15.2: J2EE Development Roles
15.2.1: J2EE Product Provider
15.2.2: Tool Provider
15.2.3: Application Component Provider
15.2.4: Application Assembler
15.2.5: Application Deployer
15.2.6: System Administrator
15.3: Application Assembly Considerations
15.4: What Is an EAR File?
15.5: Assembly Options
15.5.1: Application Assembly Tool
15.5.2: WebSphere Studio
15.5.3: Application Server Toolkit
15.5.4: Apache Ant
15.6: Packaging Considerations
15.6.1: Separating Static and Dynamic Web Content
15.6.2: IBM Extensions
15.6.3: J2EE References
15.6.4: Deploying Common Code
15.7: Configuring Application Security
15.8: J2EE 1.3 Application Assembly
15.8.1: Assembling an Application
15.8.2: Assembling Application Client Modules
15.8.3: Assembling Web Modules
15.8.4: Assembling EJB Modules
15.8.5: Putting It All Together-Assembling the Enterprise Archive (EAR)
15.9: Summary
16. Securing Applications in WebSphere.
Objectives
16.1: Securing Your Application
16.1.1: Declarative Security
16.1.2: Programmatic Security
16.1.3: Security and the Application Deployment Descriptor
16.1.4: Security Roles Used in This Chapter
16.2: Securing Web Applications
16.2.1: Configuring Web Module Security
16.2.2: Securing EJB Applications
16.2.3: Finalizing Your Application Security Configuration
16.2.4: Performance Considerations for Application Security
16.3: Summary
17. Deploying Applications in WebSphere.
Objectives
17.1: Planning for Application Deployment
17.1.1: Deployment Architecture
17.1.2: Checklist before Deploying Your Application
17.2: Deployment Tools
17.2.1: WebSphere Administrative Console
17.2.2: wsadmin
17.2.3: WebSphere Studio Application Developer
17.3: Installing an Application on WebSphere
17.3.1: Choosing a Module to Install
17.3.2: Generating Default Bindings
17.3.3: Install New Application
17.4: Postinstallation Deployment Options
17.4.1: Postinstallation Application Environment Setup
17.4.2: Testing the Application After Installation
17.4.3: Updating an Application
17.4.4: Uninstalling an Application
17.5: Summary
IV. WEBSPHERE MANAGEMENT.
18. Workload Management Overview: Distributed.
Objectives
18.1: Overview
18.2: Understanding Clusters and Workload Management
18.2.1: Types of Clusters
18.2.2: Advantages of Using Clusters
18.2.3: Disadvantages of Using Clusters
18.2.4: Understanding WebSphere Workload Management
18.2.5: Cluster and Cluster Member Administration
18.2.6: Cluster and Cluster Member Creation
18.2.7: Cluster Configuration
18.2.8: Cluster Runtime Controls
18.2.9: Cluster Tuning
18.2.10: Cluster Troubleshooting
18.3: EJB Workload Management Administration
18.3.1: EJB Workload Management Configuration
18.3.2: EJB Workload Management Tuning
18.3.3: EJB Workload Management Troubleshooting
18.4: Summary
19. Workload Management Overview: z/OS.
Objectives
19.1: Introduction
19.2: The Purpose of Workload Management on z/OS
19.3: How WebSphere Affects Your WLM Strategy
19.4: The Elements of a WLM Policy
19.4.1: Service Definition
19.4.2: Service Policies
19.4.3: Workloads
19.4.4: Service Classes
19.4.5: Resource Groups
19.4.6: Application Environments
19.4.7: Coefficient
19.4.8: Bringing It All Together
19.5: Summary
20. Automated WebSphere Administration.
Objectives
20.1: Overview
20.1.1: Why Should You Automate Your Environment?
20.1.2: Automation Capabilities of WebSphere V5
20.1.3: Installation Response Files
20.1.4: Creating an Installation Response File
20.1.5: Shell Scripts
20.1.6: Effectively Using Command Line Scripts
20.1.7: WebSphere Ant Tasks
20.1.8: Java Management eXtentions (JMX)
20.1.9: An Example JMX Client
20.1.10: Wsadmin
20.1.11: Some Wsadmin and WebSphere Interaction Details
20.2: Real World Solutions-Putting It All Together
20.3: Summary
V. WEBSPHERE PERFORMANCE.
21. Monitoring WebSphere Performance.
Objectives
21.1: What Should Be Monitored
21.1.1: Three View of the Environment
21.2: Performance Monitoring Technologies in WebSphere
21.2.1: Performance Monitoring Infrastructure
21.2.2: PMI Request Metrics
21.2.3: Java Virtual Machine Profiler Interface
21.3: How to Monitor
21.3.1: Introduction to Tivoli Performance Viewer
21.3.2: Monitoring the End User View
21.3.3: Monitoring the System View
21.3.4: Monitoring the Application View
21.4: Summary
22. WebSphere Performance Tuning.
Objectives
22.1: Introduction
22.2: Types of Performance Tuning
22.2.1: Application Tuning
22.3: WebSphere Performance Tuning
22.3.1: WebSphere System Queues
22.4: Tuning the Application Server
22.4.1: Hardware
22.4.2: Operating System TCP Settings
22.4.3: Java Virtual Machine (JVM)
22.4.4: Java Message Service (JMS)
22.4.5: WebSphere ORB
22.4.6: EJB Container
22.4.7: Web Container
22.4.8: Adjusting Web Container Thread Pool Settings
22.4.9: http Transport Custom Properties
22.4.10: Database Connection Pooling
22.5: Summary
23. WebSphere Performance Tuning-z/OS.
Objectives
23.1: Overview
23.1.1: Problem versus Perception and z/OS Resources
23.2: Repeatable Performance Scenarios
23.2.1: Test System
23.2.2: Test Tools
23.3: Relevance of z/OS and Subsystems
23.3.1: Transmission Control Protocol (TCP)
23.3.2: Unix Stem Services (USS)
23.3.3: Resource Recovery Services (RRS)
23.3.4: Cross-System Coupling Facility (XCF)
23.3.5: Workload Manager (WLM)
23.3.6: Miscellaneous Considerations
23.4: The Container
23.4.1: Topology
23.4.2: Run Time Settings in the Controller
23.5: The Java Virtual Machine (JVM)
23.5.1: Garbage Collection
23.5.2: Just In Time (JIT) Compiler
23.5.3: Java Tracing
23.5.4: Java Stack Traces
23.6: Administration and Monitoring
23.6.1: First, Read the Manual
23.6.2: RMF and WLM Overview
23.6.3: WebSphere and WLM Classification
23.6.4: DB2
23.6.5: DB2 Tracing
23.7: http Front-End Handlers for WebSphere
23.7.1: Browser/Workload Direct to Controller http/HTTPS Transport
23.7.2: z/OS IHS http/HTTPS Plug-in Forwarding
23.7.3: Distributed http/HTTPS Plug-in Forwarding
23.7.4: WebSphere Edge Components
23.7.5: Note About Sysplex Distributor
23.8: Cookbook Approach to Problem Resolution
23.8.1: Nonintrusive Procedures
23.8.2: Intrusive Procedures
23.9: Summary
VI. TROUBLESHOOTING WEBSPHERE.
24. WebSphere Problem Determination Tools-Logging and Tracing.
Objectives
24.1: WebSphere Log Files
24.1.1: JVM Logs
24.1.2: Process Logs
24.1.3: Service Logs
24.2: Enabling and Configuring Tracing
24.2.1: Configuring Tracing from the Administrative Console
24.2.2: Tracing via XML Configuration File
24.2.3: Tracing the WebSphere Plug-in
24.3: Understanding WebSphere Log and Trace Files
24.3.1: Basic and Advanced Formats
24.3.2: Interpreting Messages
24.4: Using Log Analyzer
24.4.1: Running Log Analyzer
24.4.2: Analyzing Records against the Symptoms Database
24.4.3: Merging Multiple Log and Trace Files
24.5: First Failure Data Capture
24.6: Summary
25. Problem Prevention and Determination Methodology.
Objectives
25.1: Problem Prevention Best Practices
25.1.1: Testing Best Practices
25.1.2: Change Control Best Practices
25.1.3: WebSphere Best Practices
25.1.4: WebSphere Fix Packs and Interim Fixes
25.2: Problem Determination Methodology
25.2.1: Locating the Error in a Complex Environment
25.2.2: Could the Error Be Valid?
25.2.3: What Has Changed?
25.2.4: Simplify, Simplify, Simplify
25.2.5: Do You Have Enough System Resources?
25.2.6: What to Do If the Problem Is in Production
25.2.7: Where to Go for Help
25.3: Working with IBM WebSphere Support
25.3.1: When to Involve WebSphere Support
25.3.2: How to Open a PMR
25.3.3: What Information to Have Ready
25.3.4: What to Expect
25.4: Summary
26. WebSphere Problem Determination and Troubleshooting for z/OS.
Objectives
26.1: Problem Determination on zSeries
26.1.1: Loss of Control
26.1.2: The Absolute Need for Cooperation
26.1.3: An Efficient Configuration Cannot Compensate for Poorly Performing Applications
26.1.4: Separation of Roles in J2EE
26.2: Where to Look for Valuable Clues
26.2.1: Places That Are Defaults from Customization
26.2.2: WebSphere Address Space Output
26.2.3: The WebSphere for z/OS Error Log
26.2.4: The z/OS System Console or SDSF.LOG
26.2.5: RACF
26.2.6: Timeline of Events
26.2.7: Places That Will Need to Be Configured
26.3: Tracing and Logging Differences on zSeries
26.3.1: Locating and Understanding WebSphere Logs
26.4: Summary
VII. APPENDICES.
Appendix A. Trade3 Application.
Appendix B. WebSphere Tooling Reference.
Appendix C. WebSphere Plug-in Definitions.
Appendix D. WebSphere Message Component Ids.
Appendix E. Custom Strategy Bindings File DTD.
Appendix F. Common z/OS Terms.
Appendix G. Comparison of Common Tasks on z/OS versus Distributed.
Appendix H. z/Linux Considerations.
Appendix I. Automated WebSphere Administration Examples.
Bibliography.
Index.
|