PRIMECLUSTER 導入運用手引書 4.1 (Solaris(TM) オペレーティングシステム版) |
目次 索引 |
第2部 導入編 | > 第6章 クラスタアプリケーションの構築 | > 6.6 クラスタアプリケーションの設定 | > 6.6.1 リソースの設定 | > 6.6.1.7 プロセス監視リソースの作成 |
プロセス監視機能は、プロセスの生存状態を監視する機能です。その主な機能は以下のとおりです。
( ユーザがプロセスの生存状態を監視するためのコマンド等を用意する必要がない) 。
プロセス監視機能とRMS との関係図を以下に示します。プロセス監視機能はclmonproc コマンド、Process Monitoring Daemon( 以降、prmd) 、Detector( 以降、hvdet_prmd) の3 つのコンポーネントから構成されています。
Online スクリプトか、またはOffline スクリプトから実行されるコマンドであり、prmd に対して任意のプロセスの起動および生存監視の停止を指示します。
prmd は、clmonproc コマンドから受信した指示に従ってプロセスの起動および生存監視の停止処理を実行するdaemon プロセスです。監視しているプロセスの生存状態に変化が生じた場合、prmd はhvdet_prmd に対して即座にその情報を通知します。
prmdから受信したプロセスの生存状態の変化をRMS Base Monitor( 以降、BM) に対して通知するためのプロセスです。
プロセス監視機能を使用しない場合と比較したメリットを以下に説明します。
監視対象プロセスの生存の有無を監視する処理はprmdが行うため、ユーザは監視対象プロセス毎にその生存の有無を判定するためのコマンド(以降、チェックコマンド)を自作する必要がありません。少ない手間で簡単にプロセスの生存状態を監視することができます。
プロセス監視機能を使用しない場合、Cmdlineリソースを使用することにより前述のチェックコマンドを定期的に実行させることでプロセスの異常終了の検出を行います。このため、チェックコマンドの実行時間間隔だけ監視対象プロセスの異常終了を検出するのが遅くなります。プロセス監視機能ではprmdがシグナル処理によって監視対象プロセスの異常終了を検出するため、定期的にチェックコマンドを発行する場合と比較して高速にそれを検出することが可能です。
不慮のエラーにより異常終了した任意のプロセスを自動的に再起動します。
プロセス監視機能を使用せずに、監視対象プロセスの異常終了検出に要する時間を短縮するには、チェックコマンドの実行時間間隔を短くする必要がありますが、これではチェックコマンドの生成と実行が頻繁に行われるため、CPU資源を多く消費する可能性があります。一般的にチェックコマンドにはpsコマンドのような類いのコマンドを使用することが考えられますが、このような比較的CPU資源を消費するコマンドを使用した場合、CPU資源の消費がより顕著となる可能性があります。
プロセス監視機能では、監視対象プロセスの異常終了をprmdがシグナル処理によって監視しており、定期的にチェックコマンドを発行するようなCPU資源を多く消費する処理は実行されません。
また、Cmdlineリソースを使用する方法では、監視対象プロセスが定義付けられているRMSオブジェクト毎にチェックコマンドが実行されるため、そのRMSオブジェクト数に比例してチェックコマンド数も増加します。このため多数のチェックコマンドが定期的に実行されることになり、CPU資源を多く消費する可能性があります。
プロセス監視機能では、常に1つのprmdが監視対象プロセスの生存状態を監視しているため、監視対象プロセス数の増加に比例してprmdがCPU資源を多く消費することはありません。
目次 索引 |