Before You Begin
This procedure assumes that you installed the data service packages during your initial Oracle Solaris Cluster installation.
If you did not install the HA for Apache Tomcat packages as part of your initial Oracle Solaris Cluster installation, go to Installing the HA for Apache Tomcat Package.
# cd /opt/SUNWsctomcat/bin # cp pfile desired-place
Repeat this Step for every Apache Tomcat instance and every node you need.
For example:
#!/usr/bin/ksh # # Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved. # #ident "@(#)pfile.ksh 1.6 01/03/12" # Set the Apache Tomcat specific environment variables which the start, # stop and check functions will use # # EnvScript Script to set runtime environment for tomcat # User Apache Tomcat user name # Basepath Absolute pathname to Tomcat Home directory i.e. 5.x or 6.x CATALINA_HOME # Host Hostname to test Apache Tomcat # Port Port where Apache Tomcat is configured # TestCmd Apache Tomcat test command # # # Some versions of Apache Tomcat do not react on the probe algorithm with the # http get command. Because of this we provide an alternative probe method # which uses wget. If wget is not installed on your system you must install it # manually and provide the WgetPath variable. If the WgetPath variable is not # set, it defaults to /usr/sfw/bin/wget. # You can use the wget algorithm for https probe as well which are not possible # with the http get command. # # Use the variables TestUrl and WgetPath as a replacement for: # Port, Host, TestCmd # You can specify only one set of variables. # # TestUrl Url where Tomcat serve a web site. This can be done either # by the http or https protocol # Format: http://hostname:port/startpage # Example: http://localhost:8080/ # You might want to include options here like: # "--no-cookies http://localhost:8080/" # The requirement here is that wget -O - ${TestUrl} produces # the output containing the ReturnString. # WgetPath Abolute path to wget, leaving this variable empty defaults to: # /usr/sfw/bin/wget # Startwait Sleeping $Startwait seconds after completion of the # start command # ReturnString This string must be present in the output of the http get # command or in the output of the wget command. EnvScript= User= Basepath= Host= Port=8080 TestCmd="get /index.jsp" TestUrl= WgetPath= ReturnString="CATALINA" Startwait=20
To use the alternative wget probe, assuming wget is available under /usr/sfw/bin/wget, set the following variables:
EnvScript=/global/mnt1/tomtest/env.ksh User=tomtest Basepath=/global/mnt1/tomtest/jakarta-tomcat-6.0.28 Host= Port= TestCmd= TestUrl="http://localhost:8080/" WgetPath= ReturnString="CATALINA" Startwait=20
This example for Apache Tomcat 6.0.28 configures a standalone web server with the default start page index.jsp. The start page contains the string CATALINA.
EnvScript=/tomcat/env.ksh User=tomcat Basepath=/tomcat/jakarta-tomcat-6.0.28 Host=localhost Port=8080 TestCmd="get /index.jsp" TestUrl= WgetPath= ReturnString="CATALINA" Startwait=20
Depending on the selected probe method, the Host parameter or the IP alias in the TestUrl parameter depends on the location of the pfile:
If the pfile is stored on the shared storage, you must use localhost.
If the pfile is stored on the local storage, it can be either localhost or the node's host name.
![]() | Caution - The parameter files must be available on every node that can host the Apache Tomcat data service. For a scalable or a multiple-masters configuration, store the parameter files on the local file system of every node or on the shared storage. The parameter files must be the same for every instance of Apache Tomcat on the various nodes. |
Repeat this step for every Apache Tomcat instance you need.
# cd /opt/SUNWsctomcat/util # cp sctomcat_config desired place
Repeat this step for every Apache Tomcat instance you need.
For example:
# # Copyright 2006, 2012, Oracle and/or its affiliates. All rights reserved. # #ident "@(#)sctomcat_config.ksh 1.2 01/03/12" # This file will be sourced in by sctomcat_register and the parameters # listed below will be used. # # These parameters can be customized in (key=value) form # # RS - name of the resource for the application # RG - name of the resource group containing RS # PORT - name of the port number # LH - name of the LogicalHostname SC resource # SCALABLE - true for a scalable resource or false for a failover resource # NETWORK - false or true, false for multiple master configurations without # shared address, in this case SCALABLE will be ignored # # PFILE - absolute path to the parameter file for the Tomcat resource # HAS_RS - name of the HAStoragePlus SC resource # (it can be a , separated list for the dependencies) # # The following variables need to be set only if the agent runs in a # local zone # ZONE - the zone name where the Apache Tomcat should run in # Optional # ZONEBT - The resource name which controls the zone. # Optional # PROJECT - A project in the zone, that will be used for this service # specify it if you have an su - in the start stop or probe, # or to define the smf credentials. If the variable is not set, # it will be translated as :default for the smf manifest # Optional RS= RG= PORT= LH= NETWORK=false SCALABLE=false PFILE= HAS_RS= # local zone specific options ZONE= ZONE_BT= PROJECT=
The following is an example for Apache Tomcat.
RS=tomcat-res RG=tomcat-rg PORT=8080 LH=tomcat-lh SCALABLE=true NETWORK=true PFILE=/tomcat/pfile HAS_RS=Apache-Tomcat-hasp-resource
Configure the LH parameter as the name of the shared address. Set the HAS_RS parameter only when another file system (cluster file system or highly available local file system) is used and the appropriate Apache-Tomcat-hasp-resource is created.
# ksh ./sctomcat_register desired place/sctomcat_config
Repeat this step for every Apache Tomcat instance you need.
Repeat this step for each Apache Tomcat resource created.
# clresource status # clresource enable Apache-Tomcat-resource