64bitゲストやマルチコア、スナップショットなど機能も豊富なオープンソースの仮想化ソフトVirtualBoxを解説。
本連載ではいままで、無償で提供されているクライアント向けの仮想化製品として、Microsoft Virtual PC 2007やWindows Virtual PC(Windows 7専用の仮想実行環境。Windows XP Modeで使用されている)とVMware Player(第7回、第8回)を取り上げてきた。今回はもう1つの仮想化ソフトウェアとしてよく使われている、「Oracle VM VirtualBox(以下VirtualBox)」を取り上げ、その概要とインストール、仮想マシンの作成方法を解説する。仮想マシンの管理やスナップショットの使い方などについては次回の後編で解説する。
VirtualBoxはもともとドイツのInnotek社が開発を行っていたデスクトップ向けの仮想化ソフトウェアである。その後Sun Microsystems社に開発が引き継がれ、現在では同社を買収したOracle社からリリースされている。これはOracleの仮想化製品、Oracle VMファミリの1つに位置付けられる製品である。有償のサポート付き製品のほかに、教育目的や個人的なテスト/評価用途なら無料で利用できるバージョンもリリースされている。
VirtualBoxでは、一部機能は限定されているものの、GPLライセンスに沿ったオープン・ソースのバージョンもリリースされているので、仮想化ソフトウェアの内部構造などを知るにはよい教材となるだろう。Windows向けのバージョンは、Visual Studio .NET 2003やVisual Studio 2005を使ってビルドできる。
VirtualBoxはHyper-Vのようなハイパー・バイザ方式ではなく、Virtual PCやVMware Playerなどと同じく、ホスト・ベースのエミュレーション型の仮想化ソフトウェアである(仮想化の方式については「3大仮想化ソフトウェア機能比較」参照)。VMwareの製品ファミリと同様、さまざまなホストOSをサポートした、マルチ・プラットフォーム対応が特長である。
以下にVirtualBoxの主要な機能をまとめておく。参考のために、Windows Virtual PCと前回取り上げたVMware Playerの機能も再掲しておく。
項目 | Oracle VM VirtualBox | Windows Virtual PC | VMware Player |
---|---|---|---|
ホストOS | Windows OS、Linux、Mac OS X、Solaris | 32bit Windows 7/64bit Windows 7 | Windows OS、Linux |
32bitゲストOS | ○ | ○ | ○ |
64bitゲストOS | ○(64bit命令サポートと、ハードウェア仮想化支援機能であるAMD-V/Intel VTが必要。ホストは32bit OSでも可) | × | ○(64bit命令サポートとAMD-V/Intel VTが必要。ホストは32bit OSでも可) |
ハードウェア仮想化機能のサポート | 32bitゲストOSの実行時には、あれば利用されるし、2コア以上のCPUが利用可能になる。64bitゲストOSの実行には必須 | あれば利用される | 32bitゲストOSの実行時には、あれば利用されるが、64bitゲストOSの実行には必須 |
仮想PCごとの最大CPUコア数 | 1〜32コア(ただし実コア数の2倍まで割り当て可能。2コア以上はハードウェア仮想化支援機能が必要) | 最大1コア | 1/2/4コア(ただし実コア数以下に限る) |
仮想PCごとのメモリ | ホストOSが32bit Windowsの場合は最大1500Mbytes、それ以外の32bit OSでは2560Mbytes、64bitホストOSの場合は実メモリ・サイズまでサポート | 最大4Gbytes(実メモリ・サイズまで) | 最大8Gbytes(32bitホストOSの場合)/32Gbytes(64bitホストOSの場合) |
仮想メモリ・サポート | ×(実メモリのみ) | ×(実メモリのみ) | ○(デフォルトでは、仮想マシンに割り当てるメモリは、実メモリではなくページ・ファイルとして確保する。そのため、実メモリ以上のサイズの仮想マシンを作成できる) |
USBサポート | ○ | ○ | ○ |
Direct3D/OpenGL | ○(Direct3D 8/9、OpenGL)。Windows 7のAeroは利用不可 | × | ○ |
復元ディスク/スナップショット | スナップショット機能 | 復元ディスク(保存されている状態へ戻す機能。状態は1つしか保存できない) | ×(上位エディションのWorkstationにスナップショット機能あり) |
仮想マシン追加機能 | 仮想マシン追加機能(Guest Additions) | 仮想マシン追加機能(VMAdditions) | VMware Tools |
シームレス・アプリケーション・モード | ○(シームレス・モード) | ○ | ○(ユニティ・モード) |
VirtualBox/Windows Virtual PC/VMware Player主要機能比較 ここでは主に違いのある部分のみを取り上げている。Windows Virtual PCは、Windows 7専用の仮想化環境。Virtual PC 2007の後継で、Windows XP Modeを実現するために利用されている。VMware PlayerはVMware製品ファミリのうち、実行専用として作られた仮想環境。詳細については連載の第7回、第8回を参照のこと。 |
機能的には、VirtualBoxはWindows Virtual PCよりもはるかに多機能で(64bitゲストOSやマルチコアCPUのサポートなど)、VMware Playerに近い。それに加えてHyper-Vや(VMware Playerの有償上位製品である)VMware Workstationのようなスナップショット機能を持っているので、実験や評価などで同じ環境を何度も再現したり、設定を変更して再実験するといった用途には便利である。またサポートされているゲストOSもWindowsに限らず、LinuxやFreeBSD、OpenBSD、Solaris、Mac OS X Serverが利用できる(これらはホストOSとしてもサポートされている)。さまざまなプラットフォーム上で同じように利用できるので、Windows OS以外のコンピュータなども管理/評価しなければならないITProにとっては、便利な仮想化ソフトウェアであろう。
VirtualBoxの仮想マシンで実現されるPC(仮想マシン)の仕様は次のとおりである。いまから10年以上前のIntelの440FXチップセットを使ったPC環境をエミュレートしている。ハードウェア的にはかなり古いチップセットだが、その分、さまざまなOSでのサポートが期待できる。
項目 | 仕様 |
---|---|
CPU | ホストCPUがそのまま見える。サポート・コア数は1〜32の可変。ただし実コア数の倍までしか設定できない。64bit命令セットのサポートは、実CPUが64bit命令セットとハードウェア仮想化機能を持っていて、それが有効になっている場合にのみ利用可能 |
メモリ | ホストOSが32bit Windows OSの場合は最大1500Mbytesまで、32bit Linux/Solaris OSの場合は最大2560Mbytesまで。64bitホストOSの場合は実装メモリ・サイズまで割り当て可能。ただし物理メモリ・サイズ以上に割り当てることは不可能。必ず実メモリが必要 |
チップセット・アーキテクチャ | Intel 440FXチップセットを使ったPCシステムをエミュレート。これはVirtual PCなどの440BXよりも少し古いチップセット |
ディスク・ドライブ | IDE(ATA)/SATA/SCSIのハードディスク/CD-ROM/DVD-ROMをエミュレート。仮想ディスク・ファイルのタイプとしては、.VDI(業界標準のOVF:Open Virtualization Format規約に沿った仮想ディスク形式)か.VMDK(VMware形式)、.VHD(Virtual PCやVirtual Server、Hyper-Vなどのファイル形式)をサポート。ただし仮想ディスクをコピーして再利用するためには専用ツールでのコピー操作が必要 |
ネットワーク | AMD PCNet PCI/Intel PRO/1000/“virtio”をサポート。virtioは実際のデバイスではなく、準仮想化ドライバを使った仮想ネットワーク・インターフェイス。1仮想マシンで最大4インターフェイスまで追加可能 |
入力デバイス | PS/2キーボードとPS/2マウスをエミュレート |
ビデオ・カード | 標準VGA/VESA BIOS拡張/準仮想化ドライバを使った仮想グラフィックス・インターフェイスをサポート |
オーディオ | AC '97オーディオ/SoundBlasterをエミュレート |
シリアル/パラレル | 2シリアル/1パラレル(プリンタ)ポートをエミュレート |
USB | USB 1.1/2.0をエミュレート。ホストPCに接続されているUSBデバイスをアタッチ可能 |
VirtualBoxでエミュレートされる仮想マシンのハードウェア環境 |
VirtualBoxは以下のページからダウンロードできる。2010年9月末時点では、VirtualBoxのVer.3.2.8が入手できる。細かい機能追加やバグフィックスなどは頻繁に行われており、いまのところ、月に1回くらいのペースで更新版がリリースされているようである。
Windows OS向けのバージョンは、VirtualBox-3.2.8-64453-Win.exeといったファイル名になっている(32bit版と64bit版のバイナリは共通)。これをダウンロードしてダブルクリックしてインストールする。インストールの途中でインストールするコンポーネントを選ぶ画面が表示されるが、デフォルトのまま、すべてインストールしておけばよい。
インストールが完了すると再起動することなく、すぐにVirtualBoxが利用できる。インストールしたVirtualBoxを利用するには、[スタート]メニューの[Oracle VM VirtualBox]−[VirtualBox]を起動する。
なお、VirtualBoxをインストールすると、以下のようにVirtualBox用の新しい仮想ネットワーク・インターフェイスが1つ追加される。これはVirtualBoxの内部ネットワーク用のインターフェイスである。仮想マシン同士だけで閉じたネットワークを構築するために利用されるので、間違って消さないようにしていただきたい。
Copyright© Digital Advantage Corp. All Rights Reserved.