【2/17】今年は「濃厚」技術トーク!@ITメールセミナー スラッシュドット    はてなブックマーク  Yahoo!ブックマークに登録  印刷


第2回 実測! 物理マシンと仮想マシンの性能差は?


住商情報システム株式会社 中嶋一樹(著)
VA Linux Systems Japan株式会社 高橋浩和(監修)
2007/11/22

ネットワークの性能

 次にネットワークの性能を見ていきます。ネットワークの性能はdbenchパッケージに含まれている「tbench」という負荷テストツールで計測します。このツールは2つのノード間でデータを転送させ、そのスループットを計測するもので、dbenchと同様にスレッド数によって負荷を上げていくことができます。

図5
図5 ネットワーク性能比較――仮想マシンが1台の場合

 ネットワークについてはテスト全体を通して約20%の劣化となっています。

 さて、ネットワークについても、仮想マシンが2台になった場合の性能を見ておきたいと思います。次のグラフをご覧ください。

図6
図6 ネットワーク性能比較――仮想マシンが2台の場合

 テスト全体を通じて、仮想マシントータルのスループットが物理マシンのスループットを上回っています。実際には、テストツールとして何を用いるかによって若干結果がブレることが予想されます。それでも、複数台の仮想マシンを稼働させるサーバの性能をトータルで見た場合、ハードウェアの性能は十分に引き出せるといえます。

 ここまでで、物理マシンと仮想マシンにどれだけの性能差があるのかを見てきました。ここで紹介した数字は、あくまでも基本性能のベンチマーク結果であり、最終的なアプリケーションの性能数値ではありません。それでも、仮想マシンの性能がどの程度であるのかを知るのに役立つ指標となると思います。

仮想ディスクのフォーマットによる性能差

 次に、仮想ディスクのフォーマットが仮想マシンの性能に与えるインパクトを検証していきましょう。仮想ディスクとは仮想マシンのファイルシステムを保存する媒体であり、大きく分けて、以下の3種類があります。

  1. LVMの論理ボリューム
  2. ファイル
  3. Sparseファイル

 1は、あらかじめホストOSで切り出しておいた論理ボリュームに、直接仮想マシンのデータを保存する形式です。

 2は仮想マシンに割り当てたい仮想ディスクと同じ容量のファイルを作成し、そのファイルに仮想マシンのデータを保存する形式です。ファイルを作成した時点で指定した容量を消費します。

 3は、2と同様にまずファイルを作成し、そのファイルに仮想マシンのデータを保存しますが、実際にデータが存在する分しかディスクを消費しません。

 例えば、10Gbytesの容量を持つ仮想ディスクのファイルを作成し、実際に書き込むデータは2Gbytesであるケースを想定しましょう。この場合、そのファイルが存在しているファイルシステムでは、ディスク容量を2Gbytesしか消費しません。データが実際に書き込まれるにつれて、この消費容量がオンデマンドで増えていくことになります。この方式はディスクの消費容量を大幅に節約できる半面、書き込み性能が低下するといわれています。

フォーマットによる性能差

 それでは、実際にこの3つのフォーマットの仮想ディスクを用いて仮想マシンを作成し、それぞれの性能を検証してみたいと思います。サーバ機と仮想マシンのスペックは「物理マシンと仮想マシンの性能差」のテストと同様です。性能計測も、前述のテストで用いたdbenchを再び使用します。

 以下が、そのテスト結果です。

図7
図7 仮想ディスクのフォーマットによる性能差(Write Cache ON)

 LVMの論理ボリュームを用いた仮想マシンが最も良い性能を示し、次いでファイル、Sparseファイルとなっています。確かに優劣はあるものの、その差はわずかです。

 ところで、このテストは、ストレージコントローラのWrite Cacheが「ON」の状態で行っています。

 Write Cache(ライトキャッシュ)とは、物理的にメインメモリとは別に存在するストレージコントローラ専用のメモリです。OSからは透過的に動作し、OSから書き込み命令のあったデータを専用メモリに書き込んだ時点で、OS側に制御が返ります。実際のディスクへの書き込み完了を待たずに次の処理に移ることができるため、I/O待ち時間が大幅に短縮されます。

 ハイエンドのRAIDコントローラなどには、このWrite Cache機構が搭載されていることがほとんどです。しかし一般的なサーバ機には、まだ標準では搭載されていないケースが多いと思われます。

環境に応じてWrite Cacheを賢く使う

 それでは、このWrite Cache機構を「OFF」にするとどうなるでしょうか。以下はWrite CacheをOFFにして、先ほどと同様のテストを行った結果です。

図8
図8 仮想ディスクのフォーマットによる性能差(Write Cache OFF)

 LVMの論理ボリューム、ファイルを用いた仮想マシンでは少し性能が劣化した程度ですが、Sparseファイルを用いた仮想マシンでは大幅に処理能力がダウンしています。

 前二者は、OSのページキャッシュを活用してディスクへの同期処理をうまく節約できていたので、Write Cacheがなくてもそれなりの処理速度を保つことができます。しかしSparseファイルの方は、そのフォーマット上、データ書き込みを行うとより多くのディスク同期処理が発生してしまいます。このため、2つ目のテストではWrite Cacheに頼っていた部分がI/O待ち時間になってしまい、それが処理速度の低下という結果を招いたと考えられます。

注:Sparseファイルへのデータ書き込みに余計な負荷が掛かるのは、仮想化に起因するものではありません。物理マシン上でも、Sparseファイルへの書き込みは通常のファイルへの書き込みに比べて速度が劣化します

 従って、結果としてはSparseファイルをベースとした仮想マシンは、書き込み処理が多い環境下では極端に性能が劣化する場合があるため注意が必要です。しかしWrite Cache付きのストレージコントローラをインストールすることにより、Sparseファイルを使用した仮想マシンでも、ほかの仮想ディスクフォーマットと同レベルの処理能力へと性能を飛躍的に改善できる可能性があります。

 今日では、Write Cacheを搭載したストレージコントローラは比較的安価に購入できます。仮想ディスクにSparseファイルを用いる環境では、このようなハードウェアは必須といえるでしょう。SparseファイルとストレージコントローラのWrite Cacheを組み合わせることにより、パフォーマンスの劣化を緩和させながらディスクを大幅に節約できます。これは仮想マシン環境だからこそ実現できるコストダウンの一例といえます。

 あるいは、仮想ディスクがSparseファイルでなくとも、一部のデータベースなどのアプリケーションが同期書き込みを頻発するような場合も同様です。特にサーバ統合を行う仮想化環境ではディスクI/Oはボトルネックとなる可能性が高い個所なので、さらにストレージコントローラのWrite Cacheの重要性は高いといえます。

 以上の2種類のパフォーマンステストを通じて、どういった要素が仮想マシンの性能に影響を与えるかが分かってきたと思います。次回はこれを踏まえて、1台の物理マシンにどのくらいの仮想マシンを搭載できるのかという仮想マシンの集約密度について詳しく見ていきます。

2/2

Index
実践! Xenで実現するサーバ統合(2)
実測! 物理マシンと仮想マシンの性能差は?
  Page 1
物理マシンと仮想マシンの性能差
 CPUの性能
 ディスクの性能
 コラム SATAとSAS
  Page 2
 ネットワークの性能
仮想ディスクのフォーマットによる性能差
 フォーマットによる性能差
 環境に応じてWrite Cacheを賢く使う

Linux Square全記事インデックス


 Linux Squareフォーラム 仮想化技術関連記事
連載:実践! Xenで実現するサーバ統合
有力な仮想化技術として注目を集めるようになった「Xen」。このXenを活用してサーバ統合を実践していく手順を具体的に紹介します
特集:サーバの仮想化技術とビジネス展開の可能性
jailからUML/VMwareまで
1台のマシンで複数のサーバを動かす「仮想化技術」。VMwareやUMLの登場により、WebサイトだけでなくOS自体を仮想化できるようになった
特集:仮想化技術のアプローチと実装
VMwareから要注目技術Xenまで

1台のサーバで複数の仮想マシンを実行する仮想化技術は、空間コストを引き下げる可能性を持つ。最新の仮想化技術を概観してみよう
特集:仮想OS「User Mode Linux」活用法
技術解説からカーネルカスタマイズまで
Linux上で仮想的なLinuxを動かすUMLの仕組みからインストール/管理方法やIPv6などに対応させるカーネル構築までを徹底解説
特集:仮想化技術の大本命「Xen」を使ってみよう
インストール & Debian環境構築編

高いパフォーマンスで本命の1つとなった仮想マシンモニタ「Xen」。日本語による情報が少ないXenを、実際に動かしてみよう
特集:仮想化技術の大本命「Xen」を使ってみよう
Xen対応カスタムカーネル構築編

Xen環境およびその上で動作する仮想マシン用カーネルを自分で構築しよう。これにより、自由にカスタマイズしたカーネルを利用できる
特集:IPv6、UML、セキュリティ機能の統合
全貌を現したLinuxカーネル2.6[第4章]

今回は、これまでに紹介し切れなかった機能を一気に紹介する。これを読めば、カーネル2.6の正式リリースが楽しみになるだろう
Linux Squareプロダクトレビュー VMware Workstation 4
PC/AT互換機エミュレータとして不動の地位を築いたVMware。その新バージョンがリリースされた。新機能を早速試してみよう
古くて新しい「サーバ仮想化技術」の行方
サーバ仮想化を実現するための技術がソフトウェア、ハードウェアの両面で出そろってきた。ハイパーバイザーのさらなる高速化に向けた動きを紹介する
Linux Squareフォーラム全記事インデックス

ホワイトペーパーTechTargetジャパン

Linux Square フォーラム 新着記事

@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

RSSフィード

スキルアップ/キャリアアップ(JOB@IT)



- PR -
- PR -

お勧め求人情報

キャリアアップ 〜JOB@IT
@IT Special -PR-
  企業の仮想化に足りない“発想”とは?
仮想化運用管理のキモは意外なところに!

New!
  操作もマニュアルも分かりやすい!
ユーザー視点で開発されたPC管理ツール

New!
  仮想化すればコストは削減できるか?
仮想化に必要な「3つの視点」を解説する

  セキュリティを知り尽くす上野氏が登壇!
@ITメールソリューションLive! in Tokyo

  運用管理の課題を“2つの観点”から分析
ユーザー満足度の高い「仮想環境」とは?

  世界に通用するストレージの作り方とは?
製品に込めた思いを富士通の開発者に聞く

  OSSで手間も時間も、障害も減った――
「マピオンの事例」オープンソース活用法

  「ノートPCの持ち出し禁止」で大丈夫?
情報漏えいを防ぐ管理手法とインフラは?

  1日の処理を1秒に――MySQLの達人が語る
「コスト削減」できるチューニング

  ドキュメント作成を自動化して、SEの作業
効率を大幅アップ! Visio 2007の魅力

  急速に広がるHyper-Vでのサーバ仮想化
そのベストプラクティスをデルが解説

  @IT主催セミナーで語られた、「担当者に
求められるセキュリティ対策」をレポート

  @IT「Windows 7」 特設サイトオープン!
最新情報・移行ノウハウを公開しています