Contained WithinFind More DocumentationFeatured Support Resources | Download this book in PDF (597 KB)
Chapter 1 Tuning Components in the OpenSSO Enterprise DeploymentThis chapter provides instructions for installing and using the amtune tool to tune OpenSSO Enterprise and related components. The following topics are contained in this chapter: About the amtune ToolThe OpenSSO Enterprise amtune tool enables you to tune the major components of your deployment. In previous versions of the product (known as Sun Java System Access Manager), a collection of amtune shell scripts was used to do the tunings. In OpenSSO Enterprise, the amtune tool is a Java application. Before you can use the amtune tool, the following conditions must be met:
The following table lists the components tuned by the amtunetool. Table 1–1 Components Tuned by the amtune Tool
The amtune tool relies on a list of DO NOT MODIFY parameters in the last section of the amtune-env.properties file. The parameters in that section are mainly for internal use by amtune. Do not modify the parameters in the DO NOT MODIFY list unless user tests show significant improvement in performance. Using a Password FileExecute amtune or amtune.bat with a file that contains passwords for the servers in your deployment. Use the following strings:
For sample entries, see the sample passwords file. The file amtune-samplepasswordfile is located in the directory: TOOLS_DIR\OPENSSO_URI\bin\amtune, where amtune/amtune.bat and amtune-env.properties are also located. On Solaris, Linux, and AIX, the password file must be inaccessible to non-owners and only readable by its owner . For example, you can change the permissions mode of the password file by running the following command: chmod 400 On Windows, amtune.bat does not check the permission on the password file. Tuning operating system parameters does not require a password file. Using amtune ModesYou can run the amtune tool in REVIEW mode (the default) or in CHANGE mode, as determined by the AMTUNE_MODE parameter in the amtune-env.properties file.
In either mode, the tool returns a list of tuning recommendations to the terminal window and to the following log file: <TOOLS_DIR>\<OPENSSO_URI>\logs\amtune-config.<timestamp>.log Any error messages due to missing or invalid data in the amtune-env.properties file are displayed in the terminal window and written to the following file: <TOOLS_DIR>\<OPENSSO_URI>\logs\amtune-errors. All other error messages triggered by underlying components such as OpenSSO Enterprise or Sun Web Server are also written to the amtune-errors file. Tuning the Operating SystemThe amtune tool tunes the operating system parameters only on Solaris and Linux. It does not tune the operating system parameters on AIX, Windows, MacOS or BSD variants. Linux OSTo tune for maximum performance on Linux systems, make tuning adjustments to the following items: For detailed information on tuning Linux operating system parameters, see the IBM Linux Performance and Tuning Guidelines. File DescriptorsYou might need to increase the number of file descriptors from the default. A higher number of file descriptors ensures that the server can open sockets under high load and not abort requests coming in from clients. Start by checking system limits for file descriptors with this command:
The current limit shown is 8192. To increase it to 65535, use the following command (as root): echo "65535" > /proc/sys/fs/file-max To make this value survive a system reboot, add it to /etc/sysctl.conf and specify the maximum number of open files permitted: fs.file-max = 65535 The parameter is not proc.sys.fs.file-max, as you might expect. To list the available parameters that can be modified using sysctl: sysctl -a To load new values from the sysctl.conf file: sysctl -p /etc/sysctl.conf To check and modify limits per shell, use the following command: ulimit -a The output will look something like this:
The open files and descriptors show a limit of 1024. To increase the limit to 65535 for all users, edit /etc/security/limits.conf as root, and modify or add the nofile setting (number of file) entries:
The asterisk (*) is a wildcard that identifies all users. You can also specify a user ID instead. Then edit /etc/pam.d/login and add the line: session required /lib/security/pam_limits.so On Red Hat Linux, edit /etc/pam.d/sshdand add the following line: session required /lib/security/pam_limits.so On many systems, this procedure will be sufficient. Log in as a regular user and try it before performing the remaining steps. The remaining steps might not be required, depending on how pluggable authentication modules (PAM) and secure shell (SSH) are configured. Virtual MemoryOpenSSO 8 supports only Linux kernel 2. 6 systems such as Red Hat Enterprise Linux 4 and 5, and Ubuntu 8.0.4. For more information, see "Chapter 4: Tuning the VM” in the documenthttp://people.redhat.com/nhorman/papers/rhel4_vm.pdf. To ensure that the network interface is operating in full duplex mode, add the following entry into /etc/rc.local: mii-tool -F 100baseTx-FD eth0 where eth0 is the name of the network interface card (NIC). Disk I/O SettingsTo tune disk I/O performance for a non-SCSI disk, follow these steps:
TCP/IP SettingsTo tune the TCP/IP settings, follow these steps:
Tuning JVM Heap SizesThe amtune tool restarts the server to check its JVM mode and to determine how much heap size is available for setting OpenSSO cache and session entries. For other web containers, the amtune tool supports only 32-bit JVM. For other web containers, $WEB_CONTAINER and $CONTAINER_INSTANCE_DIR values are not required. Although the amtune tool does not tune non-Sun web containers, it will tune OpenSSO parameters if $AMTUNE _TUNE_OPENSSO is set to true. By default, the amtune tool runs based on the assumption that the following amount of memory (megabytes) is available for tuning OpenSSO when the web container (both Sun and non-Sun) is running with 32-bit JVM:
The amtune tool also tunes OpenSSO Enterprise when it is deployed on WebSphere 6.1 and AIX, although it does not tune AIX system parameters or WebSphere container parameters. For 64-bit JVM, amtune limits the initial heap size (-Xms) to 12 GB for Web Server 7 and Application Server 9.1/GlassFish v2, although it can be increased manually to a bigger heap size, if the Solaris operating system has at least twice as much virtual memory (swap space) as the desired initial JVM heap size. There is no limit for the maximum heap size (-Xmx). Using 64–bit JVM, the user session cache size, number of sessions, and number of SDK cache entries are calculated by amtune. The results can be many times more than those calculated for 32–bit JVM, depending upon available memory. Be sure to review these numbers and determine whether or not they are apropriate. Tuning Third-Party ContainersFor 32-bit Sun JVM on Solaris 10 (both Sparc and x86), the following JVM options can be used as an example. The actual heap sizes should be adjusted based on the available physical memory, other processes running and the presence of any other active web applications running in the same JVM as OpenSSO.
For more information on JVM tuning and use of 64-bit JVM, please go to Java Performance Portal: http://java.sun.com/javase/technologies/performance.jsp. For WebLogic Application Servers, increase the MaxPermSize from the default value of 128m to 256m in setDomainEnv.sh as shown below:
Otherwise, WebLogic Server may not start up with OpenSSO 8 deployed. Using the amtune Tool
|
|||||||||||||||||