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

8.3.2 サブプロシジャの登録

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

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

サブプロシジャ名

処理内容

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

登録を行うノード

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

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

/opt/FJSVsymhs/demo/HSproc.rmwork

CapitalシステムおよびSatelliteシステムの各ノード

バッファ結合とメモリ常駐用サブプロシジャ

DSIごとに以下の処理を行います。

  • 共用バッファの開設と共用バッファの対応関係の登録

  • DSIのメモリ常駐化

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

Satelliteシステムの各ノード

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

DSIのメモリ常駐化を行う場合は、バッファ結合とメモリ常駐用サブプロシジャをrdbresidentコマンドが有効になるように編集してください。

サブプロシジャが動作した時のSymfoware/RDBの処理については“2.3 Symfoware Serverと状態遷移の連携について”を参照してください。

共用バッファの詳細については、“8.5 共用バッファの設定”を参照してください。

注意

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

    • 引継ぎ先ノードでのrdbresidentコマンドの実行は、sオプション指定の有無により動作が異なります。sオプションを指定しない場合、メモリ常駐は、DSIが属するユーザロググループを、引継ぎ先ノードに組み込むときに行われ、引継ぎ処理が完了するときにメモリ常駐も完了します。sオプションを指定した場合、引継ぎ先ノードで事前にDSIのメモリ常駐化が行われます。事前にメモリ常駐が完了している分、引継ぎ処理は高速に行われます。
      rdbresidentコマンドの詳細については、“コマンドリファレンス”を参照してください。

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

  • HSproc.RUN.conbfは、すべてのSatelliteシステムで同じ内容にしてください。

  • 以下の操作を行った場合は、サブプロシジャを変更する必要があります。

    • DSIの追加・削除

    • バッファの開設・結合の変更

    • DSIのメモリ常駐化の変更

    • 作業ファイルのディレクトリ変更

    詳細は“8.7 サブプロシジャの変更”を参照してください。


サブプロシジャの登録例を以下に示します。

例1

作業用ファイルの削除用サブプロシジャを登録する場合

  1. HSproc.rmwork を複写します。

  2. 作業用ファイルの削除が行われるように、HSproc.rmworkを編集します。

    作業用ファイルは、システム用の動作環境ファイルのWORK_PATHに指定したディレクトリに作成されます。

    ディレクトリ配下のファイルをすべて削除するように編集してください。

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

    起動:

    CapitalシステムまたはSatelliteシステムの起動時に作業用ファイルの削除が行われます。

サブプロシジャの登録操作の手順
cd /opt/FSUNrdb2b/etc
mkdir rdbsys1
cp /opt/FJSVsymhs/demo/HSproc.rmwork /opt/FSUNrdb2b/etc/rdbsys1
vi /opt/FSUNrdb2b/etc/rdbsys1/HSproc.rmwork

[HSproc.rmwork]

#!/bin/sh
#---------------------------------------------------------------------#
# Symfoware/RDB Sub procedure
#
# HSproc.rmwork
#---------------------------------------------------------------------#
WORKDIR=/var/tmp/$RDBNAME

# rm -f $WORKDIR/SYMFORDB*

備考. rm行のコメントをはずします。

2

バッファ結合とメモリ常駐用サブプロシジャを登録する場合

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

  2. 共用バッファの開設と共用バッファの対応関係の登録、またはDSIのメモリ常駐化が行われるように、HSproc.RUN.conbfを編集します。
    rdbcrbfコマンド、rdbconbfコマンド、rdbresidentコマンドに指定する入力ファイルが存在するディレクトリを記述してください。

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

    起動:

    Satelliteシステムの起動時に共用バッファの開設と共用バッファの対応関係の登録、または、メモリ常駐化が行われます。

サブプロシジャの登録操作の手順
cd /opt/FSUNrdb2b/etc
mkdir rdbsys1
cp /opt/FJSVsymhs/demo/HSproc.RUN.conbf   /opt/FSUNrdb2b/etc/rdbsys1
vi /opt/FSUNrdb2b/etc/rdbsys1/HSproc.RUN.conbf 

[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のメモリ常駐化を行う場合は上記のコメントを外します。また、引継ぎ先ノードで事前メモリ常駐を行う場合は、sオプションを追記します。