IBM


10.5.2 Tivoli System Automation configuration

Example 10-18 lists the configuration commands needed to set up the Transaction Manager with NoOP policy scenario in Tivoli System Automation.

Example 10-18 Commands to set up Transaction Manager NoOP scenario

# make resource groups
mkrg SA-was-na1-rg 
mkrg SA-was-na2-rg 
mkrg SA-was-as1-rg 
mkrg SA-was-as2-rg 
mkrg SA-was-tm1-rg 
mkrg SA-was-tm2-rg

# make resources
mkrsrc -f SA-was-na1.def IBM.Application 
mkrsrc -f SA-was-na2.def IBM.Application 
mkrsrc -f SA-was-as1.def IBM.Application 
mkrsrc -f SA-was-as2.def IBM.Application 
mkrsrc -f SA-was-tm1.def IBM.Application
mkrsrc -f SA-was-tm2.def IBM.Application 
mkrsrc -f SA-was-ascon11.def IBM.Application 
mkrsrc -f SA-was-ascon12.def IBM.Application 
mkrsrc -f SA-was-ascon21.def IBM.Application 
mkrsrc -f SA-was-ascon22.def IBM.Application

# add resources to resource group
addrgmbr -m T -p A -g SA-was-na1-rg IBM.Application:SA-was-na1:thost1 
addrgmbr -m T -p A -g SA-was-na2-rg IBM.Application:SA-was-na2:thost2 
addrgmbr -m T -p A -g SA-was-as1-rg IBM.Application:SA-was-as1:thost1 
addrgmbr -m T -p A -g SA-was-as2-rg IBM.Application:SA-was-as2:thost2 
addrgmbr -m T -p A -g SA-was-tm1-rg IBM.Application:SA-was-tm1 
addrgmbr -m T -p A -g SA-was-tm2-rg IBM.Application:SA-was-tm2 

# specify dependencies and equivalencies
mkequ SA-was-asconeq1 IBM.Application:SA-was-ascon11:thost1,SA-was-ascon12:thost2 
chrsrc -s 'Name=\"SA-was-asconeq1\"' IBM.Equivalency SelectFromPolicy=27 
mkequ SA-was-asconeq2 IBM.Application:SA-was-ascon22:thost2,SA-was-ascon21: 
chrsrc -s 'Name=\"SA-was-asconeq2\"' IBM.Equivalency SelectFromPolicy=27 
mkrel -S IBM.Application:SA-was-as1: -G IBM.Application:SA-was-na1:thost2 -p DependsOn SA-was-as1:thost1-on-na1:thost1 
mkrel -S IBM.Application:SA-was-as2:thost2 -G IBM.Application:SA-was-na2:thost2 -p DependsOn SA-was-as2:thost2-on-na2:thost2 
mkrel -S IBM.Application:SA-was-tm1 -G IBM.Equivalency:SA-was-asconeq1 -p DependsOn SA-was-tm1-on-asconeq1 
mkrel -S IBM.Application:SA-was-tm2 -G IBM.Equivalency:SA-was-asconeq2 -p DependsOn SA-was-tm2-on-asconeq2 

A sample start, stop, and monitor script (wasctrl-ascon) for the appserver resource groups is shown in Example 10-19.

Example 10-19 wasctrl-ascon

#!/bin/ksh
##############################################################
#
# was tm automation control, auxiliary script
#
# Input:
#       $1      action (<start|stop|status>)
#       $2      appserver's resource group name
#       $3      as_tcpp, the applicationServer's SOAP_CONNECTOR_ADDRESS
#
###############################################################
#
# init section
#

UNKNOWN=0
ONLINE=1
OFFLINE=2

Action=${1:-status}
ASERVER_RG=$2
AS_TCPP=$3

export PATH=$PATH:/bin:/usr/bin:/sbin:/usr/sbin:/usr/sbin/rsct/bin

case ${Action} in
        start)
                chrg -o online $ASERVER_RG
                RC=$?
                logger -i -p info -t $0 "Resource group $ASERVER_RG start rc: ${RC}"
                ;;
        stop)
                chrg -o offline $ASERVER_RG
                RC=$?
                if [ $RC -eq 0 ]; then
                  logger -i -p info -t $0 "Resource group $ASERVER_RG stop rc: ${RC}"
                else
                  logger -i -p info -t $0 "Resource group $ASERVER_RG stop failed with rc: ${RC}"
                fi
                ;;
        status)
                opstate=`lsrg -g ${ASERVER_RG} OpState |awk '/OpState/ {print $3}'`
                if [ $opstate == "2" ]; then
                  RC=$OFFLINE;
                else
                  AS_UP=`netstat -lnt | grep :${AS_TCPP}`
                  if [ $opstate == "1" -a "${AS_UP}" != "" ]; then
                    RC=$ONLINE;
                  else
                    RC=$OFFLINE;
                  fi
                fi
                ;;
        *)
                logger -i -p info -t $0 "Error: Incorrect parameter >${Action}<"
                RC=${UNKNOWN}
                ;;
esac

exit ${RC}

The examples that follow show the definition files for the commands listed previously.

For sample wasctrl-na and wasctrl-as scripts, see Example 10-10 and Example 10-11.

Example 10-20 SA-was-na1.def

PersistentResourceAttributes::
Name=SA-was-na1
ResourceType=0
StartCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-na start /opt/IBM/WAS/AppServer/profiles/node1 8878
StopCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-na stop /opt/IBM/WAS/AppServer/profiles/node1 8878
MonitorCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-na status /opt/IBM/WAS/AppServer/profiles/node1 8878
StartCommandTimeout=60
StopCommandTimeout=60
MonitorCommandTimeout=19
MonitorCommandPeriod=30
ProtectionMode=1
RunCommandsSync=0
NodeNameList={'thost1'}
UserName=root

Example 10-21 SA-was-na2.def

PersistentResourceAttributes::
Name=SA-was-na2
ResourceType=0
StartCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-na start /opt/IBM/WAS/AppServer/profiles/node2 8878
StopCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-na stop /opt/IBM/WAS/AppServer/profiles/node2 8878
MonitorCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-na status /opt/IBM/WAS/AppServer/profiles/node2 8878
StartCommandTimeout=60
StopCommandTimeout=60
MonitorCommandTimeout=19
MonitorCommandPeriod=30
ProtectionMode=1
RunCommandsSync=0
NodeNameList={'thost2'}
UserName=root

Example 10-22 SA-was-as1.def

PersistentResourceAttributes::
Name=SA-was-as1
ResourceType=0
StartCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-as start /opt/IBM/WAS/AppServer/profiles/node1 8879 thost1server
StopCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-as stop /opt/IBM/WAS/AppServer/profiles/node1 8879 thost1server
MonitorCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-as status /opt/IBM/WAS/AppServer/profiles/node1 8879 thost1server
StartCommandTimeout=180
StopCommandTimeout=180
MonitorCommandTimeout=19
MonitorCommandPeriod=30
ProtectionMode=1
RunCommandsSync=0
NodeNameList={'thost1'}
UserName=root

Example 10-23 SA-was-as2.def

PersistentResourceAttributes::
Name=SA-was-as2
ResourceType=0
StartCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-as start /opt/IBM/WAS/AppServer/profiles/node2 8879 thost2server
StopCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-as stop /opt/IBM/WAS/AppServer/profiles/node2 8879 thost2server
MonitorCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-as status /opt/IBM/WAS/AppServer/profiles/node2 8879 thost2server
StartCommandTimeout=180
StopCommandTimeout=180
MonitorCommandTimeout=19
MonitorCommandPeriod=30
ProtectionMode=1
RunCommandsSync=0
NodeNameList={'thost2'}
UserName=root

The wasctrl-tm script that is used in the next two examples is explained in great detail in 9.6, Transaction Manager failover with No Operation policy, specifically in Scripts to start, stop, and monitor WebSphere resources.

Example 10-24 SA-was-tm1.def

PersistentResourceAttributes::
Name=SA-was-tm1
ResourceType=1
StartCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-tm start thost1 /opt/IBM/WAS/AppServer/profiles/node1 8879 TradeCluster
StopCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-tm stop thost1 /opt/IBM/WAS/AppServer/profiles/node1 8879 TradeCluster
MonitorCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-tm status thost1 /opt/IBM/WAS/AppServer/profiles/node1 8879 TradeCluster
StartCommandTimeout=60
StopCommandTimeout=60
MonitorCommandTimeout=9
MonitorCommandPeriod=30
ProtectionMode=1
RunCommandsSync=0
NodeNameList={'thost1','thost2'}
UserName=root

Example 10-25 SA-was-tm2.def

PersistentResourceAttributes::
Name=SA-was-tm2
ResourceType=1
StartCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-tm start thost2 /opt/IBM/WAS/AppServer/profiles/node2 8879 TradeCluster
StopCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-tm stop thost2 /opt/IBM/WAS/AppServer/profiles/node2 8879 TradeCluster
MonitorCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-tm status thost2 /opt/IBM/WAS/AppServer/profiles/node2 8879 TradeCluster
StartCommandTimeout=60
StopCommandTimeout=60
MonitorCommandTimeout=9
MonitorCommandPeriod=30
ProtectionMode=1
RunCommandsSync=0
NodeNameList={'thost1','thost2'}
UserName=root

The following definition files use the wasctrl-ascon script shown in Example 10-19.

Example 10-26 SA-was-ascon11.def

PersistentResourceAttributes::
Name=SA-was-ascon11
ResourceType=0
StartCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-ascon start SA-was-as1-rg 8879
StopCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-ascon stop SA-was-as1-rg 8879
MonitorCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-ascon status SA-was-as1-rg 8879
StartCommandTimeout=180
StopCommandTimeout=180
MonitorCommandTimeout=19
MonitorCommandPeriod=30
ProtectionMode=1
RunCommandsSync=0
NodeNameList={'thost1'}
UserName=root

Example 10-27 SA-was-ascon12.def

PersistentResourceAttributes::
Name=SA-was-ascon12
ResourceType=0
StartCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-ascon start SA-was-as2-rg 8879
StopCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-ascon stop SA-was-as2-rg 8879
MonitorCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-ascon status SA-was-as2-rg 8879
StartCommandTimeout=180
StopCommandTimeout=180
MonitorCommandTimeout=19
MonitorCommandPeriod=30
ProtectionMode=1
RunCommandsSync=0
NodeNameList={'thost2'}
UserName=root

Example 10-28 SA-was-ascon21.def

PersistentResourceAttributes::
Name=SA-was-ascon21
ResourceType=0
StartCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-ascon start SA-was-as1-rg 8879
StopCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-ascon stop SA-was-as1-rg 8879
MonitorCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-ascon status SA-was-as1-rg 8879
StartCommandTimeout=180
StopCommandTimeout=180
MonitorCommandTimeout=19
MonitorCommandPeriod=30
ProtectionMode=1
RunCommandsSync=0
NodeNameList={'thost1'}
UserName=root

Example 10-29 SA-was-ascon22.def

PersistentResourceAttributes::
Name=SA-was-ascon22
ResourceType=0
StartCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-ascon start SA-was-as2-rg 8879
StopCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-ascon stop SA-was-as2-rg 8879
MonitorCommand=/usr/sbin/rsct/sapolicies/was/wasctrl-ascon status SA-was-as2-rg 8879
StartCommandTimeout=180
StopCommandTimeout=180
MonitorCommandTimeout=19
MonitorCommandPeriod=30
ProtectionMode=1
RunCommandsSync=0
NodeNameList={'thost2'}
UserName=root


Redbooks ibm.com/redbooks

Next