「ストレージ仮想化」や「Software-Defined Storage」はどこへ向かうのか? | 東京エレクトロンデバイス

Publickey新野淳一IT羅針盤

「ストレージ仮想化」や「Software-Defined Storage」はどこへ向かうのか?

ストレージをソフトウェアで構成、管理する「ストレージ仮想化」や「Software-Defined Storage」の波がやってきています。ベンダー側の動きも活発になっており、各種製品が提供されるようになりました。ストレージ技術の現状と今後を分析します。

ストレージ仮想化 /Software-Defined Storageの各社動向

サーバー仮想化はいまやサーバーにとって当然の機能となり、ネットワーク仮想化もベンダーから多くのソフトウェアやハードウェア製品が登場するようになりました。そして今年に入り、動きが目立ってきたのが「ストレージ仮想化」あるいは「Software-Defined Storage」です。

ストレージ仮想化やSoftware-Defined Storageは、ITのインフラにおける大きな方向性である「Software-Defined Datacenter」(SDDC)、すなわちデータセンターが提供する主要な3つの機能、コンピュート、ネットワーク、ストレージの全体をソフトウェアで定義するために欠かせない“最後の主要なピース”です。 そのため主要各社はすべて、ストレージ仮想化やSoftware-Defined Storageに積極的に取り組んでいます。 主なベンダーの動きをまとめてみましょう。

VMwareは2014年3月に「VMware Virtual SAN」(VSAN)を正式にリリースしました。VSANは複数台のサーバーの内蔵ストレージをネットワーク越しに束ね、1つの仮想的な共有ストレージアレイを構成するソフトウェアです。これにより、従来の仮想化インフラに必要だった物理的な共有ストレージアレイが不要になり、それぞれのサーバーに内蔵されているストレージだけで仮想化インフラを構築できるようになりました。 2014年12月には、Software-Defined Storageベンダーを標榜するNexenta Systemsが日本法人を設立。 同社の「NexentaStor」は、x86サーバーに導入することでx86サーバーをストレージサーバーにするソフトウェアです。 2015年2月には、IBMがSoftware-Defined Storage関連の製品群を「Spectrum Storageファミリー」の統一ブランドにすることで、製品ラインの強化をアピール。x86サーバーにインストールすることで同社のハイエンドストレージ機器の「IBM XIV Storage」と同等の機能や性能を備えた高速なブロックストレージサーバーとなる「Spectrum Accelerate」ソフトウェア、x86サーバーを分散オブジェクトストレージサーバーとする「Spectrum Scale」ソフトウェア、あるいはIBM以外のストレージベンダーのSANストレージ製品をを含む複数のストレージをまとめて抽象化し、仮想的なSANストレージを構成できる 「Spectrum Virtualize」アプライアンスなどのラインナップを用意しています。 2015年3月には、Software-Defined Storageでスケールアウトストレージを構築するという新興ベンダーScalityが日本法人を設立し、国内市場に本格参入しています。「Scality」は分散ストレージ機能を備え、ネットワーク上の複数のx86サーバーに内蔵されたストレージをソフトウェアでまとめてスケールアウトストレージを実現するというものです。 2015年5月には、EMCが同社のSoftware-Defined Storageコントローラの「ViPR」をオープンソース化した「CoprHD」(コッパーヘッド)を公開する、という大きな発表がありました。CoprHDはx86サーバーに導入するソフトウェアで、EMCや他社のストレージを複数束ねて仮想ストレージを構成する機能を備えています。 同社はオープンソース化によって、Software-Defined Storageを活用するさまざまなアプリケーションや拡張機能などの開発がエコシステムによって活性化することを期待しています。

何をSoftware-Defined Storageと称するのか?

このようにSoftware-Defined Storageやストレージ仮想化に取り組んでいるベンダーは積極的な展開を見せている一方で、何をもって“Software-Defined Storage”としているのか、提供されている製品のアプローチはベンダーごとにバラバラであることも同時にわかってきます。

例えば、ストレージを内蔵したx86サーバーを束ねて仮想的なストレージアレイやオブジェクトストレージ、 ブロックストレージなどのストレージサーバーを構成するソフトウェアを提供し、 それを“Software-Defined Storage”としている製品。 一方で、複数のストレージ機器を束ねて抽象化し、管理・構成するソフトウェア、あるいはソフトウェアではなく物理的なストレージ機器を提供し、それを“Software-Defined Storage”としている製品などです。 これらをある程度整理するためには、いくつかのレイヤに分けて考えるべきでしょう。

図1 Software-Defined Storageの構造

図1 Software-Defined Storageの構造

一番下のレイヤがサーバー内蔵ストレージやストレージ機器を抽象化し、 2つ目のレイヤで重複排除や圧縮、レプリケーションなどのデータサービスを 提供し、3つ目のレイヤで全体を構成、制御、管理する

1つ目のレイヤは、ストレージを抽象化するレイヤです。ストレージを内蔵した複数のx86サーバー、あるいは物理的なストレージ機器を束ねて抽象化し、仮想的なストレージを実現します。 2つ目のレイヤは、抽象化されたストレージに対して重複排除や圧縮、 バックアップアーカイブ、レプリケーションなどのデータサービスを提供するレイヤです。
3つ目のレイヤは、抽象化されたストレージとデータサービスを構成し、管理するレイヤです。ソフトウェアを通じて容量や性能を設定し、必要なデータサービスなども指定して構成します。 これを外部のソフトウェアからも利用可能となるようにAPIがあることも望ましいでしょう。 1つ目のレイヤと2つ目のレイヤを「ストレージの仮想化」と呼ぶとすれば、これに3つ目のレイヤを加えてすべてをソフトウェアで構成可能にしたものを“Software-Defined Storage”と呼ぶだろうと筆者は考えています。 ただし、ストレージにはブロックストレージやファイルストレージ、オブジェクトストレージに加え、アクセス性能を重視したストレージ、大容量とスケーラビリティを重視したストレージ、バックアップのために容量当たりのコストを重視したストレージ、バックアップのために冗長性を重視したストレージなど、さまざまな要件に応じた種類があります。これらを高いレベルで実現するには、いまのところ物理的なハードウェアのレベルから上位の管理構成ソフトウェアのレベルまでを含めた総合的な実装が重要になってきます。 ですから、例えば「Software-Defined Network」におけるデータプレーンとコントロールプレーンのように きれいに分かれた構造は、ストレージにおいてはなかなか実現しにくいと考えられます。
 

今後の方向性はJBODとAPIの標準化か

今後のSoftware-Defined Storageはどこへ向かうのでしょうか。2つの方向性が考えられます。 1つはストレージを内蔵したx86サーバーをソフトウェアで束ね、高度なストレージを実現していく技術がさらに進化するという方向性です。 これは「JBOD」と呼ばれるキーワードで示されるトレンドでもあります。JBODとは「Just Bunch of Disks」(単なるディスクの束)の略で、サーバーの内蔵ストレージをソフトウェアで束ねることを意味します。 いまや内蔵ストレージもSSDにより高速なアクセスが可能で、サーバー間のネットワークも高速になりました。そのおかげでソフトウェアによって、より高速なストレージ、あるいはよりスケーラブルなストレージの実装が可能になりました。 エンタープライズにおける汎用ストレージはSANやNASの機能を備えたストレージ専用機器が主流になっていましたが、JBODによって再び、x86サーバー内蔵ストレージが汎用ストレージの主役に回帰しようとしています。 もう1つの方向性は、Software-Defined化したストレージを制御するAPIの標準化でしょう。 現在、ストレージの構成や制御を行う方法は、ストレージのコンソールを直接操作する方法や、LinuxやWindows Server、あるいはVMwareのように基盤ソフトウェアとなっているOSや仮想化から操作する方法などさまざまな方法があり、またストレージを操作するためのさまざまなAPIがあります。

図2 OpenStackのストレージ向けAPIが、候補の1つ

図2 OpenStackのストレージ向けAPIが、候補の1つ

Software-Defined Storageが普及していくにつれ、こうした操作を行うためのAPI標準化の流れができてくることが考えられます。もっとも有力なのはOpenStackのストレージAPIが標準APIとされることですが、前述のようにストレージにはさまざまな要件や目的があるため、現実にはそれに即したさまざまなAPIが併存する、という可能性が高そうです。

※このコラムは不定期連載です。
※会社名および商標名は、それぞれの会社の商標あるいは登録商標です。

新野淳一

新野淳一Junichi Niino

ブログメディア「Publickey」( http://www.publickey1.jp/ )運営者。IT系の雑誌編集者、オンラインメディア発行人を経て独立。新しいオンラインメディアの可能性を追求。