想測試在ESXi伺服器上面,安裝虛擬機(微軟Windows Server 2008 R2)伺服器,且透過該台虛擬機(Windows Server 2008 R2)伺服器內件Hyper-V功能,藉由該功能再次安裝其他虛擬機器。小弟自認與上一篇一樣,設定完成三步驟就可以,但問題來了,雖然可在ESXi安裝Windows Server 2008 R2伺服器,但在Hyper-V中安裝其他的OS虛擬機,再安裝過程中卻會跳出(0x8000405)錯誤訊息!!(如下圖),嘗試過Windows Server 2008 R2更新,無效!!!
解決方式:
步驟ㄧ、在ESXi中,新增下列三行指令:
- # echo 'vhv.enable="TRUE"' >> /etc/vmware/config (備註:上述指令會根據ESXi版本不同而有所差異,參考網址)
- # echo 'monitor.virtual_exec = "hardware" ' >> Hyper-V.vmx
- # echo 'hypervisor.cpuid.v0="FALSE"' >> Hyper-V.vmx
※上面最後兩行可透過ESXi圖形介面來新增,Option → Configuration Parameters.... → Add Row,如下兩張圖片:
步驟二、(點選ESXi伺服器)
- 將ESXi 5.1預設vSwitch的Promisuous Mode修改為Accept
步驟三、(點選該虛擬主機)
- Edit Setting → Options → General Options中,選擇 Microsoft Windows Server 2008 R2(64-bit)選項。
- Edit Setting → Options → CPU/MMU Virtualization中,勾選 Use Intel...............for MMU virtualization選項。(預設為Automatic)
步驟四、(點選該虛擬主機)
- Edit Setting → Options → CPUID Mask →Advanced...→ Virtual Machine Default中,找到Level 1選項中ecx,將底線內容輸入至ecx欄位中: ---- ---- ---- ---- ---- ---- --H- ----
完成以上四個步驟,即可正常在虛擬(Windows Server 2008 R2)伺服器上,透過Hyper-V功能創建新的虛擬主機。
參考網址:網址一
結論:
有時候誤打誤撞也會不小心找到解決的方法,透過經驗與別人分享,或許是最快的進步方式,但最好還是照步驟操作,別像小弟我一樣隨便亂搞,搞出一堆奇怪的問題,花更多時間去解決!!! Orz