17.7.6 シェルスクリプトファイルの作成

Management Serverのプロセスを監視し,運用管理サーバを起動および停止するために,次のシェルスクリプトファイルを作成します。

現用系の運用管理サーバと予備系の運用管理サーバで同一のシェルスクリプトファイルを使用し,同一のパスに配置してください。

<この項の構成>
(1) Management Serverのプロセスを監視するシェルスクリプトファイル
(2) 運用管理サーバを起動するシェルスクリプトファイル
(3) 運用管理サーバを停止するシェルスクリプトファイル

(1) Management Serverのプロセスを監視するシェルスクリプトファイル

Management Serverのプロセスを監視するシェルスクリプトファイルの例(manager_mngsvr_monitor.sh)を次に示します。

#!/bin/sh

LOGDIR=/home/manager/hamon/log
MNGDIR=/opt/Cosminexus/manager

logg()
{
   echo `date '+[%Y/%m/%d %H:%M:%S]'`"[$$]: $1" ¥
       >> ${LOGDIR}/mngsvr.log 2>&1
}

logg "### $0: started. ###"
while true
do
$MNGDIR/bin/mngsvrutil -m 192.168.255.111:28080 check mngsvr
   if [ $? -ne 0 ]
   then
       logg "### $0: stop. ###"
       exit 0
   fi
   sleep 10
done

このシェルスクリプトファイルでは,mngsvrutilのcheckコマンドでManagement Serverの稼働状況を確認します。なお,mngsvrutilコマンドの-mオプションの引数のホスト名にはエイリアスIPアドレスを指定します。

(2) 運用管理サーバを起動するシェルスクリプトファイル

運用管理サーバを起動するシェルスクリプトファイルの例(manager_mngsvr_start.sh)を次に示します。

#!/bin/sh

LOGDIR=/home/manager/hamon/log
MNGDIR=/opt/Cosminexus/manager
RETRY_COUNT=20
RETRY_INTERVAL=10

logg()
{
   echo `date '+[%Y/%m/%d %H:%M:%S]'`"[$$]: $1" ¥
       >> ${LOGDIR}/mngsvr.log 2>&1
}
# start Management Server
logg "### $0: starting Management Server. ###"
$MNGDIR/bin/mngsvrctl start &

I=0
while [ $I -lt $RETRY_COUNT ] ; do
 MNGDIR/bin/mngsvrutil -m 192.168.255.111:28080 check mngsvr
 if [ $? -eq 0 ] ; then
   break
 fi
 sleep $RETRY_INTERVAL
 I=`expr $I + 1`
done
exit 0

(3) 運用管理サーバを停止するシェルスクリプトファイル

運用管理サーバを停止するシェルスクリプトファイルの例(manager_mngsvr_stop.sh)を次に示します。

#!/bin/sh

LOGDIR=/home/manager/hamon/log
MNGDIR=/opt/Cosminexus/manager
logg()
{
   echo `date '+[%Y/%m/%d %H:%M:%S]'`"[$$]: $1" ¥
       >> ${LOGDIR}/mngsvr.log 2>&1
}
# stop Management Server
logg "### $0: stop Management Server. ###"
$MNGDIR/bin/mngsvrctl stop
exit 0