仮想環境に最適化したスマートストレージのアーキテクチャ(前)

2015年6月2日(火)
村山 雅彦(むらやま まさひこ)

仮想化技術はサーバ統合やVDIのような形で活用されてきましたが、その発展に伴い従来型のストレージでは効率化・コスト低減など本来の目的を満たせず、抜本的な解決策を求められています。本稿では、従来型製品の課題を整理し、ティントリ社の仮想化/クラウド環境向けストレージ VMstoreのアドバンテージや差別化ポイントについてご説明します。

変わるストレージのあるべき姿

過去10年を振り返ってみると、仮想化技術は凄まじい勢いで発展し、現在のIT基盤にはなくてはならない要素になりました。特に、IAプラットフォームを基盤に実現するサーバ/デスクトップ仮想化はその中心に位置付けられ、サーバ統合やVDI(Virtual Desktop Infrastructure)のような形で多くの企業やクラウドサービスなどで幅広く活用されています。

同じくITインフラの基盤となるネットワーク要素やストレージ要素においても仮想環境への対応が求められ、各社は独自のソリューションを提供してきました。しかしながら、従来のストレージ製品は真の意味で仮想化に対応したソリューションではなかったために、性能面でボトルネックとなってしまったり、運用が複雑になってしまったりと、そのデメリットが目立つようになってきました。つまり、従来の発想のストレージ製品では、仮想化によって目指していた効率化・コスト低減・迅速化・自動化などの本来の目的を満たせず、その点に気づき始めた企業ユーザーは、より抜本的な解決策を求め始めています。

ストレージにおける「仮想化対応」の意味

これだけメジャーになった仮想環境に対して、なぜストレージ製品を提供する各社は適切な回答を示せていないのでしょうか? それは、従来の発想(=物理環境の延長線上としての仮想環境)のまま仮想化対応のストレージ製品やソリューションを開発・提供しており、その設計思想の根幹は過去数十年続いてきた物理環境となんら変わっていないことに起因しています(図1と図2)。

物理環境でのサーバとストレージの関係

図1:物理環境でのサーバとストレージの関係

仮想環境での仮想マシンとストレージの関係

図2:仮想環境での仮想マシンとストレージの関係

確かに、従来型ストレージはLUNやNASボリューム領域を仮想環境に提供することにより、ストレージ領域自体は提供できています。製品によってはプラグインモジュールの追加やAPI連携などによって、付加価値を提供しようとしているものもあります。しかし、それらは「仮想環境」と「ストレージ」のインターフェースをあわせているに過ぎず、ストレージ内部で実際のI/O処理が行われる段階になると、そのデータに紐付いていた「仮想環境」としての属性は取り除かれ、単なるSCSIブロック(SAN/iSANストレージの場合)やファイル(NASストレージの場合)のやり取りとして扱われてしまいます。つまり、従来の発想のストレージでは、仮想化対応と言っても表層的な面での対応にとどまっており、「『ストレージ内部における実際のI/O処理』が仮想環境を意識した実装になっていない」という点を抜本的に解消しなければ、本当の意味でのストレージ製品やソリューションにおける「仮想化対応」にはなりません。

結果として、「個別の仮想マシンの状態が把握できない」「運用コストの増加」「性能維持が難しい」「ストレージ管理の負担が大きい」などさまざまな問題が顕在化し、実際の運用管理や仮想環境の規模拡張に大きな障害となっています。冒頭の「はじめに」で触れた企業ユーザーがストレージ製品に求め始めた解決策というのは、まさにこれらの問題点に対する抜本的な改善のことなのです。

仮想環境専用という割り切り

次の節で取り上げる仮想環境に特化したストレージの開発元である米国ティントリ社の創業メンバーは、「仮想環境に最適なストレージとはどうあるべきか」について徹底的に考え、1つの答えにたどり着きます。それは、仮想環境においては、「仮想マシン」の存在をストレージが認識した上で動作すべきであるという発想です。この考え方に基づき、物理環境での利用は想定から切り捨てることと引き換えに、ストレージにおいても「仮想マシン」を管理オブジェクトとして扱えるよう抜本的な革新を進めてきました。ティントリ社は、従来型のストレージでは実現できなかった機能やソリューションを提供しようというまったく新しいアプローチに会社創業時から着目し、製品の設計・開発・実装を行ってきました。

スマートなストレージが仮想環境を変える

今までにない発想で開発されたティントリ社のストレージTintri VMstoreは、仮想環境のさまざまな課題を抜本的に解決するためにさまざまな機能を備えています。その多くを、「仮想マシン」の動きをストレージが理解し、それを踏まえた上で行われるインテリジェントな動きによって実現しています。ティントリ社では、この動きを象徴的に表す言葉としてVMstoreのことを「スマートストレージ」と呼び、製品コンセプトの普及に努めています。ここからは、「スマートストレージ = VMstore」が持つ主要な4つの特徴について順に説明します。

1.SSD/HDDのハイブリッド構成ながらフルフラッシュレベルの性能を実現

仮想環境のストレージは、複数の業務やデスクトップのI/Oを一手に引き受けて処理を行うため、より高い性能を求められる傾向にあります。多くの場合、ストレージの一部としてフラッシュデバイスを導入し、ディスク構成をハイブリッド化してI/Oの高速化を図るのが一般的です。しかしながら、せっかくコストをかけてフラッシュデバイスを追加しても期待した通りの性能が発揮できなかったり、性能要件を満たすためにはかなりのコストがかかったりと、費用対効果のバランスが非常に難しく、導入ユーザー側とソリューションを提供するSIer側双方にとって大きな課題となっています。特にVDIなどの用途では、ストレージが導入コストのかなりの部分を占める傾向にあります。

Tintri VMstoreもディスク構成としてはフラッシュ(SSD)とHDDのハイブリッドですが、フラッシュデバイスを使用することを前提に独自のファイルシステムをゼロから仮想環境向けに開発し、定常時99%以上のI/Oをフラッシュで行えるよう独自の技術を実装することで、上記の課題を解決しました。

ストレージタイプ別:遅延時間とフラッシュI/O率の関係

図3:ストレージタイプ別:遅延時間とフラッシュI/O率の関係

VMstoreは、ハイブリッド構成にもかかわらず、どうしてこのような高いフラッシュI/O率を実現し、フルフラッシュと遜色のない性能を提供できるのでしょうか(図3)。そこには2つの仕組みが機能しています。

1つ目は「インラインでの重複排除/圧縮」動作です。VMstoreは書き込みデータに関しては100% フラッシュ領域に書き込みますが、この動作の過程で重複排除と圧縮の処理を施すので、効率的にその領域を使用できます。例えば、100GBのデータを書き込んでも、実際には1/3から1/5の領域しか使用しないというような動作になり、より多くのデータをフラッシュでI/Oできるよう動作します。

そして2つ目は「仮想マシン単位でのワークロード分析」動作です。仮想マシン単位でI/Oパターンや稼働状況を認識・分析し、その結果に応じてアクセス頻度の高いブロックはフラッシュ領域を確実に割り当て、例えば100アクセスに1回、200アクセスに1回しかアクセスされないような低頻度のブロックに関してはHDDへの移行を必要に応じて行うような動きをします。

「高アクセス頻度のブロックをフラッシュに割り当てる」動作をサポートしているストレージは、他にも確かに存在します。しかしながら、Tintri VMstoreは他のそのようなストレージとは以下の点(表1)で動作や実装が大きく違うため、結果的に極めて高いフラッシュI/O率が実現できています。

表1:アクセス頻度の評価に関する動作の違い

一般的なハイブリッド型ストレージTintri VMstore
フラッシュ領域の使い方と頻度の判断の仕方LUN/ボリューム全体の中でブロックごとのアクセス頻度を見るだけなので、仮想マシン単位の視点で見るとそれぞれの仮想マシンにフラッシュ領域が必要なだけ割り当てられるかどうかの確実性がない仮想マシンごとにアクセス分析を行った上でフラッシュ割り当て量を決めるため、必要な分だけ無駄なく確実にフラッシュを使用させることができ、各仮想マシン単位で見たときの確実性が極めて高い
高IOPSなVMが動作した場合のシステムへの影響一部の高IOPSな仮想マシンがフラッシュ領域を占有してしまい、他の仮想マシンのデータをHDDへ追い出してしまう可能性がある個々の仮想マシンの動きをそれぞれ区別して分析し、フラッシュ領域を割り当てるため、互いに影響を及ぼさない
ファイルシステムのメタデータHDD上に配置されることもあるので、ファイルシステム操作の高速性は保証されない全てフラッシュ領域で収容されるため、高速なファイルシステムアクセスが常に可能

このように、Tintri VMstoreは仮想マシンの存在を前提に、その動きをストレージが理解した上で動作することが、今までのストレージでは不可能であったような高い性能を実現しているポイントになります。フルフラッシュの高価なストレージを導入しなくても、より安価なコストでほぼ同じレベルの性能を手に入れていただけます。

ここで重要なのは、「フラッシュを使っていること」だけではなく、「仮想マシンの動きをストレージが把握し、それに応じてストレージ側が振る舞いを変えられるスマートさを備えている」という点です。このスマートさのアドバンテージは、VM単位での制御が今後もさまざまな面で活かせるため、将来フルフラッシュが当たり前の世界になったとしても変わることがありません。

2.導入時はストレージ設計が一切不要 セットアップ作業は10分以下

Tintri VMstoreがフルフラッシュレベルの性能をハイブリッド構成で実現できることはご説明しましたが、そのためのストレージ設計・導入・構築に大きな工数やコストがかかるようでは意味がありません。というのも、今までのストレージは、性能要件やデータ保護要件に基づいてストレージ導入前に時間をかけてRAID構成やLUN/ボリューム構成を設計し、それに従って導入を行うのが当たり前でした。

物理環境の手法をそのまま仮想環境に持ち込み事前設計を行うとリソースの固定化につながり、仮想環境の特徴である「柔軟性」や「迅速性・俊敏性」が大きく失われてしまうため、VMstoreでは事前のストレージ設計を一切不要にしています。

Tintri VMstoreのハイブリッドの動きでも説明しましたが、仮想マシンそれぞれの動きを分析し、必要なストレージリソースを仮想マシンごとに内部的に割り当てるような動作をすべて自動で行ってくれます。この割り当ても定期的に見直しが行われ、個別の仮想マシンの負荷変化にストレージ側が自動的に追従してくれます。

今までは、場合によっては数百から数千にもなるVMを適切に動かすために、ストレージ管理者やインフラ管理者はその設計・構築作業に大きな工数をかけていましたが、VMstoreであれば自動的に適切なリソースを適宜割り当ててくれます。仮想環境のストレージ設計で悩む必要はもはや無くなりました。

−次回に続く−

著者
村山 雅彦(むらやま まさひこ)
ティントリジャパン合同会社 技術本部長
パートナー各社への支援とエンドユーザーへの製品・ソリューション紹介などプリセールスSE業務を担当。

連載バックナンバー

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

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

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

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