前項においてHyper-Vの一連の導入手順をご紹介したが、意外と簡単に導入できると感じられたのではないだろうか。筆者は、まさにマイクロソフトの狙いはそこにあるのではないかと感じている。一般的に新技術を習得する際には、新たなアーキテクチャを理解し、新たな操作手順、新たな運用管理方法を身に付ける労力が必要となる。Hyper-Vは、「まずはインストールして適当に動かしてみる」といった説明書が不要な容易さがある。そこには、カタログやマニュアルをいろいろと調べてVMMの導入で悩む前に、取りあえずHyper-Vを管理者自らがインストールして、体感することで、その有用性や活用方法が実感できるという手軽さがある。
今後、より一層のハードウェア・デバイスのサポートが拡大され、活用範囲が広がることが期待されている。またパフォーマンスの高さも注目されていることから、今後の展開にも期待したい。なおパフォーマンス検証やより具体的なHyper-Vの管理や活用方法については別記事でお届けする予定である。
「仮想マシンにゲストOSをインストールし、統合サービスを導入する」という手順を行っていると、ふと1つの疑問が生じる。統合サービスを導入する前の仮想マシンのデバイス・ドライバはどのようになっているのか? その答えは、表1を見てほしい。
Hyper-V 統合サービス 導入前 | Hyper-V 統合サービス 導入後 | ||
---|---|---|---|
DVD/CD-ROMドライブ | Msft Virtual CD/ROM | Msft Virtual CD/ROM | |
IDE ATA/ATAPI コントローラ | Intel 82371 AB/EB PCI Bus Master IDE Controller | Intel 82371 AB/EB PCI Bus Master IDE Controller | |
コンピュータ | ACPI ユニプロセッサ x64 ベース PC | ACPI ユニプロセッサ x64 ベース PC | |
ディスク・ドライブ | Virtual HD | Virtual HD | |
ディスプレイ・アダプタ | 標準 VGA グラフィック アダプタ | Microsoft Virtual Machine Bus Video Device | |
ネットワーク・アダプタ | 不明なデバイス | Microsoft Virtual Machine Bus Network Adapter | |
プロセッサ | Intel Xeon CPU E5345 @ 2.33GHz | Intel Xeon CPU E5345 @ 2.33GHz | |
システム・デバイス | Disk Virtual Machine Bus Acceleration Filter Driver | ||
Disk Virtual Machine Bus Acceleration Filter Driver | |||
Hyper-V Data Exchange | |||
Hyper-V Guest Shutdown | |||
Hyper-V Heartbeat | |||
Hyper-V Time Synchronization | |||
Hyper-V Volume Shadow Copy | |||
Microsoft Emulated S3 Device Cap | |||
Virtual Machine Bus | |||
表1 統合サービス導入によるデバイス・ドライバの変化(特徴的なものを抜粋) 赤字で示したものが統合サービスの導入によって変化したデバイス・ドライバである。ゲストOSがWindows Server 2003 SP2(x64)で、1仮想プロセッサで構成した場合を示している。 |
統合サービスの導入前は、Virtual Server 2005 R2と同様にすべてのデバイスがエミュレートされて動作しているのに対し、導入後はVMBusがシステム・デバイスに追加され、VMBusを使用するためのVSCがディスク(システム・デバイス内の「Disk Virtual Machine Bus Acceleration Filter Driver」)/ディスプレイ・アダプタ/ネットワーク・アダプタに構成されている。つまり、VMBusでバイパスして利用されるデバイスは、「ディスク」「ディスプレイ・アダプタ」「ネットワーク・アダプタ」ということになる。なお、VMBusの実体は、共有メモリであるため、伝送速度は非常に高速である。
それでは、仮想マシンのプロセッサとメモリはどのように制御されているのだろうか? その鍵を握るのは、プロセッサの仮想化支援機能(Intel VT/AMD-V)である。仮想化支援機能を活用することで、ハイパーバイザがすべてのプロセッサ/メモリ処理の調整を行えるようになる。仮想マシンを配置するチャイルド・パーティションのみならず、Hyper-Vの管理を行うペアレント・パーティションまでもがハイパーバイザの統制下でプロセッサ/メモリを使用していると想像していただきたい。つまり、Hyper-Vが構成された環境では、プロセッサ/メモリは、すでにハイパーバイザによって仮想化された状態で提供されているわけだ。
ホストOSにおけるデバイス・ドライバの変化としては、Hyper-Vを導入した時点で、「仮想マシン バス」と「仮想化インフラストラクチャ ドライバ」が追加される(図A)。
これらはそれぞれ、VMBusとVSPに該当する。VMBusでバイパスされてきた処理要求をVSPがホストOSの各デバイス・ドライバに渡して処理を行う。VMBusを使用した一連の処理は、カーネル・モードのみで完結するため、オーバーヘッドが少ない。逆に、統合サービスを導入していない状態では、前述のとおりVirtual Server 2005 R2と同様のアーキテクチャであり、パフォーマンスも同等レベルであると予想される。
Copyright© Digital Advantage Corp. All Rights Reserved.