第4回 Windows Server 2008 R2の目玉機能「Hyper-V 2.0テクノロジ」とは:Windows Server 2008 R2の真価(2/3 ページ)
ライブ・マイグレーションのサポートやパフォーマンスの向上など、着実に進化したHyper-V 2.0。その強化ポイントなどを整理する。
Hyper-V 2.0の強化ポイント
それでは、Hyper-V 2.0で強化されたポイントを紹介しよう。下表はHyper-V 2.0の主な新機能を一覧にまとめたものだ。この表から分かるとおり、新機能は多岐にわたる。
機能 | 新規/強化 | 内容 | 活用方法/コメント | |
---|---|---|---|---|
可用性の強化 | ||||
ライブ・マイグレーション(Live Migration) | 新規 | VMwareのVMotionに相当する機能。稼働中の仮想マシンをダウンタイムなしで別の物理サーバへ移行できる | Hyper-V 2.0の目玉となる機能。「仮想化ならでは」といえるテクノロジであり、待望されていた | |
クラスタの共有ボリューム(CSV) | 新規 | ライブ・マイグレーション実現のために搭載された、クラスタ・ボリューム・マネージャ | ファイル・システムはクラスタ対応ではなく、通常のNTFSであることに注意 | |
プロセッサ互換性モード | 新規 | 移行元と移行先のホストが異なるプロセッサを使用していても、拡張命令をマスクしてライブ・マイグレーションを可能にする | VMwareのEnhanced VMotion Compatibility(EVC)に相当する機能 導入後に、新しいサーバを追加増設するといったケースで効果を発揮する |
|
パフォーマンスの強化 | ||||
第2世代ハードウェア・アシスト(SLAT)の対応 | 新規 | 最新のプロセッサに搭載されている第2世代の仮想化アシスト技術(Intel EPTやAMD RVI)に対応 | メモリ・アドレスの変換処理をプロセッサ側でハードウェア処理することで、プロセッサ負荷を大幅に抑える | |
ネットワーク関連のパフォーマンス向上 | 強化 | 従来のLarge Send Offload(LSO) v1に加え、下記テクノロジをサポート ・IPv6 Offload ・Large Send Offload(LSO)v2 ・TCP Offload(VM Chimney) ・Virtual Machine Queue(VMQ/VMDq) ・Jumbo Frame |
VM ChimneyとVMQ(VMDq)はサーバに搭載されるNIC側の対応も必要。これらの多くの機能は、ネットワーク処理の一部をNIC側に任せられるため、プロセッサ負荷の軽減が期待できる | |
ディスク関連のパフォーマンス向上 | 強化 | 容量固定VHD:作成時間が1/3〜1/4に短縮 容量可変VHD:容量固定に近い性能に向上 差分VHD:4〜5倍に性能向上 各種ブロック・サイズの改善など |
Hyper-V 1.0と比べ、大幅に性能が向上している | |
NUMAアーキテクチャ の最適化 |
強化 | NUMA利用時において、仮想化を意識し、アーキテクチャに則したアクセス処理を行うように最適化 | Intelの最新であるNehalemマイクロアーキテクチャや、AMDのOpteronプロセッサがNUMAに対応している | |
運用管理性の強化 | ||||
ディスクのホットプラグ | 新規 | ゲストOSをシャットダウンせずに、ディスク(VHD)の付け外しが可能(SCSIポート配下のみ) | 無停止によるVHDファイルの拡張や、ホスト−ゲストOS間/ゲストOS同士でデータを転送したい場合に便利 | |
コア・パーキング | 新規 | アイドル時に一部のプロセッサ・コアを動的に無効化し、消費電力を削減 | R2本体の新規機能 Hyper-V 2.0環境でも利用できる |
|
Server Core環境での.NET Frameworkのサポート | 新規 | 親パーティションにインストールしたServer Core上で.NET Frameworkを利用できる | R2本体の強化機能 計画停止が少ないServer Core環境でもPowerShellスクリプトが利用可能に |
|
管理用ネットワークの完全な分離 | 強化 | 仮想マシン・ネットワークから親パーティションを完全に分離可能 | ネットワーク構造がシンプルになり、互いのセキュリティも確保できる | |
スケーラビリティの強化 | ||||
1ホスト当たりのスケーラビリティの強化 | 強化 | 論理プロセッサ搭載数:16個から64個へ向上 仮想マシン数:128台から384台へ向上 仮想プロセッサの割り当て総数:128個 から512個へ向上(*1) |
(Hyper-V 1.0との比較) マルチコア化が進む最新プロセッサのスケーラビリティに対応した *1:論理プロセッサ搭載数×8まで |
|
そのほか | ||||
Linux用Integration Components (ICs) 2.0 | 強化 | Linux用ICsが2.0にバージョン・アップ ゲストOSはXenカーネルではなく、通常カーネルで動作する |
サポートOSが異なるので注意 なお、Hyper-V 2.0はICs 2.0だけでなく1.0も引き続きサポートする |
|
VDI | 新規 | クライアントOSをHyper-Vで仮想化する、次世代のシンクライアント・ソリューションを実現 | R2より追加されたRemote DesktopサービスやSystem Center 製品などを併用して実現 | |
Hyper-V 2.0の主な新機能 Hyper-V 2.0の新機能はライブ・マイグレーションだけではない。パフォーマンスの強化など、多岐にわたって着実な進化が遂げられている。この表は、マイクロソフトの資料と同社のAnthony F Voellm氏のBlog、および筆者の試用経験をベースに作成したものである。 |
この中で、次の3つの機能を特に押さえておきたい。
■ライブ・マイグレーションとCSV
ライブ・マイグレーションとは、稼働中のゲストOSをダウンタイムなしで別の物理サーバに移動させる技術である。VMware ESXのVMotionや、XenのXenMotionに相当するため、こういった製品で使用経験のある読者も多いかもしれない。
ライブ・マイグレーションは仮想化を象徴する機能であるため、多くのユーザーから待望されていた。Hyper-V 2.0は、このライブ・マイグレーションが標準で利用できる。
少し技術的な話をしよう。ライブ・マイグレーションの実装にはVMwareのVMFSのようなクラスタ・ファイル・システム機構が不可欠だ。このため、本機構を搭載していないWindowsベースのHyper-Vで実現が難しいとされていた。実際、Hyper-V 1.0ではシャットダウンこそ不要ながら、ダウンタイムを生じる「クイック・マイグレーション」にとどまっていた。クイック・マイグレーションについては「Hyper-V実践サーバ統合術 第4回 Hyper-Vによるクイック・マイグレーションの実践」を参照してほしい。
しかし、Hyper-V 2.0は依然としてクラスタ・ファイル・システム機構は未搭載のままであり、ファイル・システムとして引き続きNTFSを利用する。代わりに、ボリューム・マネージャのレイヤに特殊な仕組みを加えることで、単一LUNに対する同時アクセス制御とライブ・マイグレーションを実現させた。これが、CSV(Cluster Shared Volume。クラスタ共有ボリューム)なのである。
なお、ライブ・マイグレーションやCSV、クイック・マイグレーションはWindowsのフェールオーバー・クラスタ(WSFC)機能で動作する。System Center製品が必須と勘違いされている方が多いが、ライブ・マイグレーションに関してSystem Center製品はフロントエンドなだけであり、必須ではない。
ライブ・マイグレーションの動作イメージ
稼働中の仮想マシンのデータは、メモリとディスク上に格納されている。メモリ・データのネットワーク・コピーと、CSVによる単一LUNへの同時アクセスによってライブ・マイグレーションは実現される。
また、ライブ・マイグレーションは基本的に手動で移動させる機能であるが、実際のサーバ運用ではHA(High Availability:高可用性)と呼ばれるフェールオーバー・クラスタリング、つまりハードウェアなど障害が発生してサーバ・マシンがダウンした場合に、即座に仮想マシンを自動フェールオーバーするような仕組みも検討しておく必要があるだろう。こういった仮想マシンのHA機能は、Hyper-Vでは1.0から実装されている。
■SLATへの対応
SLATとは「Second Level Address Translation」の略であり、プロセッサの持つ仮想化支援技術(ハードウェア・アシスト)の2世代目を意味する。1世代目はIntel VT-xやAMD-Vのことで、Hyper-Vでは1.0のころから動作要件となっている。これに加え、Hyper-V 2.0では2世代目のハードウェア・アシストであるIntel EPTやAMD RVIにも対応した。
下表のとおり、EPTやRVIといったSLAT機構はプロセッサの最新テクノロジであり、2008年末ごろから実装が開始されている。SLATを利用できる環境であれば、仮想マシンの物理メモリ・アドレスを実際のアドレスに解決する際に、プロセッサ内に搭載された専用の変換テーブルでハードウェア処理する。この結果、ソフトウェア処理で強引に割り込みをしていた従来の方式に比べて、アドレス変換のオーバーヘッドが大幅に低下し、空いたプロセッサ・パワーでより多くの仮想マシンを集約可能になる。マイクロソフトの資料によると、SLATによってこのオーバーヘッドは最大1/5に低減できるということだ。
Intelプロセッサ | AMDプロセッサ | |||
第1世代 | 名称 | Intel VT-x (VT) | AMD-V | |
対応プロセッサ | Xeonプロセッサを中心に多数(2005年〜) | Revision F以降のプロセッサ(2006年〜) | ||
第2世代(SLAT) | 名称 | Intel VT-x2(EPTとも呼ばれる) | AMD RVI | |
対応プロセッサ | Intel Xeon 5500シリーズ(2009年4月〜) | Opteron 2300/8300シリーズ(2008年11月〜) Opteron 2400/8400シリーズ(2009年6月〜) |
||
ハードウェアによる仮想化支援技術と対応プロセッサ(2009年9月現在) SLATは最新のプロセッサ技術である。 |
SLATによるメモリ・アドレスの変換処理(イメージしやすいよう簡略化している)
従来の変換方式では、ハイパーバイザーがソフトウェア処理で強引に割り込むため効率が悪く、プロセッサ・パワーを余分に消費する。SLATを利用すると、プロセッサ内の専用テーブルでハードウェア処理されるため、プロセッサ負荷を最小限に抑えられる。
■ディスクのホットプラグ
ライブ・マイグレーションやパフォーマンスだけでなく、Hyper-V 2.0では運用管理性も向上している。1つ例を挙げて紹介しよう。
ネットワークが相互につながっていないPC間でデータをやりとりする場合、USBのリムーバブル・ディスクを利用するのが一般的だ。サーバ仮想化もホストとゲストOSとでネットワークを完全分離するケースが多く、さらにHyper-Vの仮想マシンではUSBデバイスを割り当てできない。このため、ホストとゲストOS間でデータを受け渡したい場合など、意外なところで苦労してしまう。
Hyper-V 2.0で追加された「ディスクのホットプラグ」は、このような場合に応用できる機能だ。Windows Server 2008 R2は、VHDファイルを直接マウントできるため、親パーティション上で空のVHDファイルを作成し、マウントする。転送したいファイルやデータをこのVHD内にコピーし、切り離して仮想マシンへホットプラグ接続すれば、あたかもUSBリムーバブル・ディスクのように簡単に受け渡しできるのだ。
ディスクのホットプラグ機能
これは仮想マシン上で実行中のWindows 7へ、VHDファイルをホットプラグ(マウント)した場合の例。実行中の仮想マシンへVHDファイルをホットプラグすると、USBリムーバブル・ディスクのように扱える。ここでは親パーティションからのデータ転送を例に挙げたが、ゲストOS同士でも構わない。
また、ディスクのホットプラグ機能は、VHDファイルの設定容量を拡張したいなど、ゲストOSを停止させずにディスク周りのメンテナンスしたい場合にも有効である。
Copyright© Digital Advantage Corp. All Rights Reserved.