以下では、仮想化ソフトウェアのインストールと、その上で動くゲストOSのインストールについて解説する。
仮想化ソフトウェアの導入方法については本稿では詳しく述べないので、前ページで紹介した記事などを参照して、用意しておいていただきたい。最新版の仮想化ソフトウェアは以下のリンクからダウンロードできる。利用するホストOSに応じて、32bit版と64bit版の2種類があるので、適切な方をダウンロード後、インストールする。
なお3つ目にあるHyper-Vの更新プログラムは、Windows Server 2008 x64 Editionの製品版(RTM版)に対する追加のモジュールである。RTM版のWindows Server 2008に含まれているHyper-V機能はベータ版であり、最終版は別途ダウンロードしてインストールする必要がある。詳しくは以下の記事を参照していただきたい。
仮想化ソフトウェアのインストールが完了したら、次はゲストOSを用意する。利用できるゲストOSは仮想化ソフトウェアごとに異なるので、それぞれのリリース・ノートを参照していただきたい。なお「サポートされている」というのは、仮想PCの上で該当するゲストOSを動作させた場合、実機上で動作させている場合と同様に、マイクロソフトで動作確認などが行われているし、そのサポートも受けられるという意味である。サポートされていないOSやService Packレベルの製品であっても、そのまま自己責任でよければ稼働させることは可能なものが多いし、実際、動作することが多い。ただしゲストOSによっては、ゲストOSのインストール後に追加する、仮想マシンの「追加機能(Hyper-Vでは統合サービス)」がインストールできないことがある(バージョン・チェックなどで拒否される)。
その場合は、追加機能なしでも利用することは(たいていの場合)可能だが、マウスの動作が異常に遅くなったり、ホストPCとのキーボードの切り替えなどがうまくいかなかったりといった問題が発生することがあるので、注意していただきたい。
なお仮想PC上で動作させるOSには、独立した正規のライセンスが必要である。ホストOSの別のコピーを仮想PC上でインストールすることは許可されていない。ただしVirtual Server 2005 R2+Windows Server 2003 R2やWindows Server 2008+Hyper-Vの場合には、ホストOSと同じOSをそのままインストールして利用できる仮想化インスタンスの権利が付与されている。それ以外のケースでは、別途用意しなければならない。
今回の連載ではWindows OSの一般的なシステム管理の手法などを解説していくため、用意するゲストOSは特に問わないが、サーバ関連の機能を主に解説する予定なので、現在主流のWindows Server 2003かWindows Server 2008を用意していただきたい。ゲストOSを持っていない場合は、以下のTechNetサイトにServer OSなどの期間限定評価版が用意されているので、これを利用するとよい。
Windows Server 2003(180日評価版)の方は別途CDキーが必要になるので、Windows Live IDを登録してキーを入手する(インストール後180日間利用できる)。Windows Server 2008の方はキーなしでインストールできるが、一定期間ごとに期限の延長作業が必要になる。60日ごとに最大3回延長でき、計240日間評価可能である。
■TechNet PlusやMSDNサブスクリプションによる評価用OSの入手
より長期間に渡ってOSを評価したり、より多くの製品を評価する場合は、マイクロソフトの提供している会員制のサブスクリプション・サービス(有償)などを利用するとよいだろう。
■マイクロソフト仮想ハードディスク・サービス
マイクロソフトでは、仮想環境を利用した評価/学習用に、仮想ハードディスク(VHD)ファイルで評価用のソフトウェアを配布するサービスも提供している。ファイルをダウンロードして仮想化PCにマウントすれば、すぐにソフトウェアが試用できる。
今回の連載の目的にはぴったりなサービスだが、残念ながらこのサービスで提供されているVHDイメージは、英語版ソフトウェアのみである。英語版ソフトウェアにおける動作確認などをする場合は利用するとよいだろう。
それではゲストOSを新しくインストールしてみよう。
ゲストOSをインストールするためには、まず仮想化ソフトウェア上に新しく仮想マシンを作成する。仮想マシンの作成はウィザードの指示に従って進めていけばよいが、仮想マシンのメモリ・サイズと仮想ファイル・サイズだけはユーザーが指定しなければならない。これらのサイズをいくつにするかについては特に基準はないが、一般的なOSのテストでは次のような値にしておけばよい。
項目 | 設定 |
---|---|
CPUコア数 | 1 |
メモリ・サイズ | Windows Vistaなら1Gbytes、それ以外のOSなら512Mbytes程度。ページ・ファイルは最小でよい |
仮想ディスク・サイズ | 16Gbytes〜64Gbytes程度 |
仮想マシンの設定例 |
Hyper-Vの場合、CPUコア数は、例えばホストCPUが2コアとか4コアなら、2とかそれ以上ゲストCPUに割り当てることが可能だが、パフォーマンスを求めるのでなければ2コアとかそれ以上割り当てる必要は特にないだろう。コア数の異なるホスト間でOSイメージ・ファイルを流用する可能性を考えると、コア数の違いによるHALの入れ換え作業などを避けるために(古いWindows OSではHALの入れ換えが発生することがある)、1コアのままでよいだろう。なおVirtual PCやVirtual Serverの場合は仮想PCでは常に1コアしかサポートしていないので、この心配はない。
仮想メモリ・サイズは仮想PCの実行パフォーマンスに大きな影響を与えるため、可能な限り多くしておきたい。だがここで確保した分、ホスト側のメモリが少なくなるので、慎重に決める必要がある。マイクロソフトの推奨値(仮想マシンの作成ウィザードで提示される値)はやや少なすぎるように感じられるので(特に日本語ゲストOSでは)、もう少し多くでもよいだろう。個人的な意見では、Windows Vistaなら1Gbytes、Windows XPやWindows Server 2003などでは512Mbytes、それ以前のOSでは256Mbytes程度あれば、必要にして十分だと思われる。なおゲストOSでページ・ファイルを利用すると、結局パフォーマンスが低下することになるので(特に固定サイズ以外の仮想ディスクを使っている場合)、ページ・ファイルは最小限にしておけばよいだろう。完全に0にするとシステムが不安定になったり、アプリケーションが不具合を起こしたりすることがあるようなので、数Mbytes〜数十Mbytesの固定サイズにしておけばよいだろう)。
仮想ディスク・サイズは最初にゲストOSをインストールするときだけでなく、今後のアプリケーションのインストール作業などにも十分余裕のあるサイズにしておきたい。とはいえあまり初期サイズを大きくしておくと、不必要に多くの場所に書き込まれてVHDファイルのサイズが増大、フラグメント化されてしまうので(容量可変のサイズの場合)、注意したい。手元の環境では、OSのインストール直後の可変容量のVHDファイルのサイズは(つまり、使われている部分のサイズは)、Windows Server 2003以前のOSなら3Gbytes弱(これはOSのインストールCD-ROMイメージも含む。詳細は後述)、Windows Vistaなら10Gbytes弱、Windows Server 2008なら6〜8Gbytes程度、(Hyper-Vの)x64版ならx86版に比べて、さらに2Gbytes程度追加で必要、という感じである。これはゲストOSの分だけなので、アプリケーションのためにさらにいくらか必要になることを考えると、一般的なOSの場合なら16〜32Gbytes、特別多くのファイルを利用する予定なら64Gbytes程度にしておけばよいだろう。
ゲストOSのインストール作業は特に難しいところはないだろう。仮想マシンの作成ウィザードで新しい仮想PCの作成を開始し、メモリとディスクのサイズを指定して仮想マシンを作成する。作成した仮想マシンを起動後、インストール用のCD-ROMやDVD-ROMイメージをマウントして実行すれば、後は実機でOSをインストールするのとほとんど変わらない。
ゲストOSのインストール後、Virtual PC/Virtual Serverなら「バーチャル マシン追加機能のインストール」、Hyper-Vなら「統合サービス セットアップ ディスクの挿入」を実行して、追加機能をインストールする。これにより、仮想デバイスのドライバなどが更新され、例えばホストPCとゲストPCのシームレスなマウスの移動や時刻の同期機能などが働くようになる。
以上でゲストOSのインストール作業は終わりであるが、作成したOSイメージ・ファイルを今後も何度も流用して使うことを考えると、後で使いやすくなるように、いくらか準備しておきたい。
■Virtual Serverにおける仮想SCSIドライバの追加
Virtual Server 2005 R2では仮想マシンに対してSCSIインターフェイスを追加できるが、以下のサポート技術情報によると、仮想インターフェイスのドライバが正しく「Microsoft Virtual Machine PCI SCSI Controller」になっていないと、パフォーマンスが低下するとされている。
これを避けるには、バーチャル・マシン追加機能のインストール前に、あらかじめSCSIインターフェイスを追加しておくか(こうしておくと、追加機能のインストール時に自動的に正しいドライバが選択される)、ゲストOSのインストール後、デバイス・マネージャで「Adaptec AIC-7870 PCS SCSI Controller」のドライバを「Microsoft Virtual Machine PCI SCSI Controller」に手動で更新する。
■ゲストOSのアクティベーション
ゲストOSのインストール作業が完了したら、ライセンスのアクティベーション作業を行っておく。アクティベーションを行っていないと、ゲストOSを起動するたびに認証画面が表示され、使いづらい。
■固定サイズのページ・ファイルの設定
デフォルトでは仮想マシンのメモリ・サイズに応じて仮想ページ・ファイル(デフォルトではC:\pagefile.sys)のサイズが変わるが、VHDファイル上にこのような可変サイズのファイルを作成するとフラグメントが発生しやすくなるし、パフォーマンスも悪くなる(仮想マシン内でのI/O処理は、エミュレーションで処理しなければならないため、実機と違ってパフォーマンスが著しく低下する)。これを避けるため、ページ・ファイルは最低限のサイズ(数M〜数十Mbytes)にしておきたい。大きなプログラムを動作させたければ、より多くのメモリを仮想マシンに割り当てるのがよいだろう。
■インストールCDの内容のコピー
OSのインストールが完了したら、さらにインストールCD-ROMの内容を仮想ハードディスクにコピーしておく。Windows Server 2003までのOSでは、コンポーネントを追加しようとすると、オリジナルのインストールCD-ROMをドライブに挿入するように要求されることがあるからだ。せっかく仮想PC上ですべて作業しようとしているのに、このダイアログが表示されると、インストールCD-ROMを探してきてシステムに挿入しなければ、先へ進めることができない。これを避けるため、あらかじめ仮想PC(仮想ハードディスク上)へインストールCD-ROMの内容をコピーしておき、インストール・ソース(インストール時に使用したCD-ROMドライブのパス)を変更しておく。具体的な操作方法は以下のTIPSを参照していただきたい。
この操作で必要なディスク領域は多くてもCD-ROM 1枚分(Windows Server 2003 R2はCD-ROM 2枚分)である。イメージをコピーする分だけ仮想ディスク・ファイルのサイズが増加するが、そのメリットを考えると、ぜひコピーしておきたいところだ。なおWindows VistaやWindows Server 2008ではOSのインストール時にあらかじめ必要なファイルがすべてコピーされるため、このような操作は不要である(その分、インストール後の仮想ファイルのイメージ・サイズはかなり大きくなっているが)。
■ディスクのデフラグとコンパクション
以上の作業が完了したら、最後に仮想ディスク・ファイルのサイズを最適化するために、1度デフラグ操作を行い、さらに未使用領域を解放するという操作を行う。具体的な手法については以下のTIPS記事を参照していただきたい。Hyper-Vの場合でも作業内容は同じである。
■読み出しのみの設定
以上の作業でゲストOSのインストールはすべて完了である。以後このゲストOSを起動し、これをベースに新しい作業を始める場合は、このファイルを基にして新しい仮想マシンを作成するか(復元ディスクとして利用すること)、新しい差分ディスクを作成して作業を行う。その場合、間違って書き込んでしまわないように、ファイルを書き込み禁止にしておこう。なお、書き込み禁止のファイルを使って新しい仮想マシンを作成しようとすると、ファイルへ書き込めないというエラーが表示されるが、それは無視してよい。復元ディスクの使い方については以下のTIPSを参照していただきたい。
■分かりやすい仮想ディスク・ファイル名の設定
一度作成した仮想ディスクは、ずっと利用できる(評価版の場合は期限があるが)。そのため、以後、利用しやすいように分かりやすい名前を付けておくとよいだろう。例えば筆者は、「VPC JPN Windows Server 2003 R2 Enterprise SP2.vhd」や「HV JPN Windows Server 2008 Server Core Standard x64 SP1.vhd」「HV JPN Windows XP Pro x86 SP2.vhd」のように、OS名や言語、Service Packレベル、アーキテクチャ(x86かx64)、対象仮想アーキテクチャ(VPCかHV)などをベースにした名前を付けてファイルを整理している。
今回は、仮想化ソフトウェアの概要とゲストOSのインストール作業について解説した。次回はこのOSイメージをベースにして、Windowsのディスク管理の話題について取り上げる予定である。
Copyright© Digital Advantage Corp. All Rights Reserved.