検索
特集/連載

アプリを10倍高速化、フラッシュで仮想環境の性能を高める方法とは似て非なるフラッシュハイパーバイザーとキャッシュエンジン

キャッシュエンジンとフラッシュハイパーバイザーは、仮想環境の集約率を高め、アプリケーションを高速化する技術だ。これらのどちらが自社のニーズに合うかを判断する。

PC用表示 関連情報
Share
Tweet
LINE
Hatena

 フラッシュベースのハイパーバイザーが市場に出回り始めたが、フラッシュハイパーバイザーとキャッシュエンジンは同じ技術だという誤解があるようだ。両者は似通った技術ではあるが、そこには明確な違いが存在する。それは、キャッシュエンジンとフラッシュハイパーバイザーのどちらが自社のニーズに合うかを判断する上で重要な意味を持つ。

 まず類似点を見ていこう。キャッシュエンジンとフラッシュハイパーバイザーはいずれも、「VMware vSphere」ハイパーバイザーとその先進的機能(vMotion、DRS、SRM、HAなど)に可用性をもたらす。また両技術は、基幹アプリケーションを最大で10倍高速化し、仮想マシン(VM)の密度を約3倍に高めることができる。

 両技術はバックエンドのストレージに依存しない。また、ライトスルー機能によって書き込み処理の負荷を軽減することによって、ストレージネットワークのトラフィックを大幅に減少させる。これにより、バックエンドのストレージへの書き込み処理が最適化され、書き込みパフォーマンスが向上する。また、アクセラレータ機能を搭載していないサーバがバックエンドストレージのリードキャッシュを利用することも可能になる。

 VMware vSphere環境では、キャッシュエンジンとフラッシュハイパーバイザーの両製品に対応した統合管理ツールが「vCenter Server」用のプラグインとして用意されている。いずれの製品もライトスルーキャッシング機能を備えるため、サーバ側のキャッシュ機能をリードオンリーキャッシュとして利用できる。

キャッシュエンジン

 キャッシュエンジンは各サーバを個別に高速化し、物理ホストと仮想ホストの両方に対応できる。ライトバックキャッシュ機能を提供する製品としては、米SanDiskの「FlashSoft」や米Fusion-ioの製品などがある。これらは2ノードクラスタ用のミラーリング機能を備え、各ノードのデータを他のノードがミラーリングすることによってデータを保護する。

 永続キャッシュ機能を提供する製品もある。これは、サーバの障害や再起動といった事態が発生した場合でも、データが保護されるということだ。HDDと似た機能だといえる。また最近では、非永続型サーバキャッシュを備えた製品も登場した。これらの製品では、データはメモリキャッシュ内にある場合と同様、一時的に保持されるだけで、サーバがダウンするなどの障害が発生するとデータが失われる。

 キャッシュエンジンの配備形態はさまざまだ。VMにエージェントソフトウェアを組み込む必要がある製品もあれば、VMアプライアンスとしてインストールされる製品もある。また、キャッシュエンジンがユーザーモジュールあるいはカーネルモジュールとしてハイパーバイザーに組み込まれる製品もある。

フラッシュハイパーバイザー

 フラッシュハイパーバイザーは市場に登場して間もない製品で、「Software Defined Storage」の一種であると見なされている。これらの製品は現在、クラスタ化された仮想環境内でのみ動作する。

 この技術は、ハイパーバイザークラスタ内の全てのソリッドステートリソースを単一のリソースとしてプールする。これにより、ソリッドステートリソースを利用するための抽象化レイヤーが作成される。これはCPUやメモリなどのリソースを抽象化する仕組みに近い。このアーキテクチャは、クラスタ化された環境で物理サーバを個別に高速化する手法とは大きく異なる。

 フラッシュハイパーバイザーのソフトウェアは、システムハイパーバイザー内のカーネルモジュールとして動作し、クラスタ全体でプールされたソリッドステートリソースを操作する。

 フラッシュハイパーバイザーはライトスルー機能に加え、クラスタ環境でのリードとライトの両方に対応したライトバックキャッシングもサポートする。

 以上、キャッシュエンジンとフラッシュハイパーバイザーの類似点と相違点を説明した。あなたの会社の環境に適しているのはどちらだろうか。

キャッシュエンジンとフラッシュハイパーバイザー、どちらを選ぶか

ネイティブ環境の場合

 データベースなどのアプリケーションの高速化を必要としているのであれば、現時点ではキャッシュエンジンが唯一の選択肢だ。フラッシュベースの仮想化は今のところ、VMware vSphereの仮想化環境でしか動作しない。米MicrosoftのWindows Serverの将来版に対応するベンダーが増えてくれば、この状況も変わるだろう。

単独サーバもしくは2ノードクラスタ

 キャッシュエンジンとフラッシュハイパーバイザーはいずれもこの構成をサポートし、同じ機能を提供する。この構成で考慮しなければならないのはライセンスコスト、効率およびクラスタの拡張の可能性だ。既存の2ノードクラスタにノードを追加する予定であれば、クラスタとともに成長できるフラッシュハイパーバイザーが長期的に見てベストな選択肢ということになろう。単独サーバあるいは2ノードクラスタを拡張する計画がないのであれば、キャッシュエンジンの方が費用対効果に優れた選択肢といえそうだ。

3ノード以上のクラスタ

 フラッシュハイパーバイザーはクラスタに対応しているため、ストレージを単一のプールとして管理するのが容易だ。キャッシュエンジンでは、クラスタ内で管理できる製品も存在するが、各ノードのSSD(ソリッドステートドライブ)を個別に管理する必要があるかもしれない。管理の容易さを重視するのであれば、フラッシュハイパーバイザーの方が効率的なソリューションだろう。

ライトバックキャッシュを利用する場合

 いずれの方式もライトバックキャッシュ機能をサポートしているが、キャッシュエンジンは今のところ、2ノードという制限がある。このため、ライトバックキャッシング機能が自社にとって重要な選択基準であり、クラスタが3ノード以上で構成されている場合は、フラッシュハイパーバイザーを選択するのがベストだろう。ただし、全てのフラッシュハイパーバイザーやキャッシュエンジンが安全なライトバックキャッシュをサポートしているとは限らないし、ライトバックキャッシングが期待通りの効果を実現するとも限らない。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る