VMware Player 上にたてた Windows Server 2012R2 に Hyper-V をインストールしようとしたところ、
Hyper-V をインストールできません:ハイパーバイザーはすでに実行中です。
とエラーが表示されてインストールできなくて対処した時のメモです。
こんなエラーが発生した
役割と機能の追加から Hyper-V を選択してインストールを進めようとしたら以下のエラーが発生した。
1 |
Hyper-V をインストールできません:ハイパーバイザーはすでに実行中です。 |
仮想マシンである Windows マシンに Hyper-V をインストールする場合は以下の2点をクリアする必要がある。
- 仮想マシンであることの隠蔽
- CPUの仮想化エンジンの有効化
参考までに、前者のみ対応済みの状態でHyper-Vをインストールしようとすると以下のエラーが発生しました。
1 |
Hyper-V をインストールできません: 必要な仮想化機能がプロセッサにありません。 |
以下に対処法を記載しています。
対処法
以下2点の対処を行うことで、仮想マシンで動いているWindowsマシンにHyper-Vをインストールすることができます。
- 仮想マシンであることの隠蔽
- CPUの仮想化エンジンの有効化
仮想マシンであることの隠蔽
Hyper-Vをインストールしようとするマシンが仮想マシンであることを検知すると、Hyper-Vをインストールできません。そのため、構成ファイルを編集して仮想マシンであることを隠蔽します。
編集内容は、仮想マシンの構成ファイル(***.vmx)に以下の2行を追加するだけです。
1 2 |
hypervisor.cpuid.v0 = "FALSE" mce.enable = "TRUE" |
.vmx ファイルは構成ファイルなので、通常はダブルクリックすると仮想マシンが起動してしまいます。そのため、テキストエディタにドラッグ&ドロップするなどして開きます。また、ファイル編集前に仮想マシンはシャットダウンしておきます。
.vmx ファイルがどこに保存されているかは、
仮想マシン設定の編集 -> オプションタブ -> 全般 -> ワーキングディレクトリ
から、確認ができます。以下画像参照。
CPUの仮想化エンジンの有効化
次に、CPUの仮想化機能を有効にする必要があります。
VMwareで機能を有効化しても物理CPUで対応していない場合は、Hyper-Vをインストールできないようです。古い世代のCPUになりますが、Core2Duo や core2quad などでは対応していないようです。以前、Core2Duo を搭載した ESXi で試したときにインストールできず長時間はまりました。。。
設定は以下の通り、
仮想マシン設定の編集 -> ハードウェアタブ -> プロセッサ -> 仮想化エンジン -> Intel VT-x/EPT または AMD-V/RVIを仮想化
にチェックを入れるだけです。以下画像参照。
最後に
設定を保存して、Windowsマシンを起動後に、役割と機能の追加から 問題なく Hyper-V をインストールすることができました。
こういった構成はメーカではサポートしていませんが、Hyper-Vだけでなくとも VM on VM ができるようになると検証や評価では重宝しますね。
以上です。
↓↓↓ 持っていると便利な一冊。