TechReport

技術者情報

ソリューション

2014年7月2日(水)公開

第156回

新しい仮想マシンのブート

新しくなったHyper-Vの新機能をご紹介

GMOインターネット株式会社 システム本部 樋口 勝一が担当するGMO最新ネット業界レポート-ソリューション編。

今回は仮想マシンの「Boot」(ブート)にフォーカスをあてて、新しくなったHyper-Vの新機能についてご紹介したいと思います。

記事INDEX

第2世代の仮想マシン

・ブート高速化

Windows Server 2012 R2のHyper-Vから、仮想マシンの作成時に「世代」が選択できるようになりました。

選べる世代は2つ。


簡単に説明すると「第1世代」はこれまでのHyper-V上の仮想マシン同様の仕様で、「第2世代」は仮想化のために特化した新しい仮想マシンの仕様となります。



第1世代の仮想マシンは、これまでの物理マシンと互換性を保つため、プロッピーディスクドライブや、COMポートなど仮想マシンとしては必須ではない、いわゆるレガシーと呼ばれるデバイスや、BIOSを搭載しています。



第2世代の仮想マシンはこれらレガシーデバイスを非搭載とし、起動時の余計なデバイスの読み込みをスキップしています。また、従来のBIOSの代わりに近代的なファームウェアとして「UEFI」(Unified Extensible Firmware Interface)を搭載することで、仮想マシンの起動にかかる時間を大幅に短縮しています。「UEFI」は従来のBIOSと比較すると高速にPCをブートできるのが特徴となっています。

試しに、「第1世代」「第2世代」の仮想マシンをそれぞれ作成し、電源OFFの状態から起動完了までの時間を計測してみました。


第1世代

「第1世代」の場合は25秒となりました。これでもHyper-Vと仮想マシンのOSであるWindows8.1やWindows Server 2012 R2の組み合わせで、パフォーマンスが良いのでかなり早いと思われます。


第2世代

同じ条件で「第2世代」を計測した結果、わずか11秒という速さで起動しました。圧倒的な起動スピードとなっています。

・大容量ディスクからのブート

この他にも「UEFI」では2TBを超えるハードディスクからのブートをサポートしています。以前の仮想ディスクの「.vhd」ファイルでは2TBまでしか作成できませんでしたが、「.vhdx」ファイルでは64TBまでサポートされていますので、「UEFI」では最大64TBのハードディスクからブートが可能となりました。

ただし、「第1世代」の仮想マシンで標準となっていたIDEコントーラーでのハードディスク接続は、IDEの容量制限のため2TBまでのハードディスクしか扱うことができません。そのため「第2世代」の仮想マシンではIDEコントローラーを排除し、SCSIコントーラーのみでのハードディスクの接続に限定することで、「UEFI」とあわせて2TB以上のハードディスクからの高速ブートを可能にしています。


(DVDドライブもIDEコントローラーの非搭載により、SCSI接続と変更になりました。)

・PXEブートのサポート

仮想マシンにOSをインストールする場合に、ネットワーク接続設定をDHCPサーバーから自動取得し、接続確立後にOSのインストールをネットワーク越しに行うもので、DVDドライブなどを搭載していないサーバーや、同一のOSイメージから大量にクローンマシンを作成する場合など、自動展開する場合に用いられます。「第1世代」の仮想マシンでもレガシーネットワークアダプタを利用することで、ネットワークブートからのOSイメージ展開ができましたが、こちらが標準のアダプタで実現可能となりました。

・セキュアブート

仮想マシン起動時にファームウェアによって、OS起動前に不正なプログラムなどのチェックが行われます。署名のチェックを行うことで、信頼されるソフトウェアのみを使ってPCが起動されるようにします。

なお、「第2世代」の仮想マシンとして作成できるのは、


 ・Windows 8(Pro x64/Enterprise x64)


 ・Windows 8.1(Pro x64/Enterprise x64)


 ・Windows Server 2012


 ・Windows Server 2012 R2


となっています。


・sysprepの高速化

仮想マシンのブートの高速化と合わせて、Windows Server 2012からは、仮想マシンにおいてsysprepコマンド実行後のブートも高速化することができるようになりました。



マスターイメージから仮想マシンのクローンを作成する場合にsysprepを実行し、固有のSIDを割り当てる作業を行います。通常sysprep実行時に一般化オプション(/generalize)を追加することによって、マスター固有の情報を削除し、新しいOSとして再利用が可能となります。



sysprepはこの他にも、マスターとなるイメージのハードウェア固有情報も初期化し、改めてハードウェア情報を設定しなおすプロセスも実施されています。ですが、仮想マシンの場合、ハードウェア情報はHyper-V上の仮想化マシンでは常に同一となるため、このプロセスは不要となります。ハードウェア情報のチェックをスキップするオプションとして、「/mode:vm」を指定することが可能となりました。こちらは仮想マシン上からsysprepを実行する場合のみ、また、コマンドからのみ設定可能なオプションとなります。

Sysprep /generalize /reboot /oobe /mode:vm

以上、新しくなったHyper-Vの仮想マシンの高速化したブートについてご紹介しました。


ますます快適に利用できる環境が整ってきていますね。




樋口 勝一

GMOインターネット株式会社

1999年6月GMOインターネットに入社。Windowsを用いたホスティング事業の立ち上げの際、サービス開発からその後の保守・運用まで1人で担当。2010年には「お名前.comWindowsデスクトップ」をリリースし、マイクロソフト社と強い信頼関係を構築。2007年から連続で「マイクロソフトMVPアワード」を受賞し、Windowsのスペシャリストとして活躍。

執筆者一覧