Software-Defined Storageはストレージの何を変えるのか

2015年4月28日(火)
桂島 航

VMwareは、クラウドインフラの新しいアーキテクチャとして、Software-Defined Data Center (SDDC)という新しいモデルを提唱している。SDDCは、コンピューティングだけでなくネットワークやストレージといった要素もソフトウェアで仮想化し、自動化と組み合わせることで、従来よりもずっと効率的で俊敏性の高いインフラを作ることを目指したアーキテクチャだ。

このSDDCの重要な構成要素の1つが、「Software-Defined Storage」である。ハードウェアが提供してきたストレージの機能をソフトウェアで実現し、高い効率性と高度な自動化を実現する新しいタイプのストレージ仮想化だ。

本稿では、Software-Defined Storageを通して、VMwareがどのようにストレージの世界を変えようとしているのか、その方向性を解説する。

Software-Defined Storage は単なるソフトウェアベースのストレージではない

Software-Defined Storageのコンセプトは、市場にまだうまく伝わっていないように感じる。恐らく、Software-Defined Storageは単なるソフトウェアベースのストレージぐらいに考えている方が多いのではなかろうか。Software-Defined Storageの定義はいまだ定まっておらず、話し手によって異なる意味で使われていることが、こういった誤解に繋がっているようだ。

筆者は、この状況を少し残念に思っている。Software-Defined Storageというコンセプトの中には、今までに無かった斬新なストレージ仮想化の技術がいくつか含まれているからだ。近い将来、これらはストレージシステムのあり方を大きく変えるだろう。この新しい技術のトレンドをもっと広く認知してもらいたい。

このような動機から、Software-Defined Storageに関するこの記事を書いている。本記事の目的は、Software-Defined Storageに含まれるストレージ仮想化技術の、新しいトレンドを読者に理解してもらうことにある。

Software-Defined Storage というコンセプトの中心にあるもの

では、Software-Defined Storage に含まれる新しいトレンドとはいったい何なのか? 端的に言えば、Software-Defined Storageの新しいストレージ仮想化技術は、「クラウド・仮想環境に最適な形へストレージシステムを変化させる」ことを目指している。

ストレージの主流のアーキテクチャは、ここ十数年ほどほとんど変化していない。中心を担うのは SAN/NAS、すなわち外部のストレージ装置をネットワーク越しにアクセスして共有するモデルだ。

ストレージの管理手法もまた、この伝統的なアーキテクチャに基づいたやり方が長く続いてきた。ストレージ装置が高度な管理機能を持ち、大規模な環境ではストレージ専門の管理者がいるのが普通になった。仮想基盤の管理者は、ストレージ管理者に依頼してストレージをプロビジョニングしてきた。

この伝統的なストレージのアーキテクチャと管理手法が、クラウド・仮想環境におけるボトルネックになっている。クラウド・仮想環境は、コモディティサーバとソフトウェアを駆使したスケールアウト型に近づいており、専用ストレージ装置の高額なコストが大きな課題になっている。また、専用インタフェースによるサイロ化された管理や、人と人とのコミュニケーションに依存したプロビジョニングは、クラウド・仮想環境の高度に自動化された運用のスピードについていけない。

従来型ストレージの課題

図1:従来型ストレージの課題

Software-Defined Storageは、これらの伝統的なストレージのアーキテクチャと管理手法の枠組みから離れて、クラウド・仮想環境という環境に最適な新しいストレージシステム像を作り出そうとしているところがある。

以下では、Software-Defined Storageが描く新しいストレージシステム像とは何かを、2つの技術的トレンドという形で示したい。

トレンド1.仮想基盤上に移動するストレージのインテリジェンス

Software-Defined Storage における1つの技術的トレンドは、仮想基盤上で動作する新しいタイプのストレージ仮想化である。具体的には、仮想マシン(VM)もしくはハイパーバイザーのカーネル上で、ストレージ仮想化を実行する技術が大きな進展を見せている。

CPU や仮想化技術の進展により、x86サーバ上でストレージの機能を走らせても、専用ハードウェアと性能的に大きな違いは出なくなってきている。逆に、アプリケーションに近い仮想基盤上にストレージ機能を置くことで、性能が上がるケースも少なくない。性能的なデメリットが無いのなら、ストレージ機能を仮想基盤上に積極的に移動し、統合から来る新たなメリットを実現しようという発想である。

このトレンドは、ネットワーク仮想化において、ネットワークのインテリジェンスをホスト上のエッジに移動するというコンセプトに似ている。ネットワークだけでなく、ストレージでもインテリジェンスはエッジに動きつつある。

サーバとストレージを統合する「ハイパーコンバージド」

最もアグレッシブな形でこのトレンドを引っ張っているのが、図2のように、スケールアウト型のストレージシステムをハイパーバイザー上もしくはVM上で動作させ、仮想基盤とストレージを同一のハードウェア上に完全に同居させるモデルである。このアーキテクチャは「ハイパーコンバージド」と呼ばれる、アーリーアダプターの間で採用が進んでいる注目のアーキテクチャだ。

ハイパーコンバージド(ハイパーバイザー統合型の例)

図2:ハイパーコンバージド(ハイパーバイザー統合型の例)

ハイパーコンバージドのメリットは、仮想基盤とストレージを統合して扱えるので、構築・運用・保守をシンプルにできることだ。たとえば、仮想基盤とストレージが統合済みの状態で出荷されるので、構築作業がほとんど必要ない。そして、管理インタフェースを一元化できるので、モニタリングやトラブルシューティングなどの運用が効率化されるほか、プロビジョニングも少ないステップで行える。また、ハードウェアが1種類になるので、増設や保守などのハードウェアに関する作業も単純化できる。

また、ハイパーコンバージドアーキテクチャは、コモディティのハードウェア上でストレージをソフトウェアで実装することから、専用ハードウェアよりもコスト面で優位となることも多い。このようなメリットが評価されて、日本でも仮想インフラや仮想デスクトップ向けのシステムなどを中心に、利用実績が増えてきている。

トレンド2.アプリケーション視点の仮想ストレージサービス

Software-Defined Storageに含まれるもう1つの技術的トレンドは、 「アプリケーション視点の仮想ストレージサービス」だ。これは、ストレージのサービスレベルを、ストレージ装置に依存しない形でアプリケーションごとに細やかに制御できるようにする技術だ。

従来型のストレージでは、ストレージ装置側に定義されたボリュームのような単位を通して、ストレージのサービスレベルを管理してきた。たとえば、耐障害性を決めるRAIDレベルや、レプリケーションのスケジューリングなどは、ボリューム単位で装置側にて管理することが一般的だ。

この従来方式の弱点は、特定のアプリケーションのデータだけをレプリケーションするというような、アプリケーション視点の細やかな運用ができないことだ。新たなアプリケーションが次々に生成されるクラウド環境では、これが大きな問題になる。また、ストレージ装置の管理がサイロ化するとともに、プロビジョニングの作業がストレージのために個別に発生してしまう点も問題だ。

Software-Defined Storageにおける「アプリケーション視点の仮想ストレージサービス」では、図3に示すように、アプリケーションのコンテナであるVMを単位として、ストレージサービスを細やかに制御できるようにする。ボリュームのような「ストレージ管理のための設定」は無くなり、装置への設定作業無しに、スピーディにプロビジョニングを実施できるようにする。

アプリケーション視点のストレージサービス

図3:アプリケーション視点のストレージサービス

セルフサービスやポリシーとの統合でプロビジョニング自動化の基盤に

「アプリケーション視点の仮想ストレージサービス」は、ポリシー制御やセルフサービスポータルのような自動化の仕組みと組み合わされて、クラウド環境におけるプロビジョニング自動化の基盤となっていくだろう。この価値をわかりやすく説明するために、どこかのクラウドサービスを利用するシナリオを思い浮かべてみよう。

ウェブブラウザから、クラウドサービスポータルを開き、そこで作成するVMを選択する。その際に、VMが利用するストレージの種類をポリシーとして選択する——たとえば、耐障害性のレベル、レプリケーションの有無、スナップショットのスケジュール、SSDキャッシュの有無、といったようなものだ。OKボタンを押すと、VMがデプロイされる際に、対応するストレージサービスがそのVMに自動的に適用される。装置側への手動の設定などはまったく必要なく、すべてが自動的に処理される。

このように、「アプリケーション視点の仮想ストレージサービス」を使って、VM単位でストレージサービスを柔軟に設定できるクラウドを構築できる。

ストレージ装置にボリュームを定義し、その単位でストレージサービスを管理するというコンセプトは、仮想化が出現する以前に使われていたものである。クラウド環境の「利用者」にとっては、ボリュームという概念はすでに不要なものになっている。「アプリケーション視点の仮想ストレージサービス」の目的の1つは、ボリュームなどの従来型のストレージ装置が持つ不必要な要素を排除し、利用者にとって本質的な価値だけを届けるところにある。

Software-Defined Storageを実現するVMwareのテクノロジー

VMwareは、上で述べたSoftware-Defined Storageの2つのトレンドを実現するテクノロジーとして、以下の4つのテクノロジーを提供している。

  • VMware Virtual SAN (VSAN)
  • VMware EVO:RAIL
  • VMware Virtual Volumes (VVol)
  • VMware vSphere Storage Policy-based Management(VSPM)
VMwareのSoftware-Defined Storageのテクノロジー

図4:VMwareのSoftware-Defined Storageのテクノロジー

Virtual SAN (VSAN)は、数あるストレージ仮想化を行う製品の中でも、サーバ仮想化プラットフォームVMware vSphereのハイパーバイザーと統合されているという点でユニークな存在である。 ライセンスこそvSphereとは別だが、ソフトウェアとしてはvSphereの中に組み込まれており、vSphereをインストールすればそこにはすでにVSANが含まれている(vSphere 5.5 Update1以降)。

VSANは、本記事で取り上げたSoftware-Defined Storageの2つの特長を両方兼ね備えている。図1に示したように、vSphereに組み込まれたVSANは、サーバ内蔵のストレージを仮想化して、大きなストレージプール(共有データストア)を作り上げる。そして、ストレージサービスはVM単位で制御できる。

またVMwareは、VSANを組み込んだハイパーコンバージドの製品「VMware EVO:RAIL」を、パートナー各社を通して提供している。電源オンから15分でVMのデプロイを開始できるなど、ハイパーコンバージドの特長を活かして構築・運用・保守が非常にシンプルになっている。

Virtual Volumes (VVol)は、外部ストレージにおいて「アプリケーション視点の仮想ストレージサービス」を可能にするテクノロジーである。詳しい説明は第3回の記事を参照いただきたいが、VVolのエコシステムには29社ものパートナーが参加し、業界をまたいだ取り組みとなっている。

vSphere Storage Policy-based Managementは、vSphereに組み込まれているテクノロジーだ。VSANおよびVVolを用いる際に、ポリシーベースで「アプリケーション視点の仮想ストレージサービス」を利用するための仕組みを提供する。VM作成時にストレージのポリシーを指定すれば、それに該当するストレージサービスが自動的に割り当てられる。

-----

ここまで、高い効率性と高度な自動化を実現する新しいストレージ仮想化のコンセプトである「Software-Defined Storage」を紹介してきた。VSANや、vSphere 6に含まれるVVol、vSphere Storage Policy-based Managementなど、 60日間無償で使用できる評価版のライセンスが用意されているので、興味のある方はぜひ評価を検討していただければ幸いである(vSphere 評価センター)。

ヴイエムウェア株式会社
NEC入社後、日本と米国を拠点として仮想化技術の研究およびプロダクトマネジメントのポジションを歴任、その後デル株式会社にてエバンジェリストとして活動。現在はヴイエムウェア株式会社のクラウドインフラおよび管理製品群の製品マーケティング責任者を務める。

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています