同期型レプリケーションは、以下の手順で行います。
「12.4.2.1 swsrpstartsync(複製開始コマンド)」で同期処理を開始します。開始した同期処理のキャンセルは、「12.4.2.4 swsrpcancel(複製解除コマンド)」で行います。
「12.4.2.3 swsrpstat(運用状況表示コマンド)」で等価性維持状態を確認したあと、「12.4.2.2 swsrpmake(複製作成コマンド)」で同期処理を一時停止し、複製元ボリュームの複製を作成します。
更新(差分)データをコピーする場合は、「12.4.2.1 swsrpstartsync(複製開始コマンド)」で同期処理を再開します。
筐体内同期型レプリケーションでは、ETERNUS ディスクアレイのEC機能を用いて、複写元ボリュームから複写先ボリュームに複製を作成します。
EC機能は、複写元ボリュームへのWriteに同期して複写先ボリュームにコピーするモード(同期モード)で動作します。
EC機能では、サスペンド状態からコピー方向を反転できます。
筐体間同期型レプリケーションでは、ETERNUS ディスクアレイのREC機能を用いて、複写元ボリュームから複写先ボリュームに複製を作成します。
REC機能には、コピーの動作モードに以下の3種類があり、運用に合わせて動作モードを指定できます。
転送モード
Recoveryモード
Splitモード
REC機能では、サスペンド状態からコピー方向を反転できます。
転送モード
RECのデータ転送方法に関するモードです。
転送方式 | 転送モード | 説明 |
---|---|---|
同期転送方式 | 同期 | サーバからのWrite要求に対し、コピー元ボリュームへのデータの書込みとコピー先ボリュームへのコピーを実行してから完了を返します。 データコピーをコピー元へのWriteと同期させることで、コピー完了時のコピー元ボリューム/コピー先ボリュームのデータ内容を保証します。 サーバからのWriteアクセスへの影響が大きいため、遅延の短いサイト内でのRECに向いています。 |
非同期転送方式 | Stack | 更新されたブロック位置だけを記録してからサーバへ完了を返すため、サーバへのレスポンス影響は小さくなります。独立した転送エンジンを使用して、記録したブロックのデータを転送します。 回線のバンド幅が細い場合でもコピーを実行できますが、未転送のデータが大量に蓄積されることがあります。 |
Consistency | コピー先のETERNUS ディスクアレイに対して、コピーセッション間での転送の順序性を保証します。データベースなど、複数の領域から構成されるコピーでミラーリングを行う運用に向いています。 本モードは、キャッシュメモリの一部をRECバッファーとして使用するモードです。コピーするデータのまとまりを送信用のRECバッファーへ「格納」してから、受信用のRECバッファーで転送されたデータを「展開」してコピー先へデータを転送します。 | |
Through | StackモードおよびConsistencyモードを停止(Stop/Suspended)する際に、未転送のデータを転送するためのモードです。 |
StackモードまたはConsistencyモードを使用した同期型レプリケーション運用を行う場合は、「12.4.2.1 swsrpstartsync(複製開始コマンド)」、「12.4.2.2 swsrpmake(複製作成コマンド)」のほかに「12.4.2.5 swsrpchsync(同期処理モード変更コマンド)」を使用します。実行状態を確認するには、「12.4.2.3 swsrpstat(運用状況表示コマンド)」を使用します。
StackモードまたはConsistencyモードを使用した同期型レプリケーション運用の流れを以下に示します。
注意
等価性維持状態のRECの動作モードを変更した場合は、動作モード変更後に、再び等価性維持状態になるのを待ち合わせる必要があります。
Recoveryモード
筐体間パス異常状態(halt状態)から復旧した場合に、コピー処理を再開する動作に関するモードです。
モード | 説明 |
---|---|
Automatic Recovery | 筐体間のFCRAパスが正常に復旧した場合、RECセッションがhalt状態から正常な状態に自動的に遷移し、コピー処理が再開するRecoveryモードです。 |
Manual Recovery | 筐体間のFCRAパスが正常に復旧しても、RECセッションはhalt状態のままでコピー処理が再開しないRecoveryモードです。コピーの再開は手動で行います。このモードは、スタンバイデータベースの運用などで使用されます。 |
Splitモード
同期転送モードでRECを行っている場合に、筐体間パス異常状態(halt状態)が発生したときの、コピー元ボリュームへのWrite動作に関するモードです。
モード | 説明 |
---|---|
Automatic Split | 筐体間のFCRAパスの全閉塞が発生してhalt状態になった場合、複写元ボリュームへのWriteを通常とおり成功させるSplitモードです。 |
Manual Split | 筐体間のFCRAパスの全閉塞が発生してhalt状態になった場合、複写元ボリュームへのWriteを許可しない(エラーとする)Splitモードです。 |
コピー方向の反転
コピー方向の反転機能を利用すると、センターのサイト切替えをスムーズに実施できます。
以下に使用例を示します。
サイトAで運用が行われており、サイトAからサイトBへのRECが行われているとします。
サイト切替えを行うために、「12.4.2.2 swsrpmake(複製作成コマンド)」を実行してサイトBに複製を作成します。そのあと、サイトAの運用を停止します。
「12.4.2.6 swsrprevsync(同期処理反転コマンド)」を実行して、コピー方向を反転させます。
サイトBの運用を開始します。
この段階では、同期処理はサスペンド状態なので、サイトBのボリュームに行われた更新データはサイトAに反映されません。
サイトBからサイトAの同期処理を開始(再開)します。同期処理のサスペンド中にサイトBのボリュームに行われた更新が、差分コピーによって、サイトAへ反映されます。
初期コピースキップ機能は、回線容量不足のため初期コピーを実施できない場合に使用します。
テープ搬送によって初期コピースキップを行う例を以下に示します。
サイトAの運用が停止されているとします。
初期コピースキップ機能を使って同期処理を開始します。このとき、RECセッションが設定されますが、複製確立状態となります。複写先ボリュームにデータはコピーされません。
複写元ボリュームのデータをテープへバックアップします。
テープ媒体をサイトBに搬送します。また、サイトAの業務を再開します。
テープ媒体のデータを複写先ボリュームに復元します。この時点で複写先ボリュームのデータは運用再開前の複写元ボリュームのデータと同一になります。
Remainモードで同期処理を再開します。Remainモードで同期処理を再開することで、複写元ボリュームの更新データだけが複写先ボリュームへ反映されます(Remainモードを使用しない場合は複写元ボリュームの全データがコピーされます)。
コンカレントサスペンド機能は、複数のEC/RECセッションを同時にサスペンドするETERNUS ディスクアレイの機能です。本機能により、複数のボリュームで構成されているデータベースなどのコピーを、整合性のとれた状態で容易に採取できます。
以下に、ETERNUS ディスクアレイ内部で行われる動作を示します。
コンカレントサスペンド機能での複製作成は、「12.4.2.2 swsrpmake(複製作成コマンド)」に-Xconcurオプションを指定することで行います。
転送モードがConsistencyモードの際にコンカレントサスペンドを行う場合、複製作成処理時の一時的なモード変更が不要になります(下図)。したがって、Consistencyモードでコンカレントサスペンドを使用する場合の操作手順は、Throughモードおよび同期モードと同じになります。
データ量が多い場合、通信回線の状態が良好でない場合、筐体間同期型レプリケーション(REC機能)のConsistencyモードでREC Diskバッファーを使用している場合は、サスペンドが完了せずにタイムアウトが発生することがあります。
REC Diskバッファーを使用している場合は、「7.5.2.3.2 REC Diskバッファー使用時のコンカレントサスペンド」を参照してください。
タイムアウトが発生すると、以下のメッセージが出力されます。
swsrp2709 コンカレントサスペンドに失敗しました。セッションID=[-]、理由=[timeout] または swsrp2709 Concurrent suspend failed. Session ID=[-], Reason=[timeout] |
このようなメッセージが出力される場合、コンカレントサスペンド機能のタイムアウト値を設定するファイルを作成して、タイムアウト値を変更します。ファイルは、複写元ボリュームが存在するサーバ上に、以下の名前で作成してください。
通常(非クラスタ)運用の場合
<環境設定ディレクトリ>\etc\repl\data\DEFAULT\check.ini |
クラスタ運用の場合
<論理ノード用環境設定ディレクトリ>\etc\repl\data\DEFAULT\check.ini |
セクション名 | キー名 | 値 |
---|---|---|
[check] | ConcurCheckTimeout | コンカレントサスペンド機能のタイムアウト値を、秒単位で設定します。設定できる値は、1~2147483647です。 |
[コンカレントサスペンド機能のタイムアウト値を120秒とした場合の例]
[check] ConcurCheckTimeout=120 |
コンカレントサスペンド機能のタイムアウト値の設定ファイルを作成しない場合は、デフォルトの60秒になります。
筐体間同期型レプリケーション(REC機能)のConsistencyモードでREC Diskバッファーを使用している場合は、REC Diskバッファーに未転送データがないことを確認してから、コンカレントサスペンドを実行してください。
REC Diskバッファーに未転送データがある状態でコンカレントサスペンドを実行した場合、タイムアウトが発生することがあります。
REC Diskバッファーのデータ量は、「12.4.1.4 swsrprecbuffstat(RECバッファー情報表示コマンド)」に-Lオプションを指定して実行したとき、“DiskRate”欄で確認できます。
Destination Access Permission機能とは、コピー途中で不当な状態の複写先ボリュームを、ユーザーが参照することを抑止する機能です。
複写元ボリュームから複写先ボリュームへの同期処理(EC/REC)を開始し、全面コピーまたは差分コピーが完了すると、等価性維持状態になります。
等価性維持状態になると、複写元ボリュームに対する更新が複写先ボリュームに逐次反映されるため、複製先ボリュームの状態が不当になる場合があります。
このとき、不当な状態の複写先ボリュームをユーザーが参照することを抑止するために、Destination Access Permission機能を使用します。
Destination Access Permission機能を設定する場合は、「12.4.2.1 swsrpstartsync(複製開始コマンド)」に-Xdaオプションを指定して実行します。「12.4.2.4 swsrpcancel(複製解除コマンド)」で動作中の複製処理を停止するまで、複写先ボリュームに対しては、更新(WRITE操作)だけではなく参照(READ操作)も実施不可能となります。
設定を変更する場合は、「12.4.2.4 swsrpcancel(複製解除コマンド)」で動作中の複製処理を停止してから、再度「12.4.2.1 swsrpstartsync(複製開始コマンド)」を実行してください。
なお、アクセスの抑止状況は、「12.4.2.3 swsrpstat(運用状況表示コマンド)」で確認することができます。