ここでは、Turbolinux CLUSTERPRO を使用したクラスタ環境で、クラスタリングするアプリケーションの動作確認と、アプリケーションに障害が発生した場合にフェイルオーバ させる方法についての情報を記載しています。
アプリケーションの監視とは
フェイルオーバグループのスクリプトから業務アプリケーションを起動するときに、armload コマンドを使用することにより、起動したアプリケーションの死活監視を行うことができます。
アプリケーションの監視方法
フェイルオーバグループの開始スクリプト(start.bat)に armload コマンドで業務アプリケーションを起動するように記述し、停止スクリプト(stop.bat)に armkill コマンドで業務アプリケーションを終了するように記述します。
アプリケーション監視の制限事項
armload では、アプリケーションのストールや結果異常、他の常駐プロセスを起動し終了してしまうようなアプリケーションなどでは、常駐プロセスの異常を検出することはできません。
armload コマンドでは検出できない障害に対応するためには、アプリケーションごとの内部事情を理解した上で、アプリケーションの状態を監視するようなモニタプログラムを作成する必要があります。
具体的には、業務アプリケーションを常に監視するプログラムを作成し、armload コマンドから作成した、監視プログラムを起動します。
apache のアプリケーションモニタ
apache
を使ったアプリケーションモニタイメージを説明します。まず、フェイルオーバグループの開始スクリプトは、次のようになります。
[start.bat]
---------------------------------------
・・・
armlog "`/etc/rc.d/init.d/httpd start`" … (1)
armload httpd -M -FOV httpdmon … (2)
・・・
---------------------------------------
(1) … apache の起動
(2) … httpdmon により apache を監視
httpdmon では、apache アプリケーションを常に監視し、apache の異常を検知した時点で終了するように作成します。
フェイルオーバグループの停止スクリプト(stop.bat)からは、armkill コマンドを使って監視プログラムを終了します。
[stop.bat]
---------------------------------------
・・・
armkill httpd … (3)
armlog "`/etc/rc.d/init.d/httpd stop`" … (4)
・・・
---------------------------------------
(3) … (2) で起動した監視プログラムを終了
(4) … apache の終了
関連文書
対象製品
- Turbolinux CLUSTERPRO (8以下の SE, LE 全てのバージョン)
|