Enterprise Watch
バックナンバー

Hyper-Vはどの程度使えるか【第三回】

仮想マシンでできること

 前回は、OSをインストールするところまで説明した。今回は、Hyper-V上のゲストOSをどう使うのか? さらに、各仮想マシンの詳細な設定などを説明していく。


[Ctrl]+[Alt]+[Del]キーの入力方法

[Ctrl]+[Alt]+[Del]キーの入力は、左端のアイコンで行える
 まず覚えておくべきは、ゲストOSにキーボードから[Ctrl]+[Alt]+[Del]キーを伝えることができない。これは、[Ctrl]+[Alt]+[Del]キーの組み合わせが、ペアレントOSのキーとして伝えられるからだ。このため、ゲストOSではゲストOSをアクティブにしてから、[Ctrl]+[Alt]+[End]キーと入力すればOK。または、ゲストOSのウィンドウのメニュー下にある一番左のアイコンをクリックすればいい。または、メニューの[操作]から[Ctrl+Alt+Del]を選択してもOKだ。

 ゲストOSを全画面表示にしている場合でも、[Ctrl]+[Alt]+[Del]キーはペアレントOSに伝えられる(全画面表示とウィンドウ表示の切り替えは、[Ctrl]+[Alt]+[Break]キー。中断キーは[Break]キー)。


統合サービスのインストール

 ゲストOSをインストールしたら、最初に行いたいのは、統合サービスのインストールだ。統合サービスをサポートしているOSは、一回目のHyper-VがサポートしているOSリストに掲載している。このとき注意が必要なのは、各OSではSPが必須となっていることだ。もし、SPを統合したOSメディアがない場合は、一度エミュレーションモードで立ち上げて、その後SPをゲストOSに当てる必要がある。

 統合サービスのインストールは、ゲストOSのメニューから[操作]→[統合サービスセットアップディスクの挿入]を選択すれば、自動的に仮想CD/DVD-ROMにマウントされ、自動セットアップが開始する。

 統合サービスがインストールされれば、ゲストOSの各種ドライバがVMBusに対応したものになる。これにより、ネットワークは[Hyper-Vの設定]で作成した仮想ネットワークに対応したドライバがインストールされる。

 なによりも便利なのは、マウスの操作だ。エミュレーションモードでは、ゲストOSとペアレントOSでマウスを切り替えるには、ゲストOSのウィンドウ上でマウスの左ボタンをクリックする必要があった。また、ゲストOSからペアレントOS側にマウスのコントロールを切り替えるには、ゲストOS上で[Ctrl]+[Alt]+[←]キーを押さなければならない。

 しかし、統合サービスのインストール後は、マウスはシームレスに利用することができる。つまり、ゲストOSのウィンドウにマウスポインタを持っていけば、自動的にゲストOSのマウス操作に切り替わり、マウスポインタをゲストOSのウィンドウに持っていけば、その時点でペアレントOSのマウスになる。書いているとわかりづらいが、実際に使ってみると、非常に便利な機能だ。


[プロセッサの機能を制限]をオンにすることで古いOSにも対応
 Hyper-Vのサポート対象外のOSを動作させるにはどうするのか? マイクロソフトでは、統合サービスをサポートしているOSをHyper-Vでの動作サポートOSとしている。しかし、エミュレーションモードを利用すれば、ほとんどのOSが動作する。実際、サポート対象外となっているWindows NT 4.0をゲストOSとしてインストールしてみたが、きちんと動作している。

 ただし、古いOSをインストールするときには、若干注意が必要だ。ゲストOSをインストールする前に行う仮想マシンの作成において、「プロセッサ」項目の「プロセッサの機能」で「プロセッサの機能を制限」のチェックする。

 古いOSは、最新のプロセッサの新しい機能をサポートしていないことがほとんどだ。このため、新しいプロセッサの機能をONにしたまま古いOSをインストールすると、インストールできなかったり、起動後に動作が不安定になる可能性がある(状況は、OSによって異なる)。このため、仮想マシンの仮想プロセッサの機能を制限して、古いOSが動作できるようにしている。


仮想環境の最大のメリット「スナップショット」

 仮想環境を利用していて、もっとも便利に感じるのが「スナップショット」という機能だろう。スナップショットを簡単にいえば、現在のOSの状態をそのまま保存できる機能だ。スナップショットは複数個作成することもできるし、以前のスナップショットに戻すこともできる。

 これを利用すれば、企業でOSのパッチを当てるときに、OSの最初のインストール状態をオリジナルにして、パッチを当て、仮想環境で動かしているOSにトラブルがないかをチェックしてから、企業全体にパッチを配布するということもできる。

 もちろん、あるアプリケーションをテストで導入する場合でも、自社のオリジナル環境をスナップショットとしてとっておき、その上にアプリケーションをインストールすれば、簡単にテストを行える。もし、アプリケーションを導入して、トラブルが起こったとしても、オリジナル環境がスナップショットとして保存されていれば、すぐにでも元に戻すことができる。


仮想マシンの動作中に[スナップショット]を選択 必要に応じてスナップショットに名前をつけておく スナップショットはいくつも作成できる

 Hyper-Vでスナップショットを利用するには、仮想マシンのウィンドウの[操作]→[スナップショット]を利用するか、仮想マシンのウィンドウに表示されている右から2つ目のアイコンをクリックするだけでOKだ。

 スナップショットを作成するときには、スナップショットの名称を入力するかどうかが聞かれる。もし、新しいスナップショット名を入力したいなら、ここで名前を入力すればいい。また、一番右のアイコンでは、現在起動しているOSを一つ前のスナップショットに戻すかどうかという選択が行える。

 Hyper-Vマネージャでは、各OSで作成したスナップショットをツリーとして見ることができる。このツリーには、スナップショットが作成された順番にツリー状に表示されているため、現在動かしているスナップショットが、どのツリーから作成されたかを一目で知ることができる。

 この画面では、スナップショットを作成した日時も記録されているから、どのスナップショットがいつ作成されたかも一目でわかる。だたし、同じ名前で、スナップショットをとりすぎると、ツリーを見ても訳がわからないことになる。できるだけ、スナップショットの名前が長くなっても、わかりやすい名前をつけておく方がいいだろう。

 現在、起動の対象となっているスナップショットは、ツリー上でスナップショット名のあとに[今すぐ実行]と表示されている。

 基本的にスナップショットは、ツリーのトップのスナップショットからの差分を保存している。このため、スナップショットの数だけ、仮想マシンで初期設定したディスク容量を消費するわけではない(差分のため非常に小さい)。多くのスナップショットを作成しても、Hyper-Vが使用するディスク容量を気にしなくてもいい。


CD/DVDの利用方法

 メニューの[メディア]では、CD/DVDやフロッピーディスクをマウントすることができる。CD/DVDに関しては、[設定]で実際に存在する物理ドライブが指定されていれば、物理的なメディアにアクセスにいく。そうでない場合は、HDD上にあるISO形式の仮想CD/DVDファイルをマウントするだけで、CD/DVDが挿入されたことになり、簡単にアクセスできる。メディアを交換するときは、[取り出し]を選択して、再度[挿入]からISOファイルを選択すればOKだ。

 フロッピーディスクに関しては、物理的なフロッピードライブをマウントできない。このため、利用できるのは仮想フロッピードライブのみだ。使用するには、HDDの中にある仮想フロッピードライブフォーマット(.vfdファイル)を[挿入]から選択する。


ISOファイルをマウントするには、[メディア]→[DVDドライブ]→[ディスクの挿入]をクリックする あとはISOファイルを選択するだけ オートランに対応したCD/DVDであれば自動的に起動する

仮想マシンの電源管理

電源の管理は[操作]メニューで行える
 仮想マシンのウィンドウには、現在動作しているOSを「一時停止」「保存」「停止」「シャットダウン」「リセット」する機能が用意されている。

 一時停止は、動作している仮想マシンの動作を一時的に停止させるものだ。一時停止している間は、CPUパワーは消費しない。また、[再開]ボタンを押せば、すぐに動作を始める。

 保存は、現在のOSの状況をディスクに保存する。これを行うと、現在のスナップショットに、ゲストOSの情報が保存される。保存と同時に、仮想マシン自体はオフになる。このため、シャットダウンしなくても、保存を使えば、PCのスリープやハイバネーションと同じ感覚で仮想マシンを使うことができる。

 停止は、仮想マシンを一気に停止させる機能。これは、PCの電源をオフにしたのと同じ状況になる。このため、データの保存などもされないし、仮想ハードディスクにアクセスしていたときには、ゲストOS自体がクラッシュする可能性もある。

 シャットダウンは、ゲストOSをシャットダウンさせる機能。ただし、仮想マシンのウィンドウからシャットダウンできるゲストOSは、統合サービスがインストールされているゲストOSに限られる。統合サービスがインストールされていないゲストOSでは、「エラーが発生して、シャットダウンできません」というアラートが表示される。

 リセットは、仮想マシンに対して、リセットボタンを押すのと同じ効果がある。強制的にゲストOSを再起動するため、データなどはきちんと保存されない。


ハードウェアの追加方法

SCSIコントローラやネットワークアダプタを追加できる
 設定メニューを使うと、仮想マシンに新しいハードウェアを追加することができる。追加できるハードウェアは、SCSIコントローラ、ネットワークアダプタ、レガシーネットワークアダプタ。

 SCSIコントローラは、HDDだけを対象としており、そのほかのSCSIデバイスはサポートしていない。ゲストOSでは、IDEで4つ、SCSIで4つの計8台のディスクドライブをサポートしている。ただし、CD/DVDドライブが1つ使用するため、HDDで利用できるのは最大7つとなる。

 ネットワークアダプタは、統合サービスで利用できるネットワークアダプタを追加できる。ゲストOSが統合サービスをサポートしていない場合は、レガシーネットワークアダプタを使用する。レガシーネットワークアダプタは、「DEC(Intel)2114010/100TX 100MBイーサネットアダプタ」がエミュレートされている。


ブートデバイスの順序の設定

標準では、CD、IDE、レガシーネットワークアダプタ、フロッピーの順で起動する
 物理マシンと同様、仮想マシンでもブートデバイスの優先順位を設定できる。設定は、BIOSで行う。CD、IDE、レガシーネットワークアダプタ、フロッピーの4種類のデバイスから選択できる。上位にあるほど、優先度が高い。

 また、ブート時にキーボードのNumLockをオンにするか、オフにするかの設定も行える。


メモリ容量の変更方法

物理マシンに搭載されている容量の範囲内で設定可能
 仮想マシンで使用するメモリの容量は、自由に変更できる。メモリで直接容量を指定すればOKだ。ただし、ペアレントOSから指定しただけのメモリ量が使用されるので、全体とのバランスを考えてメモリ量は設定しよう。

 なお、2ソケットCPUのOpteronなどで使われているNUMAアーキテクチャの場合、設定するメモリ容量は各ノードが持っている物理メモリよりも大きな容量にしない方がいい。物理メモリ以上の容量を指定すると、ノードを超えて、ほかのノードが持っているメモリを使用することになるため。そのため、ゲストOSのメインメモリの中で、速いメモリと遅いメモリができてしまい、ゲストOSの動作が非常に遅くなってしまうからだ。NUMAアーキテクチャの物理マシンを使用しているときは注意しよう。


プロセッサ数の変更方法

OSにより異なるが、最大4つのプロセッサを搭載可能
 ゲストOSが使用するプロセッサの数も、プロセッサから自由に変更できる。プロセッサの数は、1個、2個、4個から選択可能。ただし、ゲストOSによって使用できるプロセッサの数が異なるので注意が必要だ。また、NUMAアーキテクチャのマシンでは、メモリと同様、各ノードがサポートしているプロセッサ数よりも大きな数字にすると、パフォーマンスが著しく低下することになる。このため、1ノードでサポートされているコア数を超えないように設定する必要がある。

 なお、仮想プロセッサでは、使用するリソースを設定することができる。この設定では、プロセッサを仮想マシン間でどのように配分していくのか、という設定が可能だ。

 [仮想マシンの予約]では、必ずこの仮想マシンが使用するプロセッサのリソースを指定することができる。0%だと、この仮想マシンにリザーブしたプロセッサリソースはなく、システムの負荷によって仮想マシンの動作も遅くなる。ここで仮想マシンの予約をしておけば、最低限あるパーセンテージのプロセッサリソースが予約されるため、システム全体が遅くなっても、指定したプロセッサリソース分だけのCPUパワーでゲストOSを動かすことができる。逆にいえば、この仮想マシンが起動していると、ゲストOSがそれほどCPUパワーを使っていなくても、指定したパーセンテージだけのCPUパワーは無駄に利用されることになる。

 [仮想マシンの限度]では、仮想マシンが使用できる最大の割合を指定できる。これにより、ゲストOSがもっとも負荷がかかったときに、どのくらいのCPUパワーを使用できるのかを設定できる。

 [相対的な重み]では、各仮想マシン間で、どの仮想マシンによりリソースを配分するのかを決められる。複数のゲストOSを常時運用する場合は、この設定をきちんとセットすることで、スムーズで、効率のいい仮想環境の運用が行える。

 [プロセッサの機能]では、Windows NTなど古いOSに現在のCPUを対応させるために、いくつかの機能を制限するオプションだ。Windows NTなどを動かすときは、このオプションをオンにする。


HDDの設定方法

[追加]をクリックすると、新しい仮想HDDを追加できる
 標準では、IDEコントローラ0の下に起動用のHDDが用意されている。新しい仮想HDDを追加する場合は、IDEコントローラ0またはIDEコントローラ1をクリックし、[ハードドライブ]を選択して[追加]をクリックすればOKだ。

 仮想HDDを追加すると、仮想HDDのファイルを作成する必要がある。すでにある仮想HDDファイルを使うのであれば[参照]で指定を、新しく仮想HDDを用意するのであれば[新規]を選択する。

 新規で仮想HDDを作成する場合、「容量可変」「固定容量」「差分」の3つから仮想HDDの種類を選択できる。「容量可変」は、使用している容量に応じて、容量が自動的に拡張されるタイプの仮想HDD。「固定容量」は、仮想HDDの容量をあらかじめ固定するもの。「差分」は、差分情報だけを保存するタイプの仮想HDD。差分だけを保存することから、親となる仮想HDDを指定する必要がある。

 アクセススピードからみると、「固定容量」が速い。その次が「容量可変」、最後が「差分」となる。どのタイプの仮想HDDを使用するかは、使い勝手やアクセススピードを考慮して選択するといいだろう。


仮想HDDは3種類から選択可能
仮想HDDの名称と保存場所を指定 容量を指定する。既存の仮想HDDの内容をコピーすることも可能

編集では、仮想HDDの最適化、種類の変換、容量の拡張が行える
 作成した仮想HDDは、[編集]を使って種類を変更することも可能だ。[編集]では、仮想HDDから空き容量を削除して最適化する「最適化」、容量可変の仮想HDDを固定容量に変更する「変換」、仮想HDDの容量を拡張する「拡張」が用意されている。そのほか、差分を選んだ場合は、親となる仮想HDDと差分ファイルの内容を統合するメニューなども用意される。ただし、スナップショットを作成している場合は、仮想HDDの編集は行えないので注意が必要だ。

 もう一つ面白いのが、「物理ハードディスク」という設定。この設定は、仮想HDDをファイルではなく、ペアレントOSにある空のHDDをそのまま利用するものだ。このため、アクセススピードは、物理的なHDDをそのまま利用することになるで格段に速くなる。ただし、スナップショットなど、仮想HDDが持つ機能は利用できなくなる。なお、この物理ハードディスクを利用するには、接続先のHDDがオフライン状態になっていないと使えない。また、1台のHDDは複数のゲストOSからは利用できない。


イーサネットカードの追加

 イーサネットカードは、[ネットワークアダプタ]から追加・削除ができる。追加できるのは、仮想ネットワークマネージャで作成したアダプタのみ。物理的にイーサネットカードを追加した場合などは、まず仮想ネットワークマネージャで仮想ネットワークを作成しておく必要がある。


仮想マシン全体の管理

自動開始アクションや自動停止アクションを設定することができる
 [管理]を使うと、仮想マシンの名前、Hyper-Vが提供している統合サービスの内容(ゲストOSがサポートしているかではない)、スナップショットのファイルの場所、物理コンピュータの起動時に、この仮想マシンがどのような動作を実行させるのかを設定する「自動開始アクション」、物理マシンのシャットダウン時に、仮想マシンをどのように動作させるかを設定する「自動停止アクション」などの設定が用意されている。


 次回は、Hyper-Vのパフォーマンスをいくつかのベンチマークでテストしてみる。また、Hyper-Vを管理できるSystem Center Virtual Machine Manager 2008(SCVMM 2008)なども紹介する予定だ。


関連記事
  ・ Hyper-Vはどの程度使えるか【第一回】(2008/09/19)
  ・ Hyper-Vはどの程度使えるか【第二回】(2008/09/26)


( 山本 雅史 )
2008/10/03 08:49

Enterprise Watch ホームページ
Copyright (c) 2008 Impress Watch Corporation, an Impress Group company. All rights reserved.