仮想環境構築の際の"VHD接続"活用方法

黒柳です。

本年もどうぞよろしくお願いいたします。

私は新製品がリリースされると、Hyper-V上のゲストOSにいれて試してみるようにしています。

その際、非常に手間がかかる作業があります。それは・・・

ISOイメージを作成すること

私のラボ環境は、ホストOSはドメインに参加しており、ゲストOSは別のドメインに所属しているため、ネットワークポリシー上共有フォルダを作成することができません。

なので、System Center 2012のBeta, RCなどの各製品のそれぞれのエディションのISOを作ってはそれを仮想OSにマウントしインストールを実施するというような事をやっておりました。

 

何か良い方法はないかと同僚に相談したら

VHD接続すればいいじゃん 」と一言言われました。

VHD接続とは、Windows 7/ Windows Server 2008 R2から追加された機能であり、今までホストOSやハイパーバイザーからは直接操作出来なかったVHDを通常の物理ディスクと同様にアクセスすることができる ようにする機能なのです。

仮想OSはHyper-Vのコンソール上でVHDをIDEコントローラとしてアタッチできますので、仮想OSからはハードディスクドライブが追加されたように見えます。

その追加ハードディスクドライブに環境のインストールに必要なコンポーネントを予め入れておくことによって、複数のインストールイメージやコンポーネントをISOファイルを入れ替える事なく仮想OSにアタッチすることができます。

例えば、System Centerの評価環境では.NET frameworkやSQL Serverなどが必要ですがそういう「ゲストOSで共通にしようするデータ」をVHDにデータとして入れておけば、それらをうまく使い回し、インストールにかかる時間を削減する事が可能です。


1.MMCを起動します

 

2. スナップインの追加と削除で「ディスクの管理」を追加します。

 

3.[新機能]VHDの作成をクリックします。

4.適当にvhdファイルの格納場所を決定します。スクリーンショットではSC2012インストール用vhd.vhdにしてあります。

5.作成するvhdの設定を行います。サイズと容量可変/固定を決定します。

6.vhdが作成されます。スクリーンショットではディスク2として追加されました。

7.これで、VHDがドライブとして認識されました。これからこのドライブをフォーマットします。右クリックからディスクの初期化を選択します。

8.ディスクのフォーマット形式を選択します。この場合はNTFSでフォーマットをしています。

9.ディスクが初期化されました。VHDファイルがローカルボリューム(M)としてエクスプローラ上で見ることができます。

このボリュームMに仮想OSにインストールしたいコンポーネントやデータを格納します。

10.いよいよ対象となる仮想マシンにVHDをアタッチします。対象仮想マシンを右クリック⇒[設定]をクリックします。

11.[ハードウェアの追加]⇒IDE コントローラを選択し、[ハードドライブ]を選択します。

12.仮想ハードディスクの参照先に、先程作成したVHDを選択します。

※ディスクの管理コンソールで予め[VHDの切断]を選択し、VHDがローカルのプロセスに対して独立した形にする必要があります。

VHDがローカルのプロセスに紐づいたままだと、VHDファイルを仮想OSにアタッチして起動することができません。

13.仮想OS上で新たなボリュームが追加されています!

 

このように、Windows Server 2008 R2の新機能を使って、仮想OSのアプリケーションやデータ移行を簡単にすることができます。

もちろん、共有フォルダを使用する、ISOを使用するというのも選択肢としてはありますので、ご自身の環境に併せて最適な方法を選択していただければ幸いです。