Jump to content 日本-日本語

製品  >  ソフトウェア  >  HP- UX Developer Edge

「サーバ仮想化によるスケールアウト」の新潮流・前編

HP-UX/Integrityサーバー お問い合せ
コンテンツに進む
「サーバ仮想化によるスケールアウト」の新潮流・前編
サーバ仮想化とは、プロセッサーやメモリなどのシステムリソースを論理的にプールし、それぞれに個別のアプリケーションやOSを動作させてスケールアウトを実現するアプローチだ。「リソースの共有と動的な分配」を実現することで、通常のクラスタやブレードサーバでは困難な高効率を達成できるのである。特集1では、サーバファーム構築の新潮流である「サーバ仮想化」のテクノロジーについて紹介する。
「サーバ仮想化によるスケールアウト」の新潮流・前編
スケールアウトはスケールアップに行き着く
VSEのパーティショニング技術
2004年8月
テクニカルライター 吉川和巳

スケールアウトはスケールアップに行き着く


1Uサーバやブレードサーバによるスケールアウトは、ミッドレンジ/ハイエンド・サーバによるスケールアップに行き着く。この逆説的ともいえる状況が、明確なトレンドとして現れつつある。そのカギを握るキーワードは、「サーバ仮想化」だ。

従来のデータセンター構築では、1Uサーバやブレードサーバによるスケールアウト構成が広く採用されてきた。その背景には、「安いサーバを数多く並べるだけで、リニアなパフォーマンス向上が実現する」というスケールアウトのメリットがある。また、1台のサーバ上にいくつものアプリケーションを混在させると、たとえばメンテナンスによるリブートの際にはすべてのアプリケーションに影響が及んでしまう。これに対し、個々のアプリケーションを独立したサーバに分散させた方が、メンテナンスの柔軟性や可用性が高まるのである。


スケールアップシステムの仮想化がコスト削減の切り札になりえる理由


しかし、こうしたスケールアウト構成で構築されたデータセンターは、いくつかのやっかいな問題を抱える可能性がある。まずは、図1を見ていただきたい。

図1:サーバごとの負荷のばらつき
図1:サーバごとの負荷のばらつき

図1は、スケールアウト構成における典型的な負荷の状況を表したものだ。この図が示すように、アプリケーションの負荷にはバラツキがあるのが普通で、利用率が常に一定というアプリケーションはごくまれだ。一説には、一般的なデータセンターのプロセッサー利用率は平均2〜3割とされている。つまり、仮に平均利用率を8割や9割に高められれば、ハードウェアコストを現状の1/3〜1/4にまで下げられる可能性があるのだ。

スケールアップソリューションに比較し、コスト削減に一定の限界が生じる要因の1つとしては、従来のスケールアウト構成が「物理的なサーバ」で実装されていることがある。各サーバの能力が物理的に固定されており、負荷状況に応じて自由にプロセッサーを追加・削除できるわけではない。そのため各システムをそれぞれの負荷のピークに合わせたサーバ台数またはプロセッサー数に余裕を持たせて設置するしかない。いわゆる「オーバー・プロビジョニング」が不可避なのだ。 「余裕」が少なくて済む中小規模のシステムの場合は「オーバー・プロビジョニング」によるコスト増の要因は少ないが、ビジネス・システムの規模が大きくなればなるほど、そのコストインパクトを十分に精査しなければならなくなる。

もう一点、物理的なサーバが増加すればサーバのメンテナンスコストへの配慮も必要になる。最新の管理環境が実現されていない場合、従来は設置されたサーバ数に応じ、ハードウェアのインストールや管理、メンテナンスを個々の筐体ごとに実施しなければならないケースもあり、データセンター要員にかかるコストが肥大化する可能性があるのだ。そのためあらかじめ導入するシステムの構成をもとにスケールアウトにするか、それ以外の選択肢を検討する必要がある。


メインフレームライクなサーバ仮想化の技術


これとは対照的に、物理的な縛りから解放された「論理的なサーバ」を基盤としてスケールアウトを実現するアプローチがある。それが、ミッドレンジやハイエンドの商用UNIXサーバで急速に発展が進む「サーバ仮想化」の技術である。

サーバ仮想化とは、1台の大きなサーバに備わるプロセッサーやメモリなどのリソースを複数の「パーティション」に分割し、それぞれに個別のアプリケーションやOSを動作させる技術である。このパーティショニングによって、多数のWebサーバやデータベースを同時に運用したり、それぞれのOSを個別にリブートしたりできる。つまり、スケールアウト構成のメリットであるリニアなパフォーマンス向上、そしてメンテナンスの柔軟性や可用性が得られる仕組みだ。たとえて言えば、1Uサーバを何台も並べたデータセンターを一筐体で仮想的に実現するようなものである。

このサーバ仮想化には、従来のスケールアウト構成ではマネのできない特徴がある。それは、「リソースの共有」だ。ここで、以下の図を見ていただきたい。

図2:サーバ仮想化によるリソース共有の効果
図2:サーバ仮想化によるリソース共有の効果

図2が示すように、サーバ仮想化によるスケールアウトでは、すべてのアプリケーション間でリソースを共有するため、負荷のバラツキが平均化される。図2では、昼間はWebやOLAP、夜間はバッチ処理の負荷が高い状況を想定しているが、その両者がリソースを共有することで平均利用率を一定に保つことができる。

これは、IPネットワークにおける「統計多重効果」と同じであるといえる。つまり、1Uサーバやブレードサーバは昔のTDM(時分割多重)ベースの電話回線のようなもので、個々のユーザがリソースを占有するため利用効率がとても低い。一方、サーバ仮想化はIPネットワークと同様にすべてのユーザが同じリソースを共有するため、統計多重によって劇的なコスト・パフォーマンス向上が可能になる。

サーバ仮想化のさらなるメリットは、「リソースの動的な分配」である。つまり、サーバにプロセッサーを挿したり抜いたりするに等しい作業を、システムの動作中に実施可能だ。これにより、あらかじめピーク時の負荷に合わせてリソースを占有させておく必要がなくなる。たとえば図3のように、昼間はWebサーバに多くのプロセッサーを割り当て、夜間はバッチ処理にプロセッサーを移動させるといった運用も、国内外の企業ですでに導入され始めている。

図3:プロセッサーの動的な分配
図3:プロセッサーの動的な分配

実のところ、こうしたサーバ仮想化は、もともとはメインフレームの分野で培われてきた考え方である。メインフレームのプロセッサー利用率は平均で8割を超えると言われ、商用UNIXにおけるサーバ仮想化技術はこうしたメインフレームの考え方を応用した基盤技術なのである。

では、サーバ仮想化は具体的にどのような基盤技術によって実装されるのだろうか。それを明らかにするため、ここではHPが提供する仮想化技術であるVSE(Virtual Server Environment)を例にとり、そのメカニズムを解説しよう。

トップへ     次のページへ

本ページの内容は執筆時の情報に基づいており、異なる場合があります。
印刷用画面へ
プライバシー ご利用条件・免責事項