WA1221 WebSphere Application Server v5.1 Administration on Linux Training Course Outline

1. Introduction to IBM WebSphere

  • WebSphere v5.1 Administration, Network Deployment Edition
  • The Typical Network Architecture of Java Enterprise Applications
  • The Infrastructure for Java Enterprise Applications
  • Sun J2EE Blueprint
  • Java Servlets
  • JavaServer Pages (JSP)
  • Enterprise JavaBeans (EJB)
  • EJB
  • Java Database Connectivity (JDBC)
  • JDBC Architecture
  • JDBC Connection Pooling
  • EJBs use JDBC
  • An Example
  • J2EE Software Packaging
  • Enterprise Archive (EAR)
  • Web Modules and WAR
  • EJB Modules
  • Deployment Descriptor
  • Deployment Descriptors
  • Enterprise Application DD
  • EJB Module DD
  • Web Module DD
  • WebSphere v5.1 Administration, Network Deployment Edition
  • WebSphere Family
  • WebSphere Application Server Product Packaging
 

2. Installation

  • Installable Components
  • Common Topology Choices
  • Example Production System Topology
  • Do You Need a Web Server?
  • Preparing the Machine
  • Installing the Web Server
  • Installing IBM HTTP Server
  • IBM HTTP Server Installation
  • Installing WebSphere Application Server
  • Installation Verification
  • Installing Network Deployment
  • Installation Verification
  • Troubleshooting
  • Co-existence Mode Installation
  • Silent Installation - When to use
  • Installing WAS Base – Silent Mode
  • Silent Install - Response File
  • Silent Install
  • Network Deployment – Silent Install
  • Applying Fixes
  • Downloading a Fix Pack
  • Applying Fix Pack
 

3. Architecture Details

  • Introduction
  • Base vs. Network Deployment
  • Application Server
  • Node
  • Cell
  • A Typical Cell
  • Configuration Repository
  • Administration Service
  • Cluster
  • Web Container
  • Web Request Processing
  • Plugin Configuration
  • Virtual Host
  • Managed Process
  • Basics
  • Key Possibilities
  • Coexistence Scenarios
  • Common Topologies
  • All in One
  • Vertical Scaling
  • Server Separation
  • Multi-tier
  • Horizontal Scaling
  • Web Server Horizontal Scaling
  • Multiple Instances
  • Multiple Cell
  • Process Discovery
 

4. Basic Administration

  • Topics
  • Administration Mechanism
  • Administration Roles
  • Administration Roles…
  • Administration Clients
  • A Look at the Console
  • Creating an Application Server
  • Managing an Application Server
  • Enable Server Process Restart
  • Sample inittab contents
  • Basic Application Server Configuration
  • Configure HTTP Transport
  • Configure JVM
  • Preparing to Host Applications
  • Resource Scope and Variables
  • Configure a Virtual Host
  • Configure a Web Container
  • Configure Session Management
  • Configure an EJB Container
  • Configure a JDBC Provider
  • Select JDBC Provider Type
  • JDBC Provider Options
  • Data Source
  • WebSphere V5 Data Source
  • Creating a Data Source
  • Configure a Data Source
  • Mail Providers
  • What is the Plugin?
  • What is the Plugin Configuration?
  • Generating the Plugin Configuration
  • Use the Plugin Configuration
  • View the Plugin Configuration
  • The Plugin
  • Summary
 

5. Application Deployment

  • Topics
  • What is Application Assembly?
  • J2EE Modules
  • J2EE Application Assembly
  • Web Module
  • Configuring Web Applications
  • EJB Modules
  • Enterprise Application Modules
  • Application Server Toolkit
  • Import the EAR First
  • Application Server Toolkit
  • The J2EE Perspective
  • Edit application.xml
  • Web Modules
  • WebSphere Extensions
  • EJB Modules
  • Class Loader
  • Class Loader Hierarchy
  • WebSphere Class Loaders
  • WebSphere Class Loaders Hierarchy
  • Class Loading Isolation Options
  • Complete Isolation
  • Medium Isolation
  • Minimal Isolation
  • Which option to use?
  • Configuring the Class Loading Policy
  • Configuring Application Server Policy
  • Configuring Applications WAR Class Loader Policy
  • Configuring the Options
  • Customizing Delegation Order
  • Launching the Administrative Console
  • The Administrative Console
  • Installing an Enterprise Application into WebSphere Application Server
  • Installing an Enterprise Application into WebSphere Application Server…
  • Saving the Master Configuration
  • Configuring the Web Server plugin
  • WebSphere Applications on the file system
  • Application “topology”
  • Application Properties
  • Virtual Host Mapping
  • EJB References/JNDI Names
  • JNDI Names for EJBs
  • Data Source for each CMP EJB
  • Default Data Source
  • Other EJB Module Properties
  • Other Web Module Properties
  • Export an Application
  • Export DDL for entity EJBs
  • Administering Applications – Remove Applications
  • Updating Applications
  • Summary
 

6. Security

  • Topics
  • Security Functionality
  • What Can You Secure?
  • Challenge Mechanism
  • Basic Challenge
  • Client Certificates
  • Form-based Authentication
  • Form-based Authentication WebSphere
  • User Registry
  • Authentication Mechanism
  • SWAM Authentication Mechanism
  • LTPA Authentication Mechanism
  • J2EE Authorization Model
  • WebSphere Authorization Model
  • Protecting Web Resources
  • Protecting EJB Methods
  • EJB Delegation Policies
  • Delegation Scenario
  • Setting WebSphere Security
  • Configure Global Security
  • Standalone Application Server
  • Network Deployment
  • Enable Global Security
  • Configure LTPA Authentication Mechanism
  • Configure Local OS Registry
  • Configure the LDAP User Registry
  • Assign Administrative Rights
  • Protect the Application First
  • Extra Installation Steps
  • Map Security Roles to Users/Groups
  • Select Users for a Security Role
  • Run-As
  • Unprotected Methods
  • Single Sign-On(SSO)
  • Single Sign On (SSO)
  • Single Sign On (cont.)
  • Configuring SSO
  • WebSphere SSL Configuration
  • SSL Configuration Repertoire
  • SSL Repertoires
  • Creating an SSL Repertoire
  • Dummy Certificates
  • Key File
  • Trust File
  • Default Key Stores
  • Obtaining a Certificate
  • Generate a Self-Signed Certificate
  • Getting a CA Signed Certificate
  • Specify the Key Store
  • Different SSL Interactions
  • Web Client to Web Server
  • Enable SSL For IBM HTTP Server
  • Web server to WebSphere
  • Web server to WebSphere (cont.)
  • Java Client to WebSphere
  • Summary
 

7. Advanced Administration

  • Topics
  • Configuration Architecture
  • Configuration File Structure
  • Configuration File Structure…
  • Standalone Application Server
  • Deployment Manager
  • Application Server participating in a Cell
  • Cell Descriptor
  • Virtual Hosts Descriptor
  • Cluster Descriptor
  • Other Important Files
  • Other Important Files…
  • Application Files
  • Application Server v. Network Deployment Repositories
  • Distributed Configuration
  • Concepts
  • JMX
  • WebSphere uses JMX
  • Layered JMX Architecture
  • Distributed Administration
  • JMX means customized administration
  • Advantages
  • Location of Tools
  • backupConfig, restoreConfig
  • wsinstance
  • GenPluginCfg
  • Overview
  • Central Scripting Objects
  • Launching wsadmin
  • JACL
  • Scripting Patterns
  • JCL Grammar
  • Accessing Command Line Options
  • JCL Grammar
  • Getting Help
  • JCL Grammar
  • Examples
  • Example Script
  • Common Tasks for Applications
  • Common Tasks for Applications…
  • Common Configuration Tasks
  • Installing an Application
  • What next?
  • Summary
 

8. Application Tracing and Troubleshooting

  • Topics
  • Resources for Problem Determination
  • Access Log
  • Error Log
  • Start Up Error
  • The JRAS Toolkit
  • JRAS Log Types
  • Common Log Format
  • Example WebSphere Log Using JRAS
  • Understanding Java Stack Trace
  • Application Server Logs
  • Service Logs
  • Native Log
  • Web Server Plug-in Log
  • WebSphere Log Files
  • Server Log Files
  • Can’t Keep Them Straight?
  • Application Tracing
  • Application Tracing…
  • Tools for Tuning and Troubleshooting
  • Tools for Tuning and Troubleshooting…
  • Collector
  • Running Collector
  • Information Collected
  • FFDC
  • dumpNameSpace
  • HTTP Sessions Errors
  • IBMTrackerDebug Output
  • Installation Information
  • Java Stack Dump
  • Thread Analyzer
  • Configure Application Server Traces
  • Select the Log or Trace
  • Diagnostic Trace Options
  • Trace Specification
  • Runtime Trace Options
  • Configuring JVM Logs
  • Native Logs
  • Activity Log
  • Viewing Transactions
  • Log Analyzer
  • Launching Log Analyzer
  • Use Log Analyzer
  • Log Analyzer Interface
  • Preferences
  • Log Type and Sorting
  • Adjust Log Analyzer Settings – Set Log Record Format
  • UOW Format
  • Activity Record Format
  • Merge Logs
  • Merge Logs…
  • Update Symptom Database
  • Overview
  • Debugging Service
  • WebSphere Studio
  • Summary
 

9. Foundation

  • Objectives
  • List of Terms
  • Load
  • Active Load
  • Concurrent Load
  • Peak Load
  • Throughput
  • Throughput Curve
  • The significance of throughput
  • Response time
  • Response Time Curve
  • Think time
  • User Ramp Up
  • Saturation
  • Response time at system saturation
  • Response time past the buckle point
  • Interpreting response time trends
  • Interpreting response time trends…
  • Performance Acceptance Criteria
  • Measure your system’s steady state
  • Path length
  • Bottleneck
  • Dealing with a bottleneck
  • Scaling
  • Horizontal and vertical scaling
  • Analyze before trying to scale
  • Calculating QA User Count
  • Accommodating QA User Count
  • Scaling Up QA Configuration
  • Bottom Up and Top Down
  • Bottom Up Testing
 

10. WebSphere Queuing Network

  • Topics
  • The WebSphere Queuing Network
  • Basic Tuning Principle
  • Terms
  • Open/Closed Queues in WebSphere
  • Queue Parameter List
  • IBM HTTP Server
  • Configuring MaxClients or ThreadsPerChild
  • UNIX Process Control
  • Backlog Queue
  • Keep Alive Settings
  • Web Container Queue
  • Web Container Thread
  • Configure the Web Container Thread Pool
  • HTTP Transport Properties
  • HTTP Transport Prpoerties (cont.)
  • Configuring HTTP Transport Properties
  • Example: Configuring MaxKeepAliveConnections
  • Taking Advantage of Backlog
  • EJB Method Call Queue
  • Setting the ORB Queue Values
  • Data Source Queue
  • Prepared statements and caching
  • Configuring Data Source
  • Configuring Connection Pool Size
  • Summary
 

11. Performance Data Gathering

  • Problem Determination v.s. Performance Tuning
  • What May Affect the WebSphere Performance
  • Performance Monitoring and Tuning in WebSphere
  • Performance Monitoring Infrastructure (PMI)
  • How PMI Works
  • PMI Performance Data
  • PMI Metrics – Thread Pools
  • PMI Metrics – Web Application
  • PMI Metrics - Transaction
  • PMI Metrics - EJB
  • PMI Metrics – Data Source
  • PMI Metrics – Memory Usage
  • PMI Metrics – HTTP Session
  • Rating the Impact of Performance Monitoring
  • JVMPI Monitoring
  • JVMPI Metrics
  • Tivoli Performance Viewer
  • Tasks
  • Enable Performance Monitoring
  • Enabling JVMPI data reporting
  • Launching Tivoli Performance Viewer
  • Please Note…
  • One More Thing…
  • When Security is Enabled
  • Select Performance Data
  • Select Performance Categories
  • Configure Monitoring Settings
  • Setting the Instrumentation Level
  • Tasks to Displaying Performance Data
  • Collect Performance Data
  • Specify Log File
  • Viewing Performance Data
  • Viewing Performance Chart
  • Storing and Replaying Data from a Log File
  • Changing Display Options
  • The PMI Servlet
  • The PMI Servlet (cont…)
  • Metric Tags
  • Monitor IBM HTTP Server
  • Monitor IBM HTTP Server…
  • IBM HTTP Server status
 

12. Optimizing JVM Memory Usage

  • What is this chapter about?
  • Performance Considerations
  • Performance Concerns
  • The Heap
  • The Heap (cont.)
  • Heap Limit
  • Default Initial Heap Size
  • Heap Top
  • Default Maximum Heap Size
  • Configure the heap in WebSphere
  • Allocation Failure
  • Garbage Collection
  • Heap Regions – IBM JDK
  • Heap Regions – Sun JDK
  • Enable verbose garbage collection
  • Analyzing Verbose GC - IBM
  • Analyzing Verbose GC - Sun
  • Thread Local Heap (TLH)
  • Memory Tuning Goals
  • Effect of Initial Heap Size
  • Tuning the Startup Speed
  • Steady State Heap Size
  • Controlling the GC Timings
  • Solaris Threading Model
 

13. Performance Tuning Techniques

  • Topics
  • Basic Methodology
  • Problem Areas
  • CPU utilization
  • The components of CPU usage
  • Measure CPU utilization everywhere
  • Symptoms of underutilization
  • What causes underutilization?
  • Network capacity problem?
  • Synchronization problem?
  • Slow external resource?
  • Is the test pushing the system hard enough?
  • Does your system scale?
  • Symptoms of burstiness
  • Infrequent synchronization problem?
  • Test driver synchronization problem?
  • Slow back-end systems?
  • Slow garbage collection?
  • Timeout problems?
  • Erratic network traffic?
  • Symptoms of over utilization
  • High User CPU
  • High System CPU
  • High Wait CPU
  • Server hanging
  • Thread dump in WebSphere v5
  • Analyzing a Thread Dump
  • Uneven cluster loading
  • Load balancer configured correctly?
  • Plan of attack
  • Tuning the WebSphere Queuing Network
  • Tuning Static Content
  • Recall: Basic Tuning Principle
  • EJB instance cache size
  • Disable Web Application Auto Reload
  • Enable Pass By Reference
  • Relax Transaction Isolation Level
  • Optimize Access Intent
  • Cache JNDI Objects
  • Database Connection Handling
  • Prepared Statement Caching
  • Tuning the Prepared Statement Cache
  • Prepared Statement Caching by DB2
  • Overview
  • Logs
  • Separate DB2 log files from the physical database
  • Configuration Advisor
  • Launch Configuration Advisor
  • DB2/Linux communication
  • MaxAppls
  • MaxAgents
  • Buffer Pool Tuning
  • Configuring buffpage
  • Evaluating the buffer pool size
  • Monitoring the database buffer pool
  • Query optimization level
  • Configuring query optimization level
  • reorgchk
  • MinCommit
  • Determining the need to change MinCommit
  • Guide Lines
  • Session Affinity
  • Session Cache
  • Configuring Session Management
  • Tuning Session Database I/O
  • Calculating Average Session Size
  • Tuning Session Database I/O – DB2 Specific Notes
 

14. Web Services

  • Topics
  • What are Web Services
  • What are Web Services…
  • Why Do We Need Web Services?
  • Business Motivation for Web Services
  • Technical Motivation for Web Services
  • Technologies for Implementing Web Service Functionality
  • Web Services Communication
  • Web Services Invocation
  • Web Services Integration
  • How Web Services Work
  • What is SOAP ?
  • What Does SOAP Define ?
  • Request and Response
  • SOAP HTTP Request Example
  • SOAP HTTP Response Example
  • UDDI
  • Service Discovery
  • Web Service Description
  • Elements of a WSDL Document
  • WSDL Example
  • Accessing SOAP Web Services from Client Applications
  • Using Web Services in WebSphere
  • Web Services in WebSphere Application Server
  • Overview
  • Architecture
  • WSIF Provider
  • WSIF Operation
  • WSIF Service
  • WSDL Document
  • Managing the WSIF package
  • wsif.properties
  • Managing wsif.properties
  • WSIF and Security Managers
  • Changes to Java 2 Security Policy
  • Overview
  • Objects to Administer
  • Objects to Administer…
  • Installing the Gateway
  • The Gateway Administrative Console
  • Deploy new Channel
  • Deploy new Filter
  • Deploy new UDDI Reference
  • Deploy new Web Service
  • Security
  • Gateway-level Authentication
  • Operation-level Authorization
  • Considerations
  • Overview
  • Install Scripts
  • Install into Deployment Manager
  • The UDDI User Console
  • Quick Publish
  • Publish a Web Service
  • Explore the Registry
  • Summary
 

15. Administering JMS

  • Topics
  • The Trouble with RMI/IIOP
  • Messaging to the Rescue
  • Messaging Features
  • Message-Oriented Middleware
  • Messaging Domains
  • Publish/Subscribe
  • Point-to-Point
  • Java Messaging Service
  • The JMS Interfaces
  • Integrating JMS and EJB
  • Durable Subscription
  • Deployment Descriptor Entry
  • Binding the Queue or Topic
  • Transactions
  • Security
  • Load Balancing
  • Clustering and Topics
  • Clustering and Queues
  • Guaranteed Delivery
  • Poison Messages
  • How the System Administrator Can Avoid Poison Messages
  • JMS Provider
  • Create a JMS Provider
  • JMS Provider Properties
  • JMS Provider Additional Properties
  • JMS Resources
  • Create Queue Connection Factory
  • Create Queue Destination
  • Create Topic Connection Factory
  • Create Topic Destination
  • JMS Servers
  • JMS Server Properties
  • Enabling Security
  • Configure JMS Resource Authorization
  • Create “queue admins”
  • Define default queue permissions
  • Define specific queue permissions
  • Define queue permissions for everyone else
  • Define specific topic permissions
  • Define default topic permissions
  • Deploying a JMS-enabled Application
  • Create a JMS Listener Port
  • Create a JMS Listener Port…
  • Summary
 

16. Workload Management

  • Topics
  • What is Workload Management?
  • Different Kinds of WLM
  • Benefits of WLM
  • Benefits of WLM…
  • Deployment Manager WLM
  • Web Server WLM
  • Plugin WLM
  • EJS WLM
  • Server State and WLM
  • Stateless Operations
  • Stateful Operations
  • Vertical Scaling
  • Horizontal Scaling
  • Heterogeneous Scaling
  • Points of Failure
  • Dispatcher
  • Cell
  • Single Machine
  • Separate HTTP Server
  • How to separate the HTTP server
  • Installing Components
  • Configure Web Server
  • Common Problems
  • Separate Database Server
  • How to separate the database server
  • Separating the database server: DB2
  • Separating the database server: Oracle
  • Separating the J2EE Containers
  • Multiple Cells
  • One cell or two?
  • Cluster
  • Network Deployment – Pre-installation
  • Network Deployment – Coexistence with WAS-Base
  • Centralized Administration
  • Deployment Manager
  • Cell
  • Nodes
  • addNode Command
  • addNode - Steps
  • Start/Stop a Node
  • removeNode Command
  • RemoveNode Command
  • syncNode
  • cleanupNode
  • Synchronization
  • Configuring Synchronization
  • Synchronization Options
  • Clusters
  • Create a Cluster
  • Add Clustered Servers
  • Server Weight
  • Cluster Summary
  • Cluster Members
  • Start/Stop Cluster
  • Start or Ripplestart?
  • Cluster Topology
  • Prefer Local
  • Replication
  • Tasks
  • Internal Replication Domains
  • Create a Replication Domain
  • Create a Replicator Entry
  • Replicator Security
  • Regenerate Encryption Key
  • Separating the Web Server
  • Separating the Web Server…
  • Install the Web Server Plugin
  • Copy the Web Server Plugin Configuration
  • Establish Firewalls
  • Web Server Plugin and Workload Management
  • Root Configuration Element
  • DNS Failures
  • Config Overview
  • The Plugin Log
  • Virtual Host Groups
  • Virtual Host Groups…
  • Server Clusters
  • Server Clusters…
  • ServerCluster
  • ServerCluster…
  • Server
  • Server…
  • Primary and Backup Servers
  • Primary and Backup Servers…
  • URI Groups
  • Routes
  • Example Route
  • Route Configuration
  • Route
  • Route…
  • Enabling EJB Workload Management
  • Stateless Session Beans
  • Stateful Session Beans
  • Entity Beans
  • Entity Beans…
  • Entity Bean Caching Options
  • Entity Bean Caching Options…
  • EJB Clients
  • JNDI Workload Management
  • JNDI Workload Management…
  • EJB Server Selection
  • EJB Server Selection…
  • EJB Failover
  • WebSphere Edge Components
  • HTTP Session
  • Session Affinity - WAS
  • Session Affinity
  • Persistent Session Management
  • Persistent Session Management - Continued
  • Configuring Session Persistence
  • Session Persistence Data Source
  • WebSphere Internal Messaging
  • Memory-to-Memory Replication
  • Tuning Session Cache
  • Summary
 

17. Introduction to Migration

  • Introduction
  • Basic Concepts
  • What to Migrate?
  • Common Migration Goals
  • Overview of v3.5 to v5 Migration
  • v3.5 to v5
  • Overview of V4 to V5 Migration
  • Migration Plan
 

18. Migrating the System Configuration and Runtime

  • Objectives
  • Goals
  • Mapping System Configuration
  • Sample Mapping
  • Prepare the Domain
  • Prepare the Application
  • Install Application
  • Automated Migration
  • The WASPreUpgrade Tool
  • The WASPostUpgrade Tool
  • DB2 Migration
  • DB2 Migration Steps
  • Server Coexistence
  • Server Coexistence (cont.)
 

Appendix A. LDAP Security

  • LDAP Security Basics
  • LDAP Data Structure
  • Example
  • Distinguished Name (DN)
  • DN and RDN Example
  • Searching
  • Creating a User in Active Directory
  • Configure WebSphere with Active Directory
  • WebSphere and Active Directory…
 

Appendix B. Naming

  • Name Service Basics
  • Basics…
  • EJB Name
  • Which Server to Lookup From?
  • Looking Up an EJB
  • Looking Up an EJB…
  • Provider URL Details
  • EJB Resource Reference
  • Now The Problems
  • Persistent Namespace Binding
  • Persistent Namespace Binding…
  • Looking Up EJB Using Persistent Namespace Entry