Disk2vhdでV2Vしました
実は、Sun VirtualBoxを愛用しています。
普段使いのWindows 7 PC上で手軽に仮想マシンを動かせますし、64-bit VMやマルチプロセッサ VMに対応しているので便利なんです。最近はVisual Studio 2010 RCの検証環境を作り、日々持ち歩いています。
64-bitで2VPなVMの例
しかし、このVMを会社のHyper-V上でも動かせたら便利だなぁと思うわけです。
そこでdisk2vhdですよ!
このツールをゲストOS内で実行すると、オンライン バックアップを取得するような感じで、ディスクイメージをVHD形式で保存することができます。あとはそのVHDを使って、Hyper-V上のVMを作ればよいわけです。
早速やってみましょう。
まずは、Sysinternalsのページから、disk2vhdをダウンロードします。
https://download.sysinternals.com/Files/Disk2vhd.zip
このZIPの中に、"disk2vhd.exe"という実行ファイルが入っています。これをホストではなくゲストOS上で実行する必要がありますので、私のようにネットワークに接続されていない孤立したVMを使っている場合は、何らかの手段でdisk2vhd.exeをゲストOSにコピーする必要があります。
VirtualBoxには、ホストOSとゲストOSの間でファイルを共有できる「共有フォルダ」の機能があるので、これを使うことにします。ホスト側の"F:\VHDs"フォルダを、ゲストと共有しました。
ゲスト側からは、”\\VBOXSVR\VHDs”という共有フォルダとして見えます。
このファイルを、ゲストOS内のローカル フォルダにコピーしても良いですし、共有フォルダ上から直接実行してもかまいません。私はローカルにコピーせずにそのまま実行しました。
こんなの↓が出ますが 「実行」を押します。
もう一回こんなの↓が出ます。
この”disk2vhd-tmp.exe”というのは、64-bit版のdisk2vhd.exeです。64-bitゲスト上で実行した場合は、この -tmp.exeのほうが実際の仕事をします。Sysinternalsのツールには他にもこのパターンがありますね。
初めて実行するときには、こういう↓SysinternalsのEULA画面が出ますが、ぜひ「Agree」してください。
というわけで、起動されたDisk2vhdの画面はこんな感じです。シンプルですね。
“VHD File name:”の部分に、変換後のVHDファイル名が入力されています。デフォルトの場所はdisk2vhd.exeがある場所です。私の例の場合、先ほど作成した共有フォルダになりますので、このままVHDを作れば、ホストOS側に作成されるので便利です。
それでは、「Create」をクリックします。
"Creating Snapshotting volumes..."とありますね。Disk2vhdはVSSを使ってスナップショットを作り、それを吸い出してVHDにしているのです。仕組みとしてはSCVMMのオンラインP2Vと同じですから、信頼出来そうですよね。
この状態↓でしばらく時間がかかります。
待っている間暇なのでタスクマネージャでも見てみます。 disk2vhd.exeがWOWで動いている32-bitプロセス ("*32")。disk2vhd-tmp.exeが64-bitプロセスなのがわかりますね。
終わりました↓
”Disk exported to VHD completed successfully” と控えめに表示されるだけなので、うっかりしてると見落としてしまいそうですが。。
ホスト側から見てみます。できてますねVHD。
では、このVHDをHyper-V側に持っていて、VMを作ってみましょう。仮想マシンの新規作成ウィザードで、「既存の仮想ハード ディスクを使用する(U)」を選択して、disk2vhdによって作成されたVHDを指定します。
作成された仮想マシンを起動すると、自動的にデバイス ドライバのインストールが行われますので、まずは再起動が必要になります。
再起動後は、VirtualBoxのGuest Additionsの削除を忘れずに。本来は移行する前に削除しておくべきですねこういうのは。うっかりしてました。
そして、Hyper-VのICを忘れずインストールしましょう。今回のようにゲストが2008 R2の場合は、Hyper-VのICがあらかじめ含まれているので基本的には不要ですが、
しかし、更新プログラムでICが新しくなっていることもありますので、明示的にインストールした方が確実です。ゲストOSのバージョンが、ホストのHyper-Vより古い場合は、常にICのインストールが必要です。
というわけで、無事にVirtualBoxからHyper-Vへ引越が完了しました。
※ 嬉しかったのでVPは4個付けておきました。
以上、Disk2vhdでした。これは実に手軽で便利!是非お試しください。
__END__