PRIMECLUSTERシステムへ登録する以下の状態遷移プロシジャを作成します。
デーモンの動作を制御する状態遷移プロシジャ(必須)
監視スクリプト(任意。デーモンを監視する状態遷移プロシジャが存在する場合に必須)
デーモンを監視する状態遷移プロシジャ(任意)
上記のプロシジャは、運用系、待機系のそれぞれに作成し、同じディレクトリパス上に配置してください。共有ディスクには作成しないでください。プロシジャの作成後、実行権を必ず設定してください。
監視スクリプトおよびデーモンを監視する状態遷移プロシジャは、運用系のノード上で動作するデーモンを監視し、デーモンの終了をフェールオーバの契機にしたい場合に作成します。デーモンの終了をフェールオーバの契機にしない場合は、作成する必要はありません。
それぞれのプロシジャの作成例を説明します。以降で説明するプロシジャは、すべてサンプルが提供されています。サンプルをバックアップするか、複写した後、環境に応じて変更してご利用ください。
ジョブスケジューラ、ジョブ実行制御のデーモンの動作を制御する、状態遷移プロシジャを作成します。
デーモンの動作を制御する状態遷移プロシジャは、以下にサンプルが提供されています。
/opt/FJSVJMCMN/etc/script/OperationMGR.proc |
サンプルの状態遷移プロシジャは、1:1運用待機(サブシステムなし)およびカスケード用です。
1:1運用待機(サブシステムあり)の場合、1:1運用待機(サブシステムあり、一部クラスタ運用)の場合、N:1運用待機および2ノード相互待機の場合は、状態遷移プロシジャの変更が必要です。
また、サンプルの状態遷移プロシジャでは、共有ディスク名を“/disk1”としています。共有ディスク名が違う場合はサンプルの“/disk1”を実際の共有ディスク名に変更してください。
サンプルを複写後、クラスタシステムの運用に合わせて変更してご利用ください。1:1運用待機(サブシステムなし)およびカスケードの場合は、バックアップを取った上で、サンプルをそのまま使用してもかまいません。
以下に状態遷移プロシジャの変更例を説明します。
1:1運用待機(サブシステムあり)、1:1運用待機(サブシステムあり、一部クラスタ運用)の場合の変更例
複数サブシステム運用を実施している場合、サブシステムごとにジョブスケジューラ、ジョブ実行制御のデーモンを起動/停止します。
以下は、1:1運用待機(サブシステムあり)においてサブシステム0とサブシステム1を運用している場合の例、および1:1運用待機(サブシステムあり、一部クラスタ運用)において、サブシステム0はクラスタ運用せずに、サブシステム1のみクラスタ運用する場合の例です。
状態遷移プロシジャの、“SUBSYSTEM”変数を“PLU_SUBSYSTEM”とし、値はサブシステム番号に変更します。1:1運用待機(サブシステムあり、一部クラスタ運用)の場合は、クラスタ運用するサブシステム番号だけを記述するよう変更します。
[変更前]
SUBSYSTEM="0"
[変更後]
1:1運用待機(サブシステムあり)の場合
PLU_SUBSYSTEM="0 1"
1:1運用待機(サブシステムあり、一部クラスタ運用)の場合
PLU_SUBSYSTEM="1"
ジョブスケジューラとジョブ実行制御をサブシステムごとに起動するように、START-RUN-AFTERの最後にfor文、do文、done文を追加します。
[変更前]
# Starts Job Scheduler & Job Execution Control # - 1:1 standby, N:1 standby, 2 nodes mutual standby sh /etc/opt/FJSVMJS/etc/rc3.d/S99MJS -sys $SUBSYSTEM sh /opt/FJSVJOBSC/etc/rc3.d/S99JOBSCH -sys $SUBSYSTEM ;;
[変更後]
# Starts Job Scheduler & Job Execution Control # - 1:1 standby, N:1 standby, 2 nodes mutual standby for SUBSYSTEM in $PLU_SUBSYSTEM do sh /etc/opt/FJSVMJS/etc/rc3.d/S99MJS -sys $SUBSYSTEM sh /opt/FJSVJOBSC/etc/rc3.d/S99JOBSCH -sys $SUBSYSTEM done ;;
ジョブスケジューラとジョブ実行制御がサブシステムごとに終了するように、STOP-RUN-BEFOREの最初にfor文、do文を追加します。
[変更前]
'BEFORE') # Job Execution Control Server if [ -x /usr/bin/zonename ]
[変更後]
'BEFORE') # Job Execution Control Server for SUBSYSTEM in $PLU_SUBSYSTEM do if [ -x /usr/bin/zonename ]
STOP-RUN-BEFOREの最後にdone文を追加します。
[変更前]
done ;; 'AFTER')
[変更後]
done done ;; 'AFTER')
1:1運用待機(サブシステムあり、一部クラスタ運用)の場合は、セキュリティ情報をサブシステムごとに自動反映するように、START-RUN-AFTERの最後にfor文、do文、done文を追加します。
[変更前]
# - 1:1 standby, N:1 standby /opt/FJSVfwseo/bin/mpaclcls sh /opt/FJSVfwseo/bin/jmacltrn.sh
[変更後]
# - 1:1 standby, N:1 standby for SUBSYSTEM in $PLU_SUBSYSTEM do /opt/FJSVfwseo/bin/mpaclcls -s $SUBSYSTEM sh /opt/FJSVfwseo/bin/jmacltrn.sh $SUBSYSTEM done
N:1運用待機の場合の変更例
START-RUN-AFTER時の“Make symbolic links.(if N:1 standby)”の部分のコメントを外します(“#”を削除します)。
[変更前]
# Make symbolic links.(if N:1 standby) # ACL Manager #if [ ! "(" -h "/var/opt/FJSVfwseo/JM" -o -f "/var/opt/FJSVfwseo/JM" ")" ] #then # ln -s /disk1/FJSVfwseo/JM /var/opt/FJSVfwseo/JM #fi # Job Scheduler #if [ ! "(" -h "/var/opt/FJSVJOBSC" -o -f "/var/opt/FJSVJOBSC" ")"] #then # ln -s /disk1/FJSVJOBSC /var/opt/FJSVJOBSC #fi # Job Execution Control #if [ ! "(" -h "/var/spool/mjes" -o -f "/var/spool/mjes" ")" ] #then # ln -s /disk1/FJSVMJS/var/spool/mjes /var/spool/mjes #fi #if [ ! "(" -h "/etc/mjes" -o -f "/etc/mjes" ")" ] #then # ln -s /disk1/FJSVMJS/etc/mjes /etc/mjes #fi # Calendar #if [ ! "(" -h "/var/opt/FJSVjmcal/post" -o -f "/var/opt/FJSVjmcal/post" ")" ] #then # ln -s /disk1/FJSVjmcal/post /var/opt/FJSVjmcal/post #fi # Stem #if [ ! "(" -h "/var/opt/FJSVstem" -o -f "/var/opt/FJSVstem" ")" ] #then # ln -s /disk1/FJSVstem /var/opt/FJSVstem #fi # - 1:1 standby, N:1 standby
[変更後]
# Make symbolic links.(if N:1 standby) # ACL Manager if [ ! "(" -h "/var/opt/FJSVfwseo/JM" -o -f "/var/opt/FJSVfwseo/JM" ")" ] then ln -s /disk1/FJSVfwseo/JM /var/opt/FJSVfwseo/JM fi # Job Scheduler if [ ! "(" -h "/var/opt/FJSVJOBSC" -o -f "/var/opt/FJSVJOBSC" ")"] then ln -s /disk1/FJSVJOBSC /var/opt/FJSVJOBSC fi # Job Execution Control if [ ! "(" -h "/var/spool/mjes" -o -f "/var/spool/mjes" ")" ] then ln -s /disk1/FJSVMJS/var/spool/mjes /var/spool/mjes fi if [ ! "(" -h "/etc/mjes" -o -f "/etc/mjes" ")" ] then ln -s /disk1/FJSVMJS/etc/mjes /etc/mjes fi # Calendar if [ ! "(" -h "/var/opt/FJSVjmcal/post" -o -f "/var/opt/FJSVjmcal/post" ")" ] then ln -s /disk1/FJSVjmcal/post /var/opt/FJSVjmcal/post fi # Stem (注) if [ ! "(" -h "/var/opt/FJSVstem" -o -f "/var/opt/FJSVstem" ")" ] then ln -s /disk1/FJSVstem /var/opt/FJSVstem fi # - 1:1 standby, N:1 standby
注) マスタスケジュール管理機能が有効な場合のみコメントを外します。
STOP-RUN-AFTER時の“remove symbolic links.(if N:1 standby)”の部分のコメントを外します (“#”を削除します) 。
[変更前]
# remove symbolic links.(if N:1 standby) # Job Scheduler #if [ -h "/var/opt/FJSVJOBSC" ] #then # rm /var/opt/FJSVJOBSC #fi # Job Execution Control #if [ -h "/var/spool/mjes" ] #then # rm /var/spool/mjes #fi #if [ -h "/etc/mjes" ] #then # rm /etc/mjes #fi # ACL Manager #/opt/FJSVfwseo/bin/mpaclcls -u #if [ -h "/var/opt/FJSVfwseo/JM" ] #then # rm /var/opt/FJSVfwseo/JM #fi # Calendar #if [ -h "/var/opt/FJSVjmcal/post" ] #then # rm /var/opt/FJSVjmcal/post #fi # Stem #if [ -h "/var/opt/FJSVstem" ] #then # rm /var/opt/FJSVstem #fi ;;
[変更後]
# remove symbolic links.(if N:1 standby) # Job Scheduler if [ -h "/var/opt/FJSVJOBSC" ] then rm /var/opt/FJSVJOBSC fi # Job Execution Control if [ -h "/var/spool/mjes" ] then rm /var/spool/mjes fi if [ -h "/etc/mjes" ] then rm /etc/mjes fi # ACL Manager /opt/FJSVfwseo/bin/mpaclcls -u if [ -h "/var/opt/FJSVfwseo/JM" ] then rm /var/opt/FJSVfwseo/JM fi # Calendar if [ -h "/var/opt/FJSVjmcal/post" ] then rm /var/opt/FJSVjmcal/post fi # Stem (注) if [ -h "/var/opt/FJSVstem" ] then rm /var/opt/FJSVstem fi ;;
注) マスタスケジュール管理機能が有効な場合のみコメントを外します。
状態遷移プロシジャを、ファイル名を変更して運用系の数(N個)だけ用意し、それぞれの共有ディスクに合わせて、シンボリックリンクを作成するディレクトリ(例では“disk1”)を変更します。
N個の状態遷移プロシジャを、それぞれの運用系に配置し、待機系にはN個の状態遷移プロシジャすべて、運用系と同じディレクトリパス上に複写します。
3ノード存在する場合の配置例を以下に示します。
運用系1:/opt/FJSVJMCMN/etc/script/OperationMGR1.proc
運用系2:/opt/FJSVJMCMN/etc/script/OperationMGR2.proc
運用系3:/opt/FJSVJMCMN/etc/script/OperationMGR3.proc
待機系 :/opt/FJSVJMCMN/etc/script/OperationMGR1.proc /opt/FJSVJMCMN/etc/script/OperationMGR2.proc /opt/FJSVJMCMN/etc/script/OperationMGR3.proc
2ノード相互待機の場合の変更例
状態遷移プロシジャの、“SUBSYSTEM”の変数を“1”に変更します。
[変更前]
SUBSYSTEM="0"
[変更後]
SUBSYSTEM="1"
START-RUN-AFTER時の“- 1:1 standby, N:1 standby”の部分を、2ノード相互待機用に変更します (“#”の位置を変更します)。
[変更前]
# - 1:1 standby, N:1 standby /opt/FJSVfwseo/bin/mpaclcls sh /opt/FJSVfwseo/bin/jmacltrn.sh # - 2 nodes mutual standby #/opt/FJSVfwseo/bin/mpaclcls -s $SUBSYSTEM #sh /opt/FJSVfwseo/bin/jmacltrn.sh $SUBSYSTEM # Starts Job Scheduler & Job Execution Control
[変更後]
# - 1:1 standby, N:1 standby #/opt/FJSVfwseo/bin/mpaclcls #sh /opt/FJSVfwseo/bin/jmacltrn.sh # - 2 nodes mutual standby /opt/FJSVfwseo/bin/mpaclcls -s $SUBSYSTEM sh /opt/FJSVfwseo/bin/jmacltrn.sh $SUBSYSTEM # Starts Job Scheduler & Job Execution Control
変更後と同じ内容で、ファイル名を変更した状態遷移プロシジャをもう1個用意して、“SUBSYSTEM”の変数を“2”に変更します。
[変更前]
SUBSYSTEM="1"
[変更後]
SUBSYSTEM="2"
2個の状態遷移プロシジャを、同じディレクトリパス上の運用系および待機系に配置します。
配置例を以下に示します。
運用系1:/opt/FJSVJMCMN/etc/script/OperationMGR1.proc (待機系2)/opt/FJSVJMCMN/etc/script/OperationMGR2.proc
運用系2:/opt/FJSVJMCMN/etc/script/OperationMGR2.proc (待機系1)/opt/FJSVJMCMN/etc/script/OperationMGR1.proc
デーモンを監視する状態遷移プロシジャから呼び出される、監視スクリプトを作成します。
監視スクリプトは、以下にサンプルが提供されています。
/opt/FJSVJMCMN/etc/script/omgr_smonitor |
サンプルの監視スクリプトは、1:1運用待機(サブシステムなし)およびカスケード用です。1:1運用待機(サブシステムあり)、1:1運用待機(サブシステムあり、一部クラスタ運用)、N:1運用待機および2ノード相互待機の場合は、監視スクリプトの変更が必要です。
サンプルを複写後、クラスタシステムの運用に合わせて変更してご利用ください。1:1運用待機(サブシステムなし)およびカスケードの場合は、バックアップを取った上で、サンプルをそのまま使用してもかまいません。
以下に監視スクリプトの変更例を説明します。
1:1運用待機(サブシステムあり)、1:1運用待機(サブシステムあり、一部クラスタ運用)の場合の変更例
複数サブシステム運用を実施している場合、サブシステムごとにデーモン監視を行います。以下は、1:1運用待機(サブシステムあり)において、サブシステム0とサブシステム1を運用している場合の例、および1:1運用待機(サブシステムあり、一部クラスタ運用)において、サブシステム0はクラスタ運用せずに、サブシステム1のみクラスタ運用する場合の例です。
監視スクリプトの、“SUBSYSTEM”変数を“PLU_SUBSYSTEM”とし、値はサブシステム番号に変更します。1:1運用待機(サブシステムあり、一部クラスタ運用)の場合は、クラスタ運用するサブシステム番号だけを記述するよう変更します。
[変更前]
SUBSYSTEM="0"
[変更後]
1:1運用待機(サブシステムあり)の場合
PLU_SUBSYSTEM="0 1"
1:1運用待機(サブシステムあり、一部クラスタ運用)の場合
PLU_SUBSYSTEM="1"
サブシステムごとにデーモン監視するように、while doのすぐ後にfor文とdo文を追加します。
[変更前]
while /bin/true do if [ -x /usr/bin/zonename ]
[変更後]
while /bin/true do for SUBSYSTEM in $PLU_SUBSYSTEM do if [ -x /usr/bin/zonename ]
sleep 10 の前にdone文を追加します。
[変更前]
sleep 10 done
[変更後]
done sleep 10 done
N:1運用待機の場合の変更例
監視スクリプトを、ファイル名を変更して運用系の数(N個)だけ用意します。
N個の監視スクリプトを、それぞれの運用系に配置し、待機系にはN個の監視スクリプトをすべて、運用系と同じディレクトリパス上に複写します。
3ノード存在する場合の配置例を以下に示します。
運用系1:/opt/FJSVJMCMN/etc/script/omgr_smonitor1
運用系2:/opt/FJSVJMCMN/etc/script/omgr_smonitor2
運用系3:/opt/FJSVJMCMN/etc/script/omgr_smonitor3
待機系 :/opt/FJSVJMCMN/etc/script/omgr_smonitor1 /opt/FJSVJMCMN/etc/script/omgr_smonitor2 /opt/FJSVJMCMN/etc/script/omgr_smonitor3
2ノード相互待機の場合の変更例
“SUBSYSTEM”の変数を“1”に変更します。
[変更前]
SUBSYSTEM="0"
[変更後]
SUBSYSTEM="1"
変更後と同じ内容で、名前を変更した状態遷移プロシジャをもう1個用意して、“SUBSYSTEM”の変数を“2”に変更します。
[変更前]
SUBSYSTEM="1"
[変更後]
SUBSYSTEM="2"
2個の状態遷移プロシジャを、同じディレクトリパス上の運用系および待機系に配置します。
配置例を以下に示します。
運用系1:/opt/FJSVJMCMN/etc/script/omgr_smonitor1 (待機系2)/opt/FJSVJMCMN/etc/script/omgr_smonitor2
運用系2:/opt/FJSVJMCMN/etc/script/omgr_smonitor2 (待機系1)/opt/FJSVJMCMN/etc/script/omgr_smonitor1
ジョブスケジューラ、ジョブ実行制御のデーモンを監視する状態遷移プロシジャを作成します。
デーモンを監視する状態遷移プロシジャは、以下にサンプルが提供されています。
/opt/FJSVJMCMN/etc/script/omgr_monitor.proc |
サンプルの状態遷移プロシジャは、1:1運用待機およびカスケード用です。N:1運用待機および2ノード相互待機の場合は、状態遷移プロシジャの変更が必要です。
サンプルを複写後、クラスタシステムの運用に合わせて変更してご利用ください。1:1運用待機およびカスケードの場合は、バックアップを取った上で、サンプルをそのまま使用してもかまいません。
以下に状態遷移プロシジャの変更例を説明します。
N:1運用待機の場合の変更例
デーモンを監視する状態遷移プロシジャを、ファイル名を変更してN個作成します。デーモンを監視する状態遷移プロシジャ内に記載された、監視スクリプトのファイル名を変更します。“4.1.1.2 監視スクリプトの作成”で作成したファイル名を記載します。
状態遷移プロシジャを、ファイル名を変更して運用系の数(N個)だけ用意します。環境に合わせてそれぞれのファイルで情報を変更します。
3ノード存在する場合の変更例を以下に示します。
デーモンを監視する状態遷移プロシジャ:omgr_monitor1.proc
$CLMONPROC -s -r $4 -a /opt/FJSVJMCMN/etc/script/omgr_smonitor1 -c 0
デーモンを監視する状態遷移プロシジャ:omgr_monitor2.proc
$CLMONPROC -s -r $4 -a /opt/FJSVJMCMN/etc/script/omgr_smonitor2 -c 0
デーモンを監視する状態遷移プロシジャ:omgr_monitor3.proc
$CLMONPROC -s -r $4 -a /opt/FJSVJMCMN/etc/script/omgr_smonitor3 -c 0
N個の状態遷移プロシジャを、それぞれの運用系に配置し、待機系にはN個の状態遷移プロシジャすべて、運用系と同じディレクトリパス上に複写します。
3ノード存在する場合の配置例を以下に示します。
運用系1:/opt/FJSVJMCMN/etc/script/omgr_monitor1.proc
運用系2:/opt/FJSVJMCMN/etc/script/omgr_monitor2.proc
運用系3:/opt/FJSVJMCMN/etc/script/omgr_monitor3.proc
待機系 :/opt/FJSVJMCMN/etc/script/omgr_monitor1.proc /opt/FJSVJMCMN/etc/script/omgr_monitor2.proc /opt/FJSVJMCMN/etc/script/omgr_monitor3.proc
2ノード相互待機の場合の変更例
デーモンを監視する状態遷移プロシジャを、ファイル名を変更して2個作成します。デーモンを監視する状態遷移プロシジャ内に記載された、監視スクリプトのファイル名を変更します。“4.1.1.2 監視スクリプトの作成”で作成したファイル名を記載します。
1個の状態遷移プロシジャの、監視スクリプトのファイル名を変更します。
[変更前]
$CLMONPROC -s -r $4 -a /opt/FJSVJMCMN/etc/script/omgr_smonitor -c 0
[変更後]
$CLMONPROC -s -r $4 -a /opt/FJSVJMCMN/etc/script/omgr_smonitor1 -c 0
もう1個の状態遷移プロシジャの、監視スクリプトのファイル名を変更します。
[変更前]
$CLMONPROC -s -r $4 -a /opt/FJSVJMCMN/etc/script/omgr_smonitor -c 0
[変更後]
$CLMONPROC -s -r $4 -a /opt/FJSVJMCMN/etc/script/omgr_smonitor2 -c 0
2個の状態遷移プロシジャを、同じディレクトリパス上の運用系および待機系に配置します。
配置例を以下に示します。
運用系1:/opt/FJSVJMCMN/etc/script/omgr_monitor1.proc (待機系2)/opt/FJSVJMCMN/etc/script/omgr_monitor2.proc
運用系2:/opt/FJSVJMCMN/etc/script/omgr_monitor2.proc (待機系1)/opt/FJSVJMCMN/etc/script/omgr_monitor1.proc