+

Search Tips   |   Advanced Search

(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

  1. 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:

    umask
    

    To set the umask setting to 022, issue the following command:

    umask 022
    

  2. Make sure that we select the Entire Group option on the Select Solaris Software Group panel when we set up the system.

  3. Optional: Download and install the Mozilla Firefox web browser.

  4. 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
    

  5. Stop all Java processes related to WAS on the machine where we are installing the product.

  6. Stop any web server process such as the IBM HTTP Server.

  7. 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:

    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.

  8. Set kernel values to support Application Server. Several Solaris kernel values are typically too small.

    Before installing, review the machine configuration:

    sysdef -i
    

    The 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=1024
    

    The 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       128 
    

    The 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 msgtql 
    

    For 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.

  9. 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.

  10. 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.

    1. Type the following command prompt before running the installation program for the WAS product.
      which cp
      

    2. 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.

    3. Install the WAS product.

    4. 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.

  11. 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.

    1. 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
      

    2. Verify the Java version. Type the following command:
      ./java -version
      

      The 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.

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