Running IBM Websphere Application Server on System P and AIX: Optimization and Best Practices
Total Page:16
File Type:pdf, Size:1020Kb
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 . ..