Windows10でVirtualBoxとVagrantをインストールする 【トラップが多すぎる】

今回やりたいこと
Windows10環境へ、Oracle VirtualBoxとVagrantをインストールしたい。

■障害となる課題

どちらもインストールは成功したのだが、VirtualBoxで仮想CPU(VT-x)が認識せず、ゲストOSが起動できない。原因を調査したところ、Windows環境のHyper-Vが稼働しているとVirtualBoxの仮想環境が正常に機能しないらしい。

 

■具体的解決策(ソリューション)

・対策1
Qiitaに参考になる解決方法があったので試してみる
http://qiita.com/hiroyasu55/items/11a4c996b0c62450940f

この手順だと2番めのコマンドが正しく登録されずエラーになった。

bcdedit /copy {current} /d "Disable Hyper-V"
bcdedit /set {ea37cfa1-ecb8-11e3-bec0-78dd08b0ae41} hypervisorlaunchtype off

・対策2
海外のブログに、コマンドオプションを調整した記事があったので、こちらも試してみた。
http://www.hanselman.com/blog/SwitchEasilyBetweenVirtualBoxAndHyperVWithABCDEditBootEntryInWindows81.aspx

bcdedit /copy {current} /d "No Hyper-V"
bcdedit /set {ff-23-113-824e-5c5144ea} hypervisorlaunchtype off

こちらは2つのコマンドが正しく登録された。結論としては、Windows10再起動後、対策1,2どちらもHyper-Vの無効化のメニューが表示されたので問題がないらしい。

※VT-x関連のエラーは解消されず
http://qiita.com/keiichiroy/items/481f83db66c892e443cf

またしてもQiitaを参考に、今度はVirtualBox側でVT-xを要求しないように設定する。

VBoxManage modifyvm (VM名) –hwvirtex off
VBoxManage modifyvm (VM名) –vtxvpid off

 

※ssh接続の問題

ちょうどWindows版のOpenSSH(β版)がリリースされたので、これを流用、

Releases · PowerShell/Win32-OpenSSH
Win32 port of OpenSSH. Contribute to PowerShell/Win32-OpenSSH development by creating an account on GitHub.

zipから実行ファイルとdllを取り出し、PATHの通ったディレクトリに置いておけばvagrantにも対応できる。

もしくはprivate keyをputty用に変換すれば、使いなれたputtyでもOK。

 

とりあえず、VirtualBoxとVagrantのインストールは完了しました。

Vagrant環境を利用して、Ruby + Rails, Rake自動テスト, Java, ASP.net mono, 等の環境構築と、DevOpsの手順化等、試してみたいと思います。