ソフトウェア・レプリケーションでハードウェアの鎖を断つ
著者:Chris Evans
Storage Magazine 2014年10月号より
ハードウェアベースのレプリケーションは、成熟し、かつ効果の高い技術である。と同時に、高価で大きな制限のある技術でもある。
ストレージアレイベースのレプリケーションは、災害復旧戦略の重要な要素であるデータのコピーを作成する際の王道と考えられてきた。しかし、アプリケーション配備方法が最近になって変わったということは、データ保護がこれまでとは違った形で実現できる、ということだ。つまり、ソフトウェアによるデータ保護である。ハードウェアベースのレプリケーションによる様々な問題や制限も、高い柔軟性と幅広いデータ保護方法の選択肢を持つソフトウェア・ソリューションであれば、解決できる。
アレイベースの技術
アレイベースのレプリケーションは、今日SANストレージとして知られている。市場に出てからの歴史は、Integrated Cached Disk Array(ICDA)と同じくらい長い。アレイベースのレプリケーションは、ディスク、キャッシュメモリー、ファームウェアを組み合わせて最適化されたI/O及び、ある地点から別の地点へのレプリケーションを提供する。
EMCのSymmetrix Remote Data Facility(SRDF)や、日立のTrueCopyのような機能は、IBMのメインフレームストレージにおいて使用されたピアツーピア・コピーを進化させたことにより、歴史に名を残すものとなった。これらは、I/Oサブシステムと呼ばれるハードウェアを使ってデータをレプリケートする技術である。アレイベースのレプリケーションは、データの複製という重労働を自分が肩代わりすることにより、CPUの負荷を取り除いた。この機能は、沢山の際立った利点を提供した(そして今でも提供している)。
●作業負荷のオフロード
アレイはレプリケーションのすべてのタスクの負荷を肩代わりし、ホストのCPUとメモリーリソースを節約する。
●データの整合性
アレイは書き込み順の正確性を守る役割を持っている。データが他の場所にコピーされる際、更新を行ってデータの整合性を保証している。
●パフォーマンス
アレイは(レプリケーション元、レプリケーション先双方の)不揮発性メモリーにI/Oをキャッシュすることができ、それにより同期、非同期転送でのパフォーマンスを向上させている。
●粒度
アレイは、単一LUNまたはLUNグループ(通常、コンシステンシー・グループと呼ばれる)またはアレイ全体を複製し、フェールオーバーに対処できる。
●データの完全性
データがフェールオーバーした場合(運用がターゲット・アレイに移った時)、アレイはデータの変更を追跡し、フルの再同期なしで変更分だけをプライマリーサイトに戻すことができる。これはフルのフェールオーバー・シナリオにおいてはきわめて重要である。「切り戻し」処理が(フルの再同期を実行しなければならず)しばらくの間DR無防備の状態の中で行われることがあるからだ。
●最適化
レプリケーション処理では、一般的にロケーション間の帯域は、更新データをトラック(トラックと言うと、全てが回転ディスク上のトラックだったメインフレームの時代を思い出す )あるいはブロックとして下層アークテクチャー内のブロックサイズに基づいて最適化される。
●スケール効率
アレイレベルのフェールオーバーでは、多数のサーバーのデータを非常に短時間の内に遠隔地にレプリケートし、使えるようにできる。この機能はスクリプトと組み合わせると大規模環境で便利だ。多数のストレージ管理者がフェールオーバー処理に関わらなくてもよくなるからだ。
これら少なからぬ利点にもかかわらず、アレイベースのレプリケーションには、いくつか重大な欠点がある。
●コスト
ベンダーが一般的にテラバイト単位で課金しているので、レプリケーションは高価なソリューションになりがちだ。そのため、このソリューションは、絶対にレプリケートしなければならないデータのみに適用を絞らなければならない。レプリケーションはまた高価なネットワークを必要とする。多くの場合、専用のファイバーチャネル間に実装されるが、このファイバーチャネルが高価なのだ。
●独自機能
アレイベースのソリューションはそれぞれがベンダー独自のものであり、ベンダーが混在した環境についてはサポートしない。レプリケーションの設計は通常、データの移動をブロックまたはトラックレベルで行う、下層物理アーキテクチャーを利用している。このことは、データをあるベンダーの装置から別なベンダーの装置へは移動できないことを意味し、ベンダーによるユーザーの囲い込みになっている。
●複雑さ
アレイベースのレプリケーションでは、パフォーマンスを上げるために、ローカルの不揮発性メモリーをキャッシュI/Oとして使う。スナップショット、クローンなど付加価値機能もレプリケーションの枠内で管理しなければならず、往々にして複雑な構成になりがちだ。このことは、障害処理やソフトウェアのバグによって現在の状態が混乱に陥らない限りは、普通は問題にならないのだが。
●クラッシュコピー
アレイベースのレプリケーションではエージェントが存在しないため、データが何であるかは認識しておらず、完璧な書き込み順を保ちながらコピーを行ってはいるものの、ただブロックをロケーション間で移動しているだけなのだ。これは、フェールオーバーが起こった場合、システムではサーバーそのものがクラッシュしたかのように映り、システムが再起動されるため、データの破損や長時間のブートを引き起こす可能性があるということだ。
●粒度
ブロックベースのシステムにおけるレプリケーションの最小レベルはLUNだが、仮想環境では複数の仮想マシン(VM)をカプセル化することができる。たった一つのLUNのフェールオーバーも、その必要があろうがなかろうが、結果的には全VMのフェールオーバーをすることになる。(ファイルベースのシステムは、ファイルレベルでレプリケーションを行うため、これよりはましな粒度を提供する。)
アレイベースのレプリケーションのオプションは、対処する問題によって多くのカテゴリーに分かれている。
(後編に続く)
Copyright 2000 - 2014, TechTarget. All Rights Reserved, *
この翻訳記事の翻訳著作権はJDSFが所有しています。
このページに掲載されている記事・写真・図表などの無断転載を禁じます。
著者略歴:Chris Evansは独立系コンサルタント兼Langton Blueの設立メンバー。