付録C.10 HAモニターを使用する場合
- 〈この項の構成〉
(1) 障害の検出
HAモニターを使用する際にサーバの障害検出を行う場合,障害を検出する監視コマンドをC言語,またはシェル言語で作成する必要があります。
監視コマンドはHAモニターにより起動され,サーバ稼働中は常に起動しています。監視コマンドが終了すると,HAモニターは傷害が発生したとみなしフェールオーバーを実行します。
HAモニターで提供されているサンプル監視コマンドを次に示します。下記の例では,対象プログラムのプロセスが存在しない場合には,サーバ障害が発生したとみなしています。
#!/bin/sh
SERVER=/home/xxxx/yyyy # サーバプログラム名
while true # メインループ
do
# ps コマンドでサーバプログラムのプロセスを確認
CHECK=`ps -ef | grep $SERVER | grep -v grep`
# プロセスがない場合はコマンドを終了
if [ "$CHECK" = "" ]
then
exit 0
fi
# プロセスがある場合は監視を継続する
doneJP1/DH - Serverは,Linux標準コマンドのpsコマンドの実行結果で,JP1/DH - Serverが使用しているサービスが存在する場合は正常とみなし,監視処理を行います。