Hitachi

Cosminexus V11 アプリケーションサーバ 機能解説 運用/監視/連携編


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で論理サーバを停止する場合の例です。