ページの先頭行へ戻る
Symfoware Server V11.0.1 クラスタ導入運用ガイド
Symfoware

E.2.4 Online/Offlineスクリプトのサブプロシジャの登録

Online/Offlineスクリプトから呼び出されて、作業用ファイルの削除や共用バッファの開設などを行うためのスクリプトをサブプロシジャと呼びます。

サブプロシジャには、以下があります。

サブプロシジャ名

処理内容

サンプルプロシジャのファイル名

作業用ファイルの削除用サブプロシジャ

システム用の動作環境ファイルのWORK_PATHで指定した作業用ディレクトリの作業用ファイルの削除

/opt/FJSVsymhs/demo/HSproc.rmwork

プレオープンするDSI用サブプロシジャ(ホットスタンバイ機能のみ)

DSIごとに、以下のどちらかの処理を行う

  • 共用バッファの開設およびプレオープンするDSIと共用バッファの対応関係の登録

  • DSIのメモリ常駐化

/opt/FJSVsymhs/demo/HSproc.WAIT.conbf

プレオープンしないDSI用サブプロシジャ

DSIごとに、以下のどちらかの処理を行う

  • 共用バッファの開設およびプレオープンしないDSIと共用バッファの対応関係の登録

  • DSIのメモリ常駐化

/opt/FJSVsymhs/demo/HSproc.RUN.conbf

作業用ファイルの削除、共用バッファの開設、DSIのメモリ常駐化を行いたい場合は、各サブプロシジャの登録を運用系と待機系で行ってください。

サブプロシジャの登録は、サンプルプロシジャをディレクトリ“/opt/FSUNrdb2b/etc/RDBシステム名”配下に複写し、環境にあわせて修正してください。

DSIのメモリ常駐化を行う場合は、プレオープンするDSI用サブプロシジャまたはプレオープンしないDSI用サブプロシジャをrdbresidentコマンドが有効になるように編集してください。

サブプロシジャの登録は、運用系のクラスタアプリケーションと待機系のクラスタアプリケーションで行います。

プレオープンするDSI用サブプロシジャは、ロードシェア運用でホットスタンバイ機能を併用した場合にのみ有効です。

サブプロシジャが動作した時のSymfoware/RDBの処理については“C.10 状態遷移とOnline/Offlineスクリプト”を参照してください。

注意

DSIのメモリ常駐化を行う場合は、以下のことを注意してください。

  • 待機系のクラスタアプリケーションでのrdbresidentコマンドの実行では、sオプション指定の有無により動作が異なります。sオプションを指定しない場合、DSIのメモリへの常駐は行われません。メモリ常駐は、待機系のクラスタアプリケーションが運用系のクラスタアプリケーションに切り替わる時に行われます。また、クラスタアプリケーションの切替えは、メモリ常駐の完了と同時に完了します。sオプションを指定する場合、DSIのメモリへの常駐が行われます。クラスタアプリケーションの切替えは、事前にメモリ常駐が完了している分、高速に行われます。rdbresidentコマンドの詳細については、“コマンドリファレンス”を参照してください。

  • 共用バッファに対応づけするDSIをメモリに常駐させることはできません。


サブプロシジャにはプレオープンするDSI用サププロシジャおよびプレオープンしないDSI用サププロシジャの2種類があり、登録方法は3通りあります。以下に登録例を示します。


1

RDBシステム内のすべてのDSIをプレオープンする場合(ホットスタンバイ機能を利用する場合のみ)

  1. HSproc.WAIT.conbfを複写します。

  2. RDBシステム内のすべてのDSIについて、共用バッファとの対応づけまたはメモリ常駐化が行われるように、HSproc.WAIT.conbfを編集します。

    状態遷移時の動作を以下に示します。

    立上げ:

    運用系のクラスタアプリケーションと待機系のクラスタアプリケーションの両方で、共用バッファの対応づけまたはメモリ常駐化が行われます。

    切替え:

    何も行われません。


2

RDBシステム内のすべてのDSIをプレオープンしない場合

  1. HSproc.RUN.conbfを複写します。

  2. RDBシステム内のすべてのDSIについて、共用バッファとの対応づけまたはメモリ常駐化が行われるように、HSproc.RUN.conbfを編集します。

    状態遷移時の動作を以下に示します。

    立上げ:

    運用系のクラスタアプリケーションでは、共用バッファとの対応づけまたはメモリ常駐化が行われます。待機系のクラスタアプリケーションでは、何も行われません。

    切替え:

    待機系のクラスタアプリケーションが運用系のクラスタアプリケーションに切り替わるときに、RDBシステム内のすべてのDSIについて、共用バッファとの対応づけまたはメモリ常駐化が行われます。


3

RDBシステム内にプレオープンするDSIとプレオープンしないDSIが混在する場合(ホットスタンバイ機能を利用する場合のみ)

  1. HSproc.WAIT.conbfを複写します。

  2. プレオープンするDSIについて、共用バッファとの対応づけまたはメモリ常駐化が行われるように、HSproc.WAIT.conbfを編集します。

  3. HSproc.RUN.conbfを複写します。

  4. プレオープンしないDSIについて、共用バッファとの対応づけまたはメモリ常駐化が行われるように、HSproc.RUN.conbfを編集します。

    状態遷移時の動作を以下に示します。

    立上げ:

    運用系のクラスタアプリケーションでは、プレオープンするDSIおよびプレオープンしないDSIについて、共用バッファとの対応づけまたはメモリ常駐化が行われます。待機系のクラスタアプリケーションでは、プレオープンするDSIについて、共用バッファとの対応づけまたはメモリ常駐化が行われます。

    切替え:

    待機系のクラスタアプリケーションが運用系のクラスタアプリケーションに切り替わるときに、プレオープンしないDSIについて、共用バッファとの対応づけまたはメモリ常駐化が行われます。

サブプロシジャの登録操作の手順を以下に示します。

上記登録例3のサブブロシジャの登録を行う場合

cd /opt/FSUNrdb2b/etc
mkdir rdbsys1
cp /opt/FJSVsymhs/demo/HSproc.WAIT.conbf  /opt/FSUNrdb2b/etc/rdbsys1
cp /opt/FJSVsymhs/demo/HSproc.RUN.conbf   /opt/FSUNrdb2b/etc/rdbsys1
vi /opt/FSUNrdb2b/etc/rdbsys1/HSproc.WAIT.conbf 
vi /opt/FSUNrdb2b/etc/rdbsys1/HSproc.RUN.conbf 

[HSproc.WAIT.conbf]

#!/bin/sh
#-----------------------------------------------------------------#
# Symfoware/RDB Sub procedure
#
# HSproc.WAIT.conbf
#-----------------------------------------------------------------#
FILEDIR=/opt/FSUNrdb2b/etc/$RDBNAME

rdbcrbf -f $FILEDIR/w_crbuf.txt
rdbconbf -f $FILEDIR/w_conbuf.txt
# rdbresident -mon -f $FILEDIR/w_resident.txt

備考. DSIのメモリ常駐化を行う場合は上記のコメントを外します。また、待機系で事前メモリ常駐を行う場合は、sオプションを追記します。


[HSproc.RUN.conbf]

#!/bin/sh
#-----------------------------------------------------------------#
# Symfoware/RDB Sub procedure
#
# HSproc.RUN.conbf
#-----------------------------------------------------------------#
FILEDIR=/opt/FSUNrdb2b/etc/$RDBNAME

rdbcrbf -f $FILEDIR/r_crbuf.txt
rdbconbf -f $FILEDIR/r_conbuf.txt
# rdbresident -mon -f $FILEDIR/r_resident.txt

備考. DSIのメモリ常駐化を行う場合は上記のコメントを外します。