WindowsServer2016のNested機能を使って、
VMwareESXiがHyper-V上で動くようになったもよう
29



今までは、ESXiの検証がしたい場合、
(うちの検証機の一番下で動くハイパーバイザはHyper-Vが基本なので)
別の検証用ノートPCを用意してインストールしていましたが、
これからはイチイチ物理を準備する必要がなくなった。


手順は以下のブログを参考にしました。
https://dscottraynsford.wordpress.com/2016/04/22/install-a-vmware-esxi-6-0-hypervisor-in-a-hyper-v-vm/
Daniel Scott-Raynsford 様
ありがとうございます。


また、
"ESXi-Customizer-PS.ps1"が以下のサイトから取得する必要があります。
http://www.v-front.de/p/esxi-customizer-ps.html
Andreas Peetz 様
ありがとうございます。



準備するもの
・WindowsServer2016(Hyper-Vが動くやつ、インターネット接続ができること)
 ※Windows10でも良いっぽい
・Enable-NestedVM.ps1
・VMware-PowerCLIのインストーラー(ver6.3の)
・ESXi-Customizer-PS.ps1


まずは適当なところにファイルを置く
1

VMware-PowerCLIをインストール
2

機能は変更せず
(変更しなかったら全部インストールだったけど確認はしたほうがよいかも)
全部インストール。
7


VMware-PowerCLIが終わったら、
ESXi-Customizer-PS.ps1を実行。

.\ESXi-Customizer-PS-v2.4.ps1 -v60 -vft -load net-tulip
※これはESXi6.0の場合
  色々オプションがあるので、確認
9

ちなみに
PowerCLIインストール後、
OS再起動しないで実行すると、エラーとなることがある
(3回中2回エラーになった。)

失敗時のログを見てみると、
PowerCLIのモジュールが無いよ的な内容ですが、
今のところ再起動したら100%大丈夫だった。
8

ESXi-Customizer-PS.ps1の実行が完了すると
esxiインストーラー(isoファイル)が出来上がってる
10


作成されたisoファイルでVMを作成。
Hyper-Vを開いて、esxiのVMを作る。


仮想マシンの世代は"第1世代"にする
11


仮想マシンのメモリは4096MB以上にする。
動的メモリを使用しない。
12



ネットワークはここでは構成しない。
レガシーアダプタを割り当てないといけないので、
ここで構成してもどうせ消さないといけない。
13

仮想ディスクは10GB以上にする。
esxiの上に作るVMをこのディスクに保存するならそれなりの大きさを割り当てる。
それ用に別ディスクを設けてもいいし、
クラスタを組むならiscsiでもNFSでも準備すれば10GBいいんじゃないかと
14

さっき作ったisoを選択。
15

VMが出来たら、
右クリックをして、"設定"を選択
16



仮想CPUは2個以上にする。
17


ネットワークアダプタを削除
18


レガシーネットワークアダプタを追加
19


追加したレガシーネットワークアダプタに
任意の仮想スイッチを割り当て
20


設定終わったら、
OKボタンをクリックし、設定完了。

まだ起動させない。
させてもいいけど、すぐ停止させることになる。



Enable-NestedVM.ps1を実行。

Enable-NestedVM.ps1 -vmName "作ったvmの名前"
聞かれる問いにはYで返す。
21


やっとVM起動。
起動したらすぐにTabを押すので、注意。
22


"オプションを編集するならTabを押せ"
”3秒したら勝手に起動するからね”
ってでるので急いでTabを押す。
23



ignoreHeadless=TRUE
をつけたして、Enter
※ちなみにUSキーボードなので、=を打つときは気を付ける
USキーボード 配置 でググったら、良い人が書いてくれているはず。きっと

24


esxiのインストールは、普通のesxiのインストールと変わらないので、
適当にやってください。
26


インストールが終わると、再起動を求められますが、
再起動後、また
ブートオプションを渡さないとエラーになるので、注意。
25


起動してきたら、
すばやくShiftキー + O を押す。
そうすると、下のほうにブートオプションを入力できるようになっているので、

27


ignoreHeadless=TRUE
を入力。そしてEnter
28


esxiが起動して、DHCPサーバからIPももらえてる。
F2を押し、ユーザ認証して、
29


Troublesshooting Optionsを選択。
30


Disable ESXi ShellでEnterを押し、
ESXiShellを有効にする。
(右側でESXi Shell is Enabledの表示になっている)
31


ALT + F1をおして
コンソール画面に行く

esxcfg-advcfg --set-kernel "TRUE" ignoreHeadless
を実行する。
これで起動するたびに、optionを入力しなくてよくなる。
32

vmwareクライアントからも繋がる。
33


期限付き評価版だとめんどくさいから
VMware検証用のライセンス買おうかなぁ

※↑これのことについて記載。VMwareの検証用サブスクリプション



※11/23追記
なんか、ホストサーバ(Hyper-Vサーバ)から
ESXiに直接通信ができない現象が確認されました。
Hyper-Vと接続しているPCやルーターなどからは通信できるのですが。

時間があるときに調べてみる。