PROBE メソッドが、データサービスを含むリソースグループを新しいノードにフェイルオーバーしようとするとき、RGM は MONITOR_CHECK メソッドを呼び出します。
この節では、サンプルアプリケーションの MONITOR_CHECK メソッドの重要な部分だけを説明します。parse_args 関数や syslog 機能番号を取得する方法など、すべてのコールバックメソッドに共通な機能については説明しません。このような機能については、「すべてのメソッドに共通な機能の提供」を参照してください。
MONITOR_CHECK メソッドの完全なリストについては、「MONITOR_CHECK メソッドのコードリスト」を参照してください。
MONITOR_CHECK メソッドは VALIDATE メソッドを呼び出し、新しいノード上で DNS 構成ディレクトリが利用可能かどうかを確認します。Confdir拡張プロパティが DNS 構成ディレクトリを指します。したがって、MONITOR_CHECK は VALIDATE メソッドのパスと名前、および Confdir の値を取得します。MONITOR_CHECK は、次のように、この値を VALIDATE に渡します。
# リソースタイプの RT_BASEDIR プロパティから VALIDATE メソッドの # 完全パスを取得する。 RT_BASEDIR=`scha_resource_get -O RT_BASEDIR -R $RESOURCE_NAME ¥ -G $RESOURCEGROUP_NAM� # 当該リソースの VALIDATE メソッド名を取得する。 VALIDATE_METHOD=`scha_resource_get -O VALIDATE ¥ -R $RESOURCE_NAME -G $RESOURCEGROUP_NAM� # データサービスを起動するための Confdir プロパティの値を取得する。入力された # リソース名とリソースグループを使用し、リソースを追加するときに設定した # Confdir の値を取得する。 config_info=`scha_resource_get -O Extension -R $RESOURCE_NAME -G $RESOURCEGROUP_NAME Confdir` # scha_resource_get は、Confdir 拡張プロパティの値とともにタイプも戻す。 # awk を使用し、Confdir 拡張プロパティの値だけを取得する。 CONFIG_DIR=`echo $config_info | awk `{print $2}'` # VALIDATE メソッドを呼び出し、データサービスを新しいノードにフェイルオーバー # できるかどうかを確認する。 $RT_BASEDIR/$VALIDATE_METHOD -R $RESOURCE_NAME -G $RESOURCEGROUP_NAME ¥ -T $RESOURCETYPE_NAME -x Confdir=$CONFIG_DIR |
ノードがデータサービスのホストとして最適であるかどうかをサンプルアプリケーションが確認する方法については、「VALIDATE メソッド」を参照してください。