|
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