(Solaris)
Prepare Solaris systems for installation
Before installing IBM WebSphere Application Server products on Solaris operating systems, we must take steps to prepare the operating system.
The installation uses Installation Manager. We can use the graphical interface, the command line, or a response file.
Restriction: There are known issues with using Cygwin/X to run Eclipse-based applications on remote Solaris machines. This affects your use of the Profile Management Tool. With Cygwin/X on remote Solaris, for example, the Profile Management Tool welcome panel appears but no keyboard or mouse input is accepted. If a different X server (such as Hummingbird Exceed ) is used, these problems do not occur.
Tip: Installation Manager is based on the Eclipse Rich Client Platform architecture. This architecture requires specific graphical libraries and versions to work properly. Read Installation Manager graphical environment issues on Solaris, Linux, AIX for information about specific system requirements.
Important: On the Solaris platform, remote Installation Manager graphical user interface (GUI) processing is only supported with VNC because of problems with X servers.
Preparing the OS involves such changes as allocating disk space and installing patches to the operating system. IBM tests WAS products on each operating system platform. Such tests verify whether an operating system change is required for WAS products to run correctly. Without the required changes, WAS products do not run correctly.
Tasks
- Log on to the operating system.
We can log on as root or as a nonroot installer.
Select a umask that allows the owner to read/write to the files, and allows others to access them according to the prevailing system policy. For root, a umask of 022 is recommended. For nonroot users a umask of 002 or 022 can be used, depending on whether the users share the group. To verify the umask setting, issue the following command:
umaskTo set the umask setting to 022, issue the following command:
umask 022- Make sure that we select the Entire Group option on the Select Solaris Software Group panel when we set up the system.
- Optional: Download and install the Mozilla Firefox web browser.
- Optional: Export the location of the supported browser.
Export the location of the supported browser using a command that identifies the actual location of the browser.
If the Mozilla Firefox package is in the /opt/bin/firefox directory, for example.
export BROWSER=/opt/bin/firefox- Stop all Java processes related to WAS on the machine where we are installing the product.
- Stop any web server process such as the IBM HTTP Server.
- Provide adequate disk space.
The amount of disk space required varies with the number of features or products installed. If we are installing the product using Installation Manager, the installation summary panel indicates the approximate amount of disk space required based on the features and products we have selected.
Installing all features and products requires approximately 2 GB of disk space. This estimate includes the following products, components, and features:
- Main application server product installation
- Profiles
- Sample applications
- IBM HTTP Server
- Web Server Plug-ins
- Application Client for WAS
If we plan to migrate applications and the configuration from a previous version, verify that the application objects have enough disk space. As a rough guideline, plan for space equal to 110 percent of the size of the applications.
- Set kernel values to support Application Server. Several Solaris kernel values are typically too small.
Before installing, review the machine configuration:
sysdef -iThe kernel values are set in the /etc/project file.
The resource controls are set in the /etc/system project file. Resource controls are new for Solaris 11 and are replacing the use of some kernel values.
An example of some settings for kernel values and how they have changed are shown in the following example.
set semsys:seminfo_semmni = 1024 (a resource control in Solaris 11) set semsys:seminfo_semmns = 16384 (removed in Solaris 11) set semsys:seminfo_semmsl = 100 (a resource control in Solaris 11) set semsys:seminfo_semopm = 100 (a resource control in Solaris 11) set semsys:seminfo_semmnu = 2048 (removed in Solaris 11) set rlim_fd_cur=1024The Solaris 11 operating system uses the following resource controls to replace the /etc/system kernel values:
Old Old New New Resource control tunable default Max default Value ---------------------- ------------- ------- --------- ----- process.max-msg-qbytes msginfo_msgmnb 4096 ULONG_MAX 65536 process.max-msg-messages msginfo_msgtql 40 UINT_MAX 8192 process.max-sem-ops seminfo_semopm 10 INT_MAX 512 process.max-sem-nsems seminfo_semmsl 25 SHRT_MAX 512 project.max-shm-memory shminfo_shmmax 0x800000 UINT64_MAX 1/4* * (New default is 1/4 of physical memory) project.max-shm-ids shminfo_shmmni 100 2**24 128 project.max-msg-ids msginfo_msgmni 50 2**24 128 project.max-sem-ids seminfo_semmni 10 2**24 128The following tunables are now obsolete in the Solaris 11 operating system:
Shared Memory Semaphores Message-Queue -------------- -------------- --------------- shminfo_shmseg seminfo_semmns msginfo_msgmax shminfo_shmmin seminfo_semvmx msginfo_msgssz shminfo_shmmax* seminfo_semmnu msginfo_msgmni* shminfo_shmmni* seminfo_semaem msginfo_msgtql* seminfo_semume msginfo_msgmnb* seminfo_semusz msginfo_msgmap seminfo_semmap msginfo_msgseg seminfo_semmsl* seminfo_semopm* seminfo_semmni* values ending in * are technically obsolete, but if they are present in the /etc/system file then at system boot, the kernel will translate the values into global resource controls.The following are important resource controls:
*project.max-shm-ids: Maximum shared memory IDs for a project. Replaces shmmni *project.max-sem-ids: Maximum semaphore IDs for a project. Replaces semmni *project.max-msg-ids: Maximum message queue IDs for a project. Replaces msgmni *project.max-shm-memory: Total amount of shared memory allowed for a project. Replaces shmmax *process.max-sem-nsems: Maximum number of semaphores allowed persemaphore set. Replaces semmsl *process.max-sem-ops: Maximum number of semaphore operations allowed persemop. Replaces semopm *process.max-msg-qbytes: Maximum number of bytes of messages on a message queue. Replaces msgmnb *process.max-msg-messages: Maximum number of messages on a message queue. Replaces msgtqlFor specific recommendations for tuning Solaris to work with WAS, see the topic Tune Solaris systems.
We can change kernel values by editing the /etc/project file in Solaris 11 then rebooting the operating system. For more information about setting up the Solaris system, see the Sun Microsystems documentation. For example, the Solaris Tunable Parameters Reference Manual.
- Verify that prerequisites and corequisites are at the required release levels.
Although Installation Manager checks for prerequisite operating system patches, review the prerequisites on the Supported hardware and software website if we have not done so already. Refer to the documentation for non-IBM prerequisite and corequisite products to learn how to migrate to their supported versions.
If our Solaris system does not have sufficient available memory as specified on the supported hardware and software website, we might experience a prerequisite error during installation: "A supported operating system architecture was not detected". If we proceed to the end of the installation, we might also see the following insufficient disk space error:
java.io.IOException: Cannot run program "sh": error=12, Not enough space at java.lang.ProcessBuilder.start(ProcessBuilder.java:459) at java.lang.Runtime.exec(Runtime.java:593) at java.lang.Runtime.exec(Runtime.java:466)Free up additional memory on the machine and retry the installation.- Verify the system cp command when using emacs or other freeware.
If we have emacs or other freeware installed on the operating system, verify the system cp command is used.
- Type the following command prompt before running the installation program for the WAS product.
which cp- Remove the freeware directory from your PATH if the resulting directory output includes freeware. For example, assume that the output is similar to the following message: .../freeware/bin/cp. If so, remove the directory from the PATH.
- Install the WAS product.
- Add the freeware directory back to the PATH.
If we install with a cp command that is part of a freeware package, the installation might appear to complete successfully, but the Java 2 SDK that the product installs might have missing files in the app_server_root/java directory.
Missing files can destroy required symbolic links. If we remove the freeware cp command from the PATH, we can install the application server product successfully.
- Verify that the Java SDK on the installation image disk is functioning correctly if we created our own disk.
For example, we might have downloaded an installation image from Passport Advantage, or we might have copied an installation image onto a backup disk. In either case, perform the following steps to verify that the disk contains a valid Java SDK.
- Change directories to the /JDK/jre.pak/repository/package.java.jre/java/jre/bin directory on the product disk. For example:
cd /JDK/jre.pak/repository/package.java.jre/java/jre/bin- Verify the Java version. Type the following command:
./java -versionThe command completes successfully with no errors when the SDK is intact.
This procedure results in preparing the operating system for installing the product.
What to do next
After verifying prerequisites, verifying the product disk, and setting the installation goals, we can start installing. Using one of the following links to open the installation procedure that you require.
- Perform an installation using the graphical user interface.
See Install the product offerings on distributed operating systems using the GUI.
- Perform a silent installation.
See Install the product offerings using response files.
- Install additional features on an existing product.
After the installation, we can examine the following setup script for information concerning initial settings for Solaris 11.
echo "V2014-06-20" echo "master version -> https://rtpmsa.raleigh.ibm.com/msa/projects/t/testappbinaries/OS/ossetup.zip" echo "" # # ### check if the .txt file exists if [ ! -f "hostlist.txt" ]; then echo "-- hostlist.txt file does not exist. cp hostlist.txt.TEMPLATE hostlist.txt and add your hosts" echo "-- Processing halted" exit 1 fi for hostName in `cat hostlist.txt` do echo "checking: $hostName" ssh $hostName 'grep "ulimit -n 20000" /etc/profile' if [ $? != 0 ]; then ssh $hostName 'echo "ulimit -n 20000" >> /etc/profile' echo "set the ulimit on $hostName" fi ssh $hostName 'grep "semsys:seminfo_semopm = 200" /etc/system' if [ $? != 0 ]; then ssh $hostName 'echo "semsys:seminfo_semopm = 200" >> /etc/system' echo "set the seminfo_semopm on $hostName" fi ssh $hostName 'ipadm set-prop -p _conn_req_max_q=8000 tcp' ssh $hostName 'ipadm set-prop -p _time_wait_interval=30000 tcp' ssh $hostName 'ipadm set-prop -p _fin_wait_2_flush_interval=67500 tcp' ssh $hostName 'ipadm set-prop -p _keepalive_interval=300000 tcp' done
Prepare the operating system for product installation