Running Websphere on system p and AIX.pdf - Front cover...

This preview shows page 1 out of 510 pages.

Unformatted text preview: Front cover Running IBM WebSphere Application Server on System p and AIX: Optimization and Best Practices System p and AIX configuration strategies for WebSphere Application Server How JVM runtime and WebSphere Application Server interact with AIX Implementation scenarios Lutz Werner Denefleh Anderson de Sousa Ribeiro Dias Simon Kapadia Monty Poppe Colin Renouf Kwan-Ming Wan ibm.com/redbooks International Technical Support Organization Running IBM WebSphere Application Server on System p and AIX: Optimizaton and Best Practices September 2008 SG24-7347-00 Note: Before using this information and the product it supports, read the information in “Notices” on page ix. First Edition September 2008 This edition applies to IBM WebSphere Application Server Version 6.1, IBM AIX Version 5.3, and IBM AIX Version 6.1. © 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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi The team that wrote this book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii Become a published author . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii Comments welcome. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiv Chapter 1. Introduction to running WebSphere Application Server on System p and AIX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1 The whole system view: WebSphere, JVM, AIX, and System p . . . . . . . . . 2 1.1.1 Points of view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1.2 A holistic system approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 System layers and points of view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2.1 Points of view and terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.3 The remainder of this book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Chapter 2. WebSphere on System p and AIX 5 strategies . . . . . . . . . . . . . 7 2.1 Scalability considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.1.1 Clustering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.1.2 Workload management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.2 Session persistence considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.3 File store considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.4 Install automation considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.4.1 Silent installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.4.2 Installation Factory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 2.5 JVM tuning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.5.1 Memory management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.5.2 CPU performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.6 Extended Deployment (XD) considerations . . . . . . . . . . . . . . . . . . . . . . . 24 2.6.1 Dynamic operations: WebSphere Virtual Enterprise . . . . . . . . . . . . . 24 2.6.2 Extended manageability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 2.6.3 High performance computing: WebSphere eXtreme Scale . . . . . . . 32 Chapter 3. System p platform configuration. . . . . . . . . . . . . . . . . . . . . . . . 37 3.1 Setting up System p hardware and partitions . . . . . . . . . . . . . . . . . . . . . . 38 3.1.1 Setting up and accessing the Hardware Management Console . . . . 38 3.1.2 Basic managed system operation . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 © Copyright IBM Corp. 2008. All rights reserved. iii 3.1.3 Basic partition operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 3.1.4 Advanced partition operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 3.1.5 Dynamic LPAR assignments and partition profiles . . . . . . . . . . . . . . 64 3.1.6 Virtual I/O Server virtualization configuration . . . . . . . . . . . . . . . . . . 65 3.2 Provisioning. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 3.2.1 Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 3.2.2 Provisioning at the operating system level . . . . . . . . . . . . . . . . . . . . 85 3.2.3 Accessing the CSM through WebSM . . . . . . . . . . . . . . . . . . . . . . . 103 3.2.4 Using provisioning at the hardware level . . . . . . . . . . . . . . . . . . . . 125 3.2.5 Using the provisioning features. . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 Chapter 4. AIX configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 4.1 Asynchronous I/O capabilities for sockets and files . . . . . . . . . . . . . . . . 128 4.2 AIX Release Content List package information. . . . . . . . . . . . . . . . . . . . 131 4.3 AIX base operating system samples . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 4.4 AIX-specific startup and runtime settings . . . . . . . . . . . . . . . . . . . . . . . . 133 4.5 AIX-specific Java environment settings. . . . . . . . . . . . . . . . . . . . . . . . . . 133 4.6 AIX TCP/IP network settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 4.7 WebSphere Server start and stop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 Chapter 5. WebSphere Application Server on AIX: under the hood. . . . 141 5.1 Java and J2EE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 5.1.1 Java. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 5.1.2 J2EE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 5.2 Application Server 6.1 on AIX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 5.2.1 WebSphere Application Server and the JMS Messaging Engine . . 147 5.2.2 Process structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 5.2.3 WebSphere Application Server on AIX - disk layout . . . . . . . . . . . . 151 5.2.4 Application server configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 5.2.5 Key server configuration files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 5.2.6 server.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 5.2.7 serverindex.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 5.2.8 security.xml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 5.3 IBM J9 Java Virtual Machine Architecture. . . . . . . . . . . . . . . . . . . . . . . . 189 5.3.1 Generic Java Virtual Machine overview . . . . . . . . . . . . . . . . . . . . . 189 5.3.2 IBM J9 JVM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 5.3.3 IBM J9 JVM internal implementation. . . . . . . . . . . . . . . . . . . . . . . . 211 5.4 WebSphere Application Server architecture . . . . . . . . . . . . . . . . . . . . . . 232 5.4.1 Overview of WebSphere Application Server architecture . . . . . . . . 233 5.4.2 Eclipse 3.1.2 and OSGI/Equinox Runtime . . . . . . . . . . . . . . . . . . . 239 5.4.3 WebSphere Application Server-specific JNI native shared object libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 5.4.4 WebSphere Application Server - startup and operation . . . . . . . . . 244 iv Running IBM WebSphere Application Server on System p and AIX: Optimizaton and Best Practices 5.5 WebSphere Application Server high availability deployments . . . . . . . . 276 5.5.1 WebSphere cluster and cell configuration. . . . . . . . . . . . . . . . . . . . 279 5.5.2 IBM HTTP Server and the IBM WebSphere Application Server plug-in 282 5.5.3 WebSphere Application Server clustering. . . . . . . . . . . . . . . . . . . . 289 5.5.4 WebSphere HAManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 5.5.5 WebSphere Application Server, WebSphere MQ Server and HACMP. 298 5.5.6 The WebSphere Application Server database tier . . . . . . . . . . . . . 299 5.5.7 WebSphere Application Server ND versus WebSphere Application Server XD on System p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 Chapter 6. Tuning the IBM Java Virtual Machine . . . . . . . . . . . . . . . . . . . 303 6.1 The importance of JVM tuning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304 6.1.1 Overview of JVM tuning capabilities . . . . . . . . . . . . . . . . . . . . . . . . 304 6.2 Choosing a garbage collection policy . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 6.2.1 Java memory management: garbage collection and allocation . . . 306 6.2.2 Optimal Throughput GC policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307 6.2.3 Optimal Average Pause GC policy . . . . . . . . . . . . . . . . . . . . . . . . . 310 6.2.4 Generational Concurrent GC policy . . . . . . . . . . . . . . . . . . . . . . . . 310 6.2.5 Subpool GC policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313 6.2.6 Additional runtime options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313 6.3 The large object area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314 6.4 Heap sizing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316 6.4.1 Analyzing verbose output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316 6.4.2 Determining initial heap size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 6.4.3 Determining maximum heap size . . . . . . . . . . . . . . . . . . . . . . . . . . 321 6.4.4 Expansion and contraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323 6.5 Using shared classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325 6.5.1 Creating multiple caches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326 6.5.2 Tuning the shared class cache size . . . . . . . . . . . . . . . . . . . . . . . . 327 6.6 Using large page sizes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329 6.6.1 Large page support in AIX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329 6.6.2 64 KB size for POWER5+ and later systems . . . . . . . . . . . . . . . . . 330 6.6.3 Java large page support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330 6.6.4 Changing page sizes in WebSphere Application Server. . . . . . . . . 330 6.7 Dynamic logical partitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 6.8 Just-in-Time compiler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334 Chapter 7. High availability, clustering and WebSphere . . . . . . . . . . . . . 335 7.1 Clustering WebSphere for availability . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 7.1.1 Availability considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 7.1.2 Clustering options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337 Contents v 7.2 WebSphere clustering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337 7.3 High availability on logical partitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339 7.3.1 Isolation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339 7.3.2 Ease of use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340 7.3.3 Redundancy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341 7.4 Disaster recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342 7.4.1 Environment configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343 7.4.2 Planning for disaster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345 7.4.3 Disaster event and recovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346 7.4.4 Process and procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347 7.5 HACMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348 7.5.1 HACMP, logical partitions and WebSphere . . . . . . . . . . . . . . . . . . 348 7.5.2 How HACMP works. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349 7.5.3 WebSphere HACMP configuration . . . . . . . . . . . . . . . . . . . . . . . . . 349 7.5.4 HACMP on DLPARs and shared CPU LPARs . . . . . . . . . . . . . . . . 353 7.6 Lifecycle management and upgrades . . . . . . . . . . . . . . . . . . . . . . . . . . . 354 7.6.1 The problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 7.6.2 The solution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 7.6.3 Unlimited hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356 Chapter 8. Clustering WebSphere Application Server for performance 361 8.1 Clustering for performance overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . 362 8.1.1 Clustering options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362 8.2 WebSphere clustering on micropartitions . . . . . . . . . . . . . . . . . . . . . . . . 362 8.2.1 Isolation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363 8.3 AIX Partition Load Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364 8.3.1 PLM capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364 8.3.2 AIX PLM configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 8.4 AIX Workload Management feature . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368 8.4.1 WLM capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368 8.4.2 Co-locating WebSphere applications . . . . . . . . . . . . . . . . . . . . . . . 369 8.4.3 AIX WLM configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369 8.4.4 Options for WebSphere service workload management . . . . . . . . . 373 8.5 Sharing the technologies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375 Chapter 9. AIX 5L and WebSphere XD. . . . . . . . . . . . . . . . . . . . . . . . . . . . 377 9.1 WebSphere XD and DLPAR integration. . . . . . . . . . . . . . . . . . . . . . . . . 378 9.1.1 Dynamic operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378 9.2 Dynamic reconfiguration manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380 9.2.1 Processor DR events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380 9.2.2 Memory DR events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381 9.3 Performance and scalability with DLPAR . . . . . . . . . . . . . . . . . . . . . . . . 381 9.3.1 WebSphere Partitioning Facility with DLPAR . . . . . . . . . . . . . . . . . 381 vi Running IBM WebSphere Application Server on System p and AIX: Optimizaton and Best Practices Chapter 10. Implementation scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385 10.1 Scenario overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386 10.1.1 Software products . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386 10.1.2 The sample WebSphere-related scenario. . . . . . . . . . . . . . . . . . . 388 10.2 Installation summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391 10.2.1 System description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392 10.3 Installing WebSphere Application Server . . . . . . . . . . . . . . . . . . . . . . . 393 10.3.1 Installing the WebSphere Application Server 6.1 Fix Pack 2 . . . . 397 10.4 Installing and configuring Trade 6.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 397 10.4.1 Trade 6.1 installation summary . . . . . . . . . . . . . . . . . . . . . . . . . . . 398 10.4.2 Download the Trade 6.1 installation package . . . . . . . . . . . . . . . . 399 10.4.3 Set up and configure the tradedb database . . . . . . . . . . . . . . . . . 399 10.4.4 Install Trade 6.1 using the installation script . . . . . . . . . . . . . . . . . 400 10.4.5 Working with Trade 6.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402 10.5 Performance testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405 10.5.1 General application performance testing requirement . . . . . . . . . 405 10.5.2 Scenario overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 406 10.5.3 IBM Rational Performance Tester . . . . . . . . . . . . . . . . . . . . . . . . . 407 10.5.4 Scenario testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415 Appendix A. Sample files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423 WebSphere: responsefile.nd.txt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424 Update Installer: response.txt. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452 WebSphere V6.1 Fix Pack 2: fp2.response.txt. . . . . . . . . . . . . . . . . . . . . . . . 455 Trade 6.1 Installation script: trade.jacl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456 CSM adapter definition file: p550q_lpar_adapters . . . . . . . . . . . . . . . . . . . . . 471 Appendix B. Additional material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473 Locating the Web material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473 Using the Web material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473 How to use the Web material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474 Related publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475 IBM Redbooks publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475 Other publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476 How to get IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477 Help from IBM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ....
View Full Document

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture