同期型レプリケーションは、以下の手順で行います。
swsrpstartsyncコマンドで同期処理を開始します。開始した同期処理のキャンセルは、swsrpcancelコマンドで行います。
swsrpstatコマンドで等価性維持状態を確認したあと、swsrpmakeコマンドで同期処理を一時停止し、複製元ボリュームの複製を作成します。
更新(差分)データをコピーする場合は、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モードを使用した同期型レプリケーション運用を行う場合は、swsrpstartsyncコマンド、swsrpmakeコマンドのほかにswsrpchsyncコマンドを使用します。実行状態を確認するには、swsrpstatコマンドを使用します。
StackモードまたはConsistencyモードを使用した同期型レプリケーション運用の流れを以下に示します。
図7.35 同期型レプリケーションの流れ(Stackモード/Consistencyモードの場合)
ポイント
転送モードをConsistencyモードからThroughモードへ変更するときは、実行状態が等価性維持状態であることを確認してから、モード変更操作を実施してください。モード変更直後は、実行状態が等価性維持状態にならないことがあります。転送モードを変更したときは、実行状態が等価性維持状態であることを確認してから複製作成してください。
転送モードをStackモードからThroughモードへ変更するときは、複製進捗率が100%であることを確認してから、モード変更操作を実施してください。複製進捗率が100%でない状態(未転送のデータが残存している状態)でもモードを変更できますが、転送モードを変更したあとに未転送のデータを転送するため、Throughモードの期間が長くなります。Throughモードはコピー処理を優先してWrite要求の応答を遅延させる場合があるため、Throughモードの期間が最短となる運用を推奨します。
Recoveryモード
筐体間パス異常状態(halt状態)から復旧した場合に、コピー処理を再開する動作に関するモードです。
モード | 説明 |
---|---|
Automatic Recovery | 筐体間のFCRAパスが正常に復旧した場合、RECセッションがhalt状態から正常な状態に自動的に遷移し、コピー処理が再開するRecoveryモードです。 |
Manual Recovery | 筐体間のFCRAパスが正常に復旧しても、RECセッションはhalt状態のままでコピー処理が再開しないRecoveryモードです。コピーの再開は手動で行います。このモードは、スタンバイデータベースの運用などで使用されます。 |
ポイント
haltの状態によって、RECの再開方法が異なります。詳細は、「9.4.2.4 リモートコピー処理で異常(halt)が発生した場合の対処方法」を参照してください。
Splitモード
同期転送モードでRECを行っている場合に、筐体間パス異常状態(halt状態)が発生したときの、コピー元ボリュームへのWrite動作に関するモードです。
モード | 説明 |
---|---|
Automatic Split | 筐体間のFCRAパスの全閉塞が発生してhalt状態になった場合、複写元ボリュームへのWriteを通常とおり成功させるSplitモードです。 |
Manual Split | 筐体間のFCRAパスの全閉塞が発生してhalt状態になった場合、複写元ボリュームへのWriteを許可しない(エラーとする)Splitモードです。 |
コピー方向の反転
コピー方向の反転機能を利用すると、センターのサイト切替えをスムーズに実施できます。
以下に使用例を示します。
サイトAで運用していて、サイトAからサイトBへのRECが行われているとします。
図7.36 サイトAからサイトBへRECを行っている場合
サイト切替えを行うために、swsrpmakeコマンドを実行してサイトBに複製を作成します。そのあと、サイトAの運用を停止します。
図7.37 複製作成コマンドでサイトBに複製を作成した場合
swsrprevsyncコマンドを実行して、コピー方向を反転させます。
図7.38 同期処理反転コマンドを実行した場合
サイトBの運用を開始します。
この段階では、同期処理はサスペンド状態なので、サイトBのボリュームに行われた更新データはサイトAに反映されません。
図7.39 サイトBの運用を開始した場合(同期処理サスペンド状態)
サイトBからサイトAの同期処理を開始(再開)します。同期処理のサスペンド中にサイトBのボリュームに行われた更新が、差分コピーによって、サイトAへ反映されます。
図7.40 サイトBの運用を開始した場合(同期処理再開)
初期コピースキップ機能は、回線容量不足のため初期コピーを実施できない場合に使用します。
テープ搬送によって初期コピースキップを行う例を以下に示します。
サイトAの運用が停止されているとします。
図7.41 サイトAの運用が停止されている場合
初期コピースキップ機能を使って同期処理を開始します。このとき、RECセッションが設定されますが、複製確立状態となります。複写先ボリュームにデータはコピーされません。
図7.42 初期コピースキップ機能による同期処理を開始した場合
複写元ボリュームのデータをテープへバックアップします。
図7.43 複写元のデータをテープへバックアップした場合
テープ媒体をサイトBに搬送します。また、サイトAの業務を再開します。
図7.44 サイトAの運用を再開した場合
テープ媒体のデータを複写先ボリュームに復元します。この時点で複写先ボリュームのデータは運用再開前の複写元ボリュームのデータと同一になります。
図7.45 テープを複写先へ復元した場合
Remainモードで同期処理を再開します。Remainモードで同期処理を再開することで、複写元ボリュームの更新データだけが複写先ボリュームへ反映されます(Remainモードを使用しない場合は複写元ボリュームの全データがコピーされます)。
図7.46 Remainモードで同期処理を再開した場合
コンカレントサスペンド機能は、複数のEC/RECセッションを同時にサスペンドするETERNUS ディスクアレイの機能です。本機能によって、複数のボリュームで構成されているデータベースなどのコピーを、整合性のとれた状態で容易に採取できます。
以下に、ETERNUS ディスクアレイ内部で行われる動作を示します。
図7.47 ETERNUS ディスクアレイ内部の動作
コンカレントサスペンド機能での複製作成は、swsrpmakeコマンドに-Xconcurオプションを指定することで行います。
転送モードがConsistencyモードの際にコンカレントサスペンドを行う場合、複製作成処理時の一時的なモード変更が不要になります(下図)。したがって、Consistencyモードでコンカレントサスペンドを使用する場合の操作手順は、Throughモードおよび同期モードと同じになります。
図7.48 Consistencyモードの場合
注意
コンカレントサスペンドを同時に実施できるペア数の上限は、ETERNUS ディスクアレイの仕様に準拠します。
データ量が多い場合、通信回線の状態が良好でない場合、筐体間同期型レプリケーション(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/opt/FJSVswsrp/data/DEFAULT/check.ini
クラスタ運用の場合
/etc/opt/FJSVswsrp/<論理ノード名>/data/DEFAULT/check.ini
セクション名 | キー名 | 値 |
---|---|---|
[check] | ConcurCheckTimeout | コンカレントサスペンド機能のタイムアウト値を、秒単位で設定します。設定できる値は、1~2147483647です。 |
[コンカレントサスペンド機能のタイムアウト値を120秒とした場合の例]
[check] ConcurCheckTimeout=120 |
コンカレントサスペンド機能のタイムアウト値の設定ファイルを作成しない場合は、デフォルトの60秒になります。
筐体間同期型レプリケーション(REC機能)のConsistencyモードでREC Diskバッファーを使用している場合は、REC Diskバッファーに未転送データがないことを確認してから、コンカレントサスペンドを実行してください。
REC Diskバッファーに未転送データがある状態でコンカレントサスペンドを実行した場合、タイムアウトが発生することがあります。
REC Diskバッファーのデータ量は、swsrprecbuffstatコマンドに-Lオプションを指定して実行したとき、DiskRate欄で確認できます。
Destination Access Permission機能とは、コピー途中で不当な状態の複写先ボリュームを、ユーザーが参照することを抑止する機能です。
複写元ボリュームから複写先ボリュームへの同期処理(EC/REC)を開始し、全面コピーまたは差分コピーが完了すると、等価性維持状態になります。
等価性維持状態になると、複写元ボリュームに対する更新が複写先ボリュームに逐次反映されるため、複製先ボリュームの状態が不当になることがあります。
このとき、不当な状態の複写先ボリュームをユーザーが参照することを抑止するために、Destination Access Permission機能を使用します。
Destination Access Permission機能を設定する場合は、swsrpstartsyncコマンドに-Xdaオプションを指定して実行します。swsrpcancelコマンドで動作中の複製処理を停止するまで、複写先ボリュームに対して、更新(WRITE操作)だけでなく参照(READ操作)もできなくなります。
設定を変更する場合は、swsrpcancelコマンドで動作中の複製処理を停止してから、swsrpstartsyncコマンドを再実行してください。
なお、アクセスの抑止状況は、swsrpstatコマンドで確認できます。