3.7.2 2世代分のRDエリアのシステムログを利用した回復
ここでは,次の図に示すように,オリジナルRDエリアで運用中にレプリカRDエリアのバックアップを取得したあと,レプリカRDエリアをカレントに変更して運用再開したときに障害が発生した場合の回復例について説明します。
前述の図の場合,オリジナルRDエリアとレプリカRDエリアの2世代分のシステムログとレプリカRDエリアのバックアップファイルを使って回復できます。回復は次の手順で実施します。以降,前述の図に示す(1)から(4)の手順について説明します。
- 〈この項の構成〉
(1) レプリカRDエリアのバックアップの取得
「レプリカRDエリアのバックアップの取得」と同じ操作をします。操作内容については,「レプリカRDエリアのバックアップの取得」を参照してください。
(2) カレントRDエリアの変更
ここでは,運用上,カレントRDエリアをレプリカRDエリアに設定します。
-
オリジナルRDエリアの静止化(バックアップ閉塞化)
-
ペアボリュームの分離
-
レプリカRDエリアの閉塞解除およびオープン
-
カレントRDエリアの変更
-
オリジナルRDエリアの静止化解除
(a) オリジナルRDエリアの静止化(バックアップ閉塞化)
オリジナルRDエリアとレプリカRDエリア用にペアボリューム化されているものを,レプリカRDエリアへ物理的にアクセスできるように,ペアボリュームを分離する必要があり,その前に,オリジナルRDエリアを閉塞状態にしておきます。これによって,バッファの内容が,オリジナルRDエリアに反映されます。ハードウェアでミラーリングを実現する場合は,同時に,レプリカRDエリアにも反映されます。次に,pdholdコマンドの実行例を示します。
- pdholdコマンドの実行例
pdhold -r RD01 -q 0 -b
(b) ペアボリュームの分離
ペアボリュームを分離し,バックアップ取得対象のレプリカRDエリアの実体へ物理的にアクセスできるようにします。ペアボリュームの分離は,ミラーリング機能を使って実現します。日立ディスクアレイシステムを使用している場合は,「日立ディスクアレイシステム使用時の注意事項および操作手順」を参照してください。
(c) レプリカRDエリアの閉塞解除およびオープン
カレントRDエリアの変更のために,カレントに設定予定のレプリカRDエリアの閉塞状態を解除し,オープン状態にします。次に,解除およびオープンに使うpdrelsコマンドの実行例を示します。
- pdrelsコマンドの実行例
pdrels -r RD01 -q 1 -o
(d) カレントRDエリアの変更
カレントRDエリアをオリジナルからレプリカRDエリアへ変更します。変更には,pddbchgコマンドを使用します。次に,pddbchgコマンドの実行例を示します。
- pddbchgコマンドの実行例
pddbchg -r RD01 -q 1
カレントの変更が終了すると,カレントに指定されたレプリカRDエリアを使って更新業務を再開できます。
(e) オリジナルRDエリアの静止化解除
オリジナルRDエリアの静止化をpdrelsコマンドで解除します。静止化解除後,オリジナルRDエリアにアクセスしない場合は,オリジナルRDエリアをpdholdコマンドで閉塞かつクローズ状態にしておきます。次に,pdrelsコマンド,およびpdholdコマンドの実行例を示します。
- pdrelsコマンドの実行例
pdrels -r RD01 -q 0
- pdholdコマンドの実行例
pdhold -r RD01 -q 0 -c
(3) オリジナルとレプリカの2世代分のシステムログを利用した回復
カレントRDエリアをレプリカRDエリアに設定して業務を運用している間に,レプリカRDエリアで障害が発生した場合には,「レプリカRDエリアのバックアップの取得」で取得してあるバックアップファイルと,オリジナルおよびレプリカの2世代分のシステムログを利用してカレントであるレプリカRDエリアを回復することができます。回復は,次の手順で実施します。
-
レプリカRDエリアのクローズ
-
障害の発生したレプリカRDエリアのハードディスクの取り替え
-
ログのアンロード
-
カレントのレプリカRDエリアの回復
以降,操作について説明します。
(a) レプリカRDエリアのクローズ
ここでは,障害によって,レプリカのハードディスクが破壊されたと考え,新しいハードディスクに取り替えて対応することにします。そのため,取り替え前には,カレントであるレプリカRDエリアをクローズしておく必要があります。RDエリアのクローズには,pdcloseコマンドを使用します。このとき,-qオプションにレプリカRDエリアの世代番号1を指定します。次に,pdcloseコマンドの実行例を示します。
- pdcloseコマンドの実行例
pdclose -r RD01 -q 1
(b) 障害の発生したレプリカRDエリアのハードディスクの取り替え
ハードディスクを新しいものに取り替えます。取り替えたあと,マニュアル「HiRDB システム運用ガイド」の「ディスク障害が発生したときの対処方法」で示すRDエリアの回復の直前までの手順を実施しておく必要があります。ハードディスクそのものの取り替え方法については,ハードディスクなどのマニュアルを参照してください。
(c) ログのアンロード
ハードディスクの取り替えが完了したら,オリジナルとレプリカのRDエリアを障害発生前の状態まで回復します。回復には,システムログのアンロードファイルが必要です。アンロードファイルは,pdlogunldコマンドを使って取得します。次に,pdlogunldコマンドの実行例を示します。
- pdlogunldコマンドの実行例
pdlogunld -d sys -s bes1 -g logfg02 -o /uldir/ulog02
(d) カレントのレプリカRDエリアの回復
RDエリアの回復にはpdrstrコマンドを使用します。pdrstrコマンドの-bオプションには「レプリカRDエリアのバックアップの取得」で取得したバックアップファイルを指定し,-lオプションには「ログのアンロード」で取得したアンロードファイルを指定します。また,-xオプションに0を指定します。これによって,オリジナルRDエリアのシステムログも利用して回復できるようになります。次に,2世代分のシステムログを利用して回復する場合のpdrstrコマンドの実行例を示します。
- pdrstrコマンドの実行例
pdrstr -m /hirdb/rdarea/rdmast/rdmast01 -b /bkdir/bkup01 -l /uldir/ulog02 -r RD01 -q 1 -x 0
(4) 回復後のレプリカRDエリアのバックアップの取得
(a) レプリカRDエリアのバックアップの取得
障害回復後に,回復後のレプリカRDエリアのバックアップファイルを取得しておくことをお勧めします。バックアップは,pdcopyコマンドを使用して取得します。このとき,-qオプションに取得するレプリカRDエリアの世代番号1を指定して実行します。次に,pdcopyコマンドの実行例を示します。ここでは,カレントRDエリアの変更によるマスタディレクトリ用RDエリアおよびデータディクショナリ用RDエリアの内容の更新があったため,これらのRDエリアのバックアップも取得する指定をしています。
- pdcopyコマンドの実行例
pdcopy -m /hirdb/rdarea/rdmast/rdmast01 -b /bkdir/bkup03 -r MAST,DDIC,RD01 -q 1
バックアップの取得方法については,マニュアル「HiRDB システム運用ガイド」を参照してください。
(b) ペアボリュームの生成
レプリカRDエリアで業務を行った場合,カレントであるレプリカボリュームのデータをオリジナルのボリュームへ反映させる必要があります。日立ディスクアレイシステムを使用している場合は,「日立ディスクアレイシステム使用時の注意事項および操作手順」を参照してください。