このメソッドは、データサービスの PROBE プログラムを起動します。
#!/bin/ksh # # HA-DNS のMonitor_start メソッド # # このメソッドは、PMF の制御下でデータサービスのモニター(検証) を # 起動する。モニターは一定の間隔でデータサービスを検証するプロセス # で、問題が発生すると、データサービスを同じノード上で再起動するか、 # クラスタ内の別のノードにフェイルオーバーする。モニター用の PMF # タグは $RESOURCE_NAME.monitor。 #pragma ident ”@(#)dns_monitor_start 1.1 00/05/24 SMI” ############################################################################### # プログラム引数を構文解析する。 # function parse_args # [args ...] { typeset opt while getopts `R:G:T:' opt do case ”$opt” in R) # DNS リソースの名前。 RESOURCE_NAME=$OPTARG ;; G) # リソースが構成されているリソース # グループの名前。 RESOURCEGROUP_NAME=$OPTARG ;; T) # リソースタイプの名前。 RESOURCETYPE_NAME=$OPTARG ;; *) logger -p ${SYSLOG_FACILITY}.err \ -t [$RESOURCETYPE_NAME,$RESOURCEGROUP_NAME,$RESOURCE_NAME] \ ”ERROR: Option $OPTARG unknown” exit 1 ;; esac done } ############################################################################### # MAIN # ############################################################################## export PATH=/bin:/usr/bin:/usr/cluster/bin:/usr/sbin:/usr/proc/bin:$PATH # メッセージの記録に使用するsyslog 機能を取得する。 SYSLOG_FACILITY=`scha_cluster_get -O SYSLOG_FACILITY` # のメソッドに渡された引数を構文解析する。 parse_args ”$@” PMF_TAG=$RESOURCE_NAME.monitor SYSLOG_TAG=$RESOURCETYPE_NAME,$RESOURCEGROUP_NAME,$RESOURCE_NAME # データサービスのRT_BASEDIR プロパティを取得することによって、検 # 証メソッドが存在する場所を見つける。 RT_BASEDIR=`scha_resource_get -O RT_BASEDIR -R $RESOURCE_NAME \ -G $RESOURCEGROUP_NAME` # PMF の制御下でデータサービスの検証を開始する。無限再試行オプショ # ンを使用して検証メソッドを起動する。リソースの名前、タイプ、および # グループを検証メソッドに渡す。 pmfadm -c $PMF_TAG.monitor -n -1 -t -1 \ $RT_BASEDIR/dns_probe -R $RESOURCE_NAME -G $RESOURCEGROUP_NAME \ -T $RESOURCETYPE_NAME # HA-DNS のモニターが起動されたことを示すメッセージを記録する。 if [ $? -eq 0 ]; then logger -p ${SYSLOG_FACILITY}.info -t [$SYSLOG_TAG] \ ”${ARGV0} Monitor for HA-DNS successfully started” fi exit 0 |