第4回 クラスタリングとライセンス・コストを考慮した全体設計Windows Server 2012 R2時代のHyper-Vサーバ設計術(4/4 ページ)

» 2013年12月05日 15時33分 公開
[小川大地(Microsoft MVP for Virtual Machine)日本ヒューレット・パッカード]
前のページへ 1|2|3|4       

スケールアップとスケールアウト、どちらがよいか?

 連載第1回ではプロセッサやメモリのサイジング方法について解説した。「サーバ集約率はプロセッサの”物理コア数に比例する」と結論付けたものの、実際にHyper-Vホストとなるサーバのモデルを選ぼうとカタログを眺めると、1つの疑問が沸いてくる。

 「CPUがたくさん載る大型サーバにするのはどうだろうか?」

 仮想化向けのx86サーバというと、プロセッサ・ソケットが2つ搭載された1Uや2Uサイズのサーバが代表的だ。しかし、各社のカタログの後ろの方にはプロセッサ・ソケットを4個搭載しているものや、8個搭載して「最大80コア」などというサーバもある。小型のサーバを多く並べる「スケールアウト型」と、少数の大型サーバを運用する「スケールアップ型」はどちらがよいだろうか?

 実際のところは要件や構成次第であるが、検討すべきポイントをいくつか挙げてみよう。

■Xeon EN(E5-2400系)プロセッサ
・プロセッサ搭載数:最大2個
・メモリ・スロット数:最大12スロット
・製品例「HP ProLiant DL360e Gen8(1Uサイズ)

HP ProLiant DL360e Gen8(1Uサイズ)

■Xeon EP(E5-2600系)プロセッサ
・プロセッサ搭載数:最大2個
・メモリ・スロット数:最大24スロット
・製品例「HP ProLiant DL360p Gen8(1Uサイズ)

HP ProLiant DL360p Gen8(1Uサイズ)

■Xeon EP(E5-4600系)プロセッサ
・プロセッサ搭載数:最大4個
・メモリ・スロット数:最大48ロット
・製品例「HP ProLiant DL560 Gen8(2Uサイズ)

HP ProLiant DL560 Gen8(2Uサイズ)

■Xeon EX(E7-4800系)プロセッサ
・プロセッサ搭載数:最大4個
・メモリ・スロット数:最大64スロット
・製品例「HP ProLiant DL580 G7(4Uサイズ)

HP ProLiant DL580 G7(4Uサイズ)

■Xeon EX(E7-4800系)プロセッサ
・プロセッサ搭載数:最大8個
・メモリ・スロット数:最大128スロット
・製品例「HP ProLiant DL980 G7(8Uサイズ)

HP ProLiant DL980 G7(8Uサイズ)
図10「Intelプロセッサのプロダクトラインと対応サーバの例」
現在主流のIntel Xeonシリーズのプロセッサと、それを使ったサーバの例(HP ProLiant DLの場合)。仮想化ホスト用のサーバとしては「Xeon EP」が広く用いられるが、そのXeon EPでも1Uサイズの「DL360p Gen8」と、プロセッサ搭載数/メモリ・スロット数/サイズがすべて2倍になった「DL560 Gen8」がある。前者で2倍の台数にするか、後者で台数を減らすか悩ましいところだ。

●プロセッサの特性

 図2にある「Xeon EP」と「Xeon EX」を見比べてみよう。EPにはXeon E5というプロセッサが、EXにはXeon E7というプロセッサが利用される。数字の大きなE7がミッション・クリティカル向けの上位モデルであり、機能面や拡張面で優位性がある。

 機能面としてはプロセッサ内部のエラー訂正を行うMCA(Machine Check Architecture)リカバリや、メモリ上のエラー訂正を行うDDDC(Double Device Data Correction)といったRAS(信頼性・可用性・保守性)周りの機能強化が中心であり、障害発生率が低減されている。

 拡張面では、搭載可能なメモリ・スロット数が2倍と多く、テラバイト・クラスの容量を用意したり、容量の少ないDIMMを大量に並べて大きな容量を作り出すことが可能だ。

 性能面については互角である。一般的にEXの方がプロセッサあたりのコア数が多い半面、1コアあたりの性能はEPの方が高い傾向があるためだ。プロセッサ単価だけを見たコストパフォーマンスについては、EPに分がある。

●フェイルオーバーの影響範囲

 サーバの冗長化も考える場合、1つのクラスタに対して物理サーバを1台余分に用意する「N+1構成」を取るだろう。この場合、スケールアウト型の方が有利である。

 これは、1ホストあたりの集約率が少なく、ダウンしても影響範囲が狭いためだ。スケールアップ型にすると1ホストあたりの集約率が高いために、そのホストがダウンしてしまうと、それだけ多くの仮想マシンがダウンすることになる。フェイルオーバーも長くなってしまうだろう(図11)。

 ただし、前述のように大型サーバにはRAS機能が強化されているEXプロセッサが採用されているため、障害発生率は低い。

図11「スケールアップとスケールアウト(フェイルオーバーの影響範囲)」 図11「スケールアップとスケールアウト(フェイルオーバーの影響範囲)」
大型サーバはより多くの仮想マシンを集約するため、万一ダウンしてしまうとそれだけ影響が大きい。ほかのホストへのフェイルオーバーが完了し、復旧するまでの時間も長くなってしまうだろう。ただし大型サーバは障害発生率が低いことも考慮に含める必要がある。

 なお、Windows Server 2012以降のHyper-Vでは、サーバダウンなどで大量の仮想マシンが同時にフェイルオーバーする場合は、重要な仮想マシンがいち早く復旧されるよう、仮想マシンごとに再起動優先度を調整できる(図12)。

図12「仮想マシンのフェイルオーバー優先順位」 図12「仮想マシンのフェイルオーバー優先順位」
Windows Server 2012以降のHyper-Vでは、大量の仮想マシンが同時にフェイルオーバーすることになった場合に、重要な仮想マシンをいち早く復旧させることが可能となった。
  (1)優先度を指定する。

●ライセンス・コストの削減

 逆に、スケールアップ型を採用する利点の1つはサーバ台数だ。管理者の視点からすれば、運用していかなければならない物理サーバの数は少ないに越したことはないだろう。

 また、意外に思えるかもしれないが、サーバ単体からシステム全体にまで視野を広げると、スケールアップ型の方が総合的に安くなるかもしれない。

 この理由はライセンス・コストだ。バックアップ・ソフトウェアなど、一部のサードパーティ製のパッケージ・ソフトウェアでは「物理サーバ数」で課金しているものがある。小型機で集約率が悪かろうが、大型機で大量に集約できようが、1ホストは1ホストなのだ。このような場合、物理サーバの台数が少ないスケールアップ型の方がライセンス・コストを削減できる。

図13「スケールアップ型サーバによるライセンス・コストの削減」 図13「スケールアップ型サーバによるライセンス・コストの削減」
Xeon E5プロセッサでも2プロセッサ用(Xeon E5-2600)と4プロセッサ用(Xeon E5-4600)がある。プロセッサあたりの性能がまったく同じである場合、より多く搭載できるスケールアップ・モデルを採用することで、「物理サーバ数」で課金するパッケージ・ソフトウェアのコストを大きく削減できる。


 全4回にわたって、ハードウェア側の技術トレンドなどを踏まえつつ、最新のWindows Server 2012 R2を使ったHyper-Vシステムの設計ガイドラインを紹介してきた。驚くほど急速に機能が強化されているHyper-Vだが、他社製品も進化を続けている。これだけ強化されてもまだ足りないと思う部分もあるだろう。しかしながら、必ずしもすべてをHyper-V単体の機能では補う必要はない。ハードウェアとソフトウェアが互いの強みを生かして補完しあえば、少ない予算で十分かつ先進的な“仮想化基盤”を作り上げることができるはずだ。

「Windows Server 2012 R2時代のHyper-Vサーバ設計術」のインデックス

Windows Server 2012 R2時代のHyper-Vサーバ設計術

前のページへ 1|2|3|4       

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。