18.5.5 シェルスクリプトファイルの作成
運用管理エージェントのプロセスを監視し,論理サーバを起動および停止するために,次のシェルスクリプトファイルを作成します。
-
運用管理エージェントのプロセスを監視するシェルスクリプトファイル
-
論理サーバを起動するシェルスクリプトファイル
-
論理サーバを停止するシェルスクリプトファイル
なお,論理サーバの稼働状況を示すステータスが異常停止状態(自動再起動回数を超えた状態,または自動再起動回数の設定が0の場合で障害を検知した状態)になったタイミングで系を切り替えるための設定のとき,シェルスクリプトファイルにManagement Serverの監視処理を追加してください。
(1) 運用管理エージェントのプロセスを監視するシェルスクリプトファイル
運用管理エージェントのプロセスを監視するシェルスクリプトファイルの例(manager_adminagent_monitor.sh)を次に示します。
#!/bin/sh LOGDIR=/home/manager/hamon/log AA=/opt/Cosminexus/manager/bin/adminagent MNGDIR=/opt/Cosminexus/manager logg() { echo `date '+[%Y/%m/%d %H:%M:%S]'`"[$$]: $1" \ >> ${LOGDIR}/adminagent.log 2>&1 } logg "### $0: started. ###" while true do $MNGDIR/bin/mngsvrutil -m 192.168.0.11:28080 -t 192.168.1.111 check adminAgent if [ $? -ne 0 ] then logg "### $0: stop. ###" exit 0 fi sleep 10 done
このシェルスクリプトファイルでは,mngsvrutilのcheckコマンドで運用管理エージェントの稼働状況を確認します。mngsvrutilコマンドの-mオプションの引数のホスト名には自ホストのステーショナリIPアドレスを指定し,-tオプションの引数には現用系の仮想ホストのエイリアスIPアドレスを指定します。
なお,このシェルスクリプトファイルは,Node1の現用系1(予備系2)で稼働する運用管理エージェントを監視する場合の例です。Node2の予備系1(現用系2)で使用する場合には,-mオプションの引数のホスト名をNode2のステーショナリIPアドレス(192.168.0.22)に,-tオプションの引数を現用系の仮想ホストのエイリアスIPアドレス(192.168.2.222)に置き換えます。
(2) 論理サーバを起動するシェルスクリプトファイル
論理サーバを起動するシェルスクリプトファイルの例(manager_apserver1_start.sh)を次に示します。
#!/bin/sh MNGDIR=/opt/Cosminexus/manager logg() { echo `date '+[%Y/%m/%d %H:%M:%S]'`"[$$]: $1" \ >> ${LOGDIR}/adminagent.log 2>&1 } # start logical server logg "### $0: starting logical servers. ###" $MNGDIR/bin/mngsvrutil -m 192.168.0.11:28080 -t <パフォーマンストレーサ> -s start server $MNGDIR/bin/mngsvrutil -m 192.168.0.11:28080 -t <J2EEサーバ1> -s start server $MNGDIR/bin/mngsvrutil -m 192.168.0.11:28080 -t <Webサーバ1> -s start server exit 0
このシェルスクリプトファイルでは,論理サーバを起動します。mngsvrutilコマンドの-mオプションの引数のホスト名には自ホストのステーショナリIPアドレスを指定し,-tオプションの引数には起動する論理サーバ名を指定します。
なお,このシェルスクリプトファイルは,Node1の現用系1で論理サーバを起動する場合の例です。
(3) 論理サーバを停止するシェルスクリプトファイル
論理サーバを停止するシェルスクリプトファイルの例(manager_apserver1_stop.sh)を次に示します。
#!/bin/sh MNGDIR=/opt/Cosminexus/manager logg() { echo `date '+[%Y/%m/%d %H:%M:%S]'`"[$$]: $1" \ >> ${LOGDIR}/adminagent.log 2>&1 } # stop logical server logg "### $0: stop logical servers. ###" $MNGDIR/bin/mngsvrutil -m 192.168.0.11:28080 -t <Webサーバ1> -s stop server graceful:300 $MNGDIR/bin/mngsvrutil -m 192.168.0.11:28080 -t <J2EEサーバ1> -s stop server $MNGDIR/bin/mngsvrutil -m 192.168.0.11:28080 -t <パフォーマンストレーサ> -s stop server
このシェルスクリプトファイルでは,論理サーバを停止します。mngsvrutilコマンドの-mオプションの引数のホスト名には自ホストのステーショナリIPアドレスを指定し,-tオプションの引数には停止する論理サーバ名を指定します。
なお,このシェルスクリプトファイルは,Node1の現用系1で論理サーバを停止する場合の例です。