WA1207 WebSphere V5.1 Administration 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
- Deployment Descriptor
- Deployment Descriptors
- J2EE Application DD
- EJB Module DD
- Web Module DD
- Enterprise Archive (EAR)
- Web Modules and WAR
- EJB Modules
- 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
|
| |
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
|
| |