8.3.3 ステータスファイルの設計
ステータスファイルの設計方針について説明します。
(1) 設計方針
-
両系のファイルに障害が起きないように,A系とB系のファイルは別々のディスクに作成します。
-
ステータスファイルの容量不足によるHiRDBの異常終了を防ぐため,見積もったファイル容量よりも大きい容量の予備ファイルを幾つか作成してください。ステータスファイルは,容量が満杯になると予備ファイルとスワップしますが,満杯になったステータスファイルと予備ファイルの容量が同じ場合,スワップ先のファイルでも容量不足になり,HiRDBは異常終了します。そのため,例えばステータスファイルを6組作成する場合,そのうちの2組以上のファイル容量をほかのファイル容量より大きくすることをお勧めします。
-
各サーバマシンにユニット用ステータスファイルが必要です。
-
システムマネジャを除いた各サーバにサーバ用ステータスファイルが必要です。
-
A系とB系のファイルのレコード長及びレコード数を同じにしてください。
-
一つのユニットに作成できるユニット用ステータスファイルは1〜7組です。
-
一つのサーバに作成できるサーバ用ステータスファイルは1〜7組です。
(2) 信頼性向上のための方針
-
ステータスファイルは3組(二重化×3=6ファイル)以上用意し,ディスク障害によってすべてのステータスファイルが障害とならないように配置します。
-
容量不足によるHiRDBの異常終了を防ぐため,ステータスファイルの容量は見積もった容量の1.2倍以上の容量を準備することをお勧めします。
-
ステータスファイルには,HiRDBの再開始処理でシステムの状態を回復するために必要な情報を格納しています。予備ファイルがない状態で現用ファイルに障害が発生すると,システムの状態が回復できません。したがって,常に予備ファイルがあるように運用し,現用ファイルの障害に備えてください。
(a) お勧めする構成
ディスク障害発生時から回復時までの安全性を考えると,ステータスファイルは四つのディスクに6組(二重化×6=12ファイル)用意し,次の図のように配置することをお勧めします。また,片系運転中に正常な系に障害が発生すると,HiRDBを再開始できなくなるため,ステータスファイルの片系運転は適用しない(pd_syssts_singleoperation及びpd_sts_singleoperationにstopを指定)ことをお勧めします。
四つのディスクにステータスファイルを6組配置する例を次の図に示します。
- 〔説明〕
-
このように配置すると,あるディスクで障害が発生した後に,更に別のディスクで障害が発生しても,残りの二つのディスクに両系とも正常なファイルが残るため,障害が発生していないディスクのステータスファイルを現用としてHiRDBを稼働し続けることができます。例えば,ディスクAに障害が発生し,その後ディスクBにも障害が発生した場合でも,ディスクC及びDにある両系のステータスファイル(sts-3aとsts-3b)を現用ファイルとして稼働し続けます。この状態で,更に現用ファイルの片系に障害が発生した場合,HiRDBは異常終了しますが,現用ファイルの片系ファイルが正常のため,障害が発生したディスクのどれか一つを回復するとHiRDBを再開始できます。
(3) ステータスファイルの定義
pdstsinitコマンドで作成したステータスファイルをどの論理ファイルに対応させるかをpd_syssts_file_name_1〜7及びpd_sts_file_name_1〜7オペランドで定義します。
ユニット用ステータスファイルは,pd_syssts_file_name_1〜7オペランドで定義します。サーバ用ステータスファイルは,pd_sts_file_name_1〜7オペランドで定義します。
なお,pd_syssts_file_name_2〜7オペランド又はpd_sts_file_name_2〜7オペランドに,実体のないステータスファイルを定義しておくと,HiRDB稼働中にステータスファイルを追加できます。ただし,この場合,次に示すオペランドを指定しておく必要があります。
- ユニット用ステータスファイルの場合
-
-
pd_syssts_initial_error
-
pd_syssts_last_active_file
-
- サーバ用ステータスファイルの場合
-
-
pd_sts_initial_error
-
pd_sts_last_active_file
-
(4) ステータスファイルの片系運転
予備ファイルがない状況で現用ファイルの片系に障害が発生した場合,正常な系(片方の系)だけで処理を続行することをステータスファイルの片系運転といいます。ステータスファイルが片系運転になると,KFPS01044-Iメッセージが出力されます。
片系運転中に現用ファイルに障害が発生すると,HiRDBを再開始できなくなるため,ステータスファイルの片系運転の適用は推奨しません。ステータスファイルの組数を増やし,予備ファイルがない状況が発生しないような運用をしてください。
なお,ステータスファイルの片系運転に対し,両方の系のステータスファイルで処理を続行すること(通常の処理形態)をステータスファイルの両系運転といいます。
(a) ステータスファイルの片系運転適用のメリット及びデメリット
- メリット
-
予備ファイルがない状況で現用ファイルの片系に障害が発生しても,処理を続行できます。このため,ステータスファイルの障害によってHiRDBが停止する可能性が低くなります。
- デメリット
-
片系運転中に正常な系に障害が発生したり,又はステータスファイルの更新中にHiRDBが異常終了したりすると,現用ファイルの内容が失われるため,HiRDBを再開始できなくなります。
(b) 指定方法
ユニット用ステータスファイルの片系運転をする場合は,ユニット制御情報定義でpd_syssts_singleoperation = continueを指定してください。サーバ用ステータスファイルの片系運転をする場合は,サーバ定義でpd_sts_singleoperation = continueを指定してください。なお,pd_syssts_singleoperationとpd_sts_singleoperationの指定値を同じにしてください。
-
ほかのオペランドとの関連
pd_syssts_singleoperation及びpd_syssts_initial_errorオペランド,又はpd_sts_singleoperation及びpd_sts_initial_errorオペランドの指定値の組み合わせによって,HiRDBの起動時にステータスファイルの障害を検知した場合のHiRDBの動作が決定します。したがって,これら二つのオペランドの指定値は一緒に考えるようにしてください。HiRDBの起動時にステータスファイルの障害を検知した場合のHiRDBの動作については,マニュアル「HiRDB システム定義」の,pd_syssts_initial_error又はpd_sts_initial_errorオペランドの説明を参照してください。
(c) 適用の目安
ステータスファイルの片系運転の適用の目安を次に示します。
-
HiRDBが再開始できない状態を避けることを重視した運用の場合は,適用しないでください。
-
HiRDBがオンラインダウンとなる状態を避けることを重視した運用の場合は,適用してください。
-
系切り替え構成を適用している場合など,HiRDBの再開始を自動で行う運用の場合は,適用しないでください。
(d) 片系運転適用時の注意
片系運転適用の有無によるHiRDBの動作及びHiRDB管理者の処置について次の表に示します。ステータスファイルに障害が発生したときの対処方法については,マニュアル「HiRDB システム運用ガイド」を参照してください。
条件 |
ステータスファイルの片系運転 (pd_syssts_singleoperation又はpd_sts_singleoperationオペランドの指定値) |
||
---|---|---|---|
適用する(continue指定) |
適用しない(省略又はstop指定) |
||
予備ファイルがある |
現用ファイルに障害が発生 |
HiRDBの動作 ステータスファイルをスワップします。 HiRDB管理者の処置 障害が発生したステータスファイルの障害対策をしてください。 |
|
現用ファイルの両系に,同時に障害が発生 |
HiRDBの動作 異常終了します。HiRDBは再開始できません。 HiRDB管理者の処置 マニュアル「HiRDB システム運用ガイド」の「ステータスファイルに障害が発生したときの対処方法」を参照してください。 |
||
予備ファイルがない |
現用ファイルの片系に障害が発生 |
HiRDBの動作 片系運転を適用し,処理を続行します。 HiRDB管理者の処置 早急に予備のファイルを作成して,両系運転の状態に戻してください。 |
HiRDBの動作 異常終了します。 HiRDB管理者の処置 予備ファイルを作成し,HiRDBを再開始してください。 |
現用ファイルの両系に,同時に障害が発生 |
HiRDBの動作 異常終了します。HiRDBは再開始できません。 HiRDB管理者の処置 マニュアル「HiRDB システム運用ガイド」の「ステータスファイルに障害が発生したときの対処方法」を参照してください。 |
||
片系運転中に,正常な系に障害が発生 |
HiRDBの動作 異常終了します。HiRDBは再開始できません。 HiRDB管理者の処置 マニュアル「HiRDB システム運用ガイド」の「ステータスファイルに障害が発生したときの対処方法」を参照してください。 |
− |
(凡例)−:該当しません。
(5) ステータスファイルの障害に関する注意事項(重要)
-
現用ファイルの両系に同時に障害が発生した場合,HiRDBが異常終了し,再開始できなくなります。対策として,物理ディスクの多重化(ミラーリング)が考えられます。
-
HiRDBの開始前に,現用ファイル(終了時の現用ファイル)を削除,又はpdstsinitコマンドでステータスファイルを初期化した場合,HiRDBは再開始できなくなります。