普段はCentOSを使っているが,極稀にWindowsが必要になるのでESXiにWindows10のVMを立てる.
Windowsをダウンロードする
通常のWindowsは有料だが,利用日数の制限がある検証用Windowsは無料で利用できる.
今回は有効期限90日の制限があるWindows10Enterpriseを利用する.
VMを立てる
ISOファイルをCDドライブに割り当てて,適当に仮想マシンを作る.
起動したら適当にWindows10をインストールする.
ライセンスの有効期限は背景右下に表示される.インターネットに接続してしばらく待つか,slmgrコマンドを使って手動でアクティベートすると90日のカウントが始まる.
VMware Toolsのインストールを押すと,仮想マシンにインストーラがマウントされる.インストールして,再起動が完了したら基本的な準備は完了.
GPU(GeForce GT220)パススルー(任意)
ついでにGPUパススルーもしておく.今回はたまたま余っていたGT220を利用する.ESXiのコンソールで十分という人は設定不要.
ESXiホストの管理画面を開いて,ハードウェアの画面でPICデバイスをパススルー出来るようにしておく必要がある.仮想マシンをシャットダウンしたら,PICデバイスを追加する.
NVIDIAのドライバは仮想環境で動いていることを検知すると,グラボを使えないようにしてしまう.以下パラメータを追加しておくことでこれを回避する.
hypervisor.cpuid.v0 = FALSE
ドライバをダウンロードする.仮想マシンからアクセスしてもいいし,事前に共有ファイル等で準備しておいても良い.
仮想マシンを起動してデバイスマネージャーを開くと,グラボが認識されているのを確認出来る.
ドライバをインストールして再起動する.グラボにディスプレイケーブルをつないだまま再起動するとメインディスプレイがグラボになっているかもしれないので注意.
USB拡張カードのパススルー(Renesus μPD720201)
USBデバイスはパススルー出来ないものもあるので,USB拡張カードごとパススルー設定することでキーボードやマウス等を自由に接続できるようになる.
今回買ったのはこれ.
グラボと同様にUSB拡張カードのパススルーを有効にして,仮想マシンに以下を追加する.
- PCIデバイス(USB拡張カード)
- USBコントローラ(3.0)
- USBコントローラ(2.0)
起動するとRenesas USB 3.0 eXtensible Host Controller - 1.0(Microsoft)
として認識されていることがわかる.Windows10ではインボックスドライバで動作する.
蛇足 − USB拡張カードのパススルー(VIA VL805)
実はルネサスのカードの前にVIAのカードを買っていた.
このUSB拡張カードはインボックスドライバ VIA USB 3.0 eXtensible Host Controller - 1.0 (Microsoft)
で動作する.が,仮想マシンシャットダウン時にうまくPICデバイスを開放してくれないようで,USB拡張カードを追加した状態では再起動できなくなる.
ESXiを再起動すれば再度パススルー出来るようになるが,いちいちESXiを再起動しないといけない.おそらく以下ブログと類似した事象だと思うが,devcon enable
が効かないし,デバイスのアンインストールも効果がなかった.
記事ではグラボが問題となっているようだが,今回グラボに関しては特に問題なかった.
デスクトップPCでこの拡張カードを使う場合は,デスクトップPCごとシャットダウンするので問題にはならないと思われる.
いろいろ検索してみると同じような事象に遭遇している人がちらほらいるらしい.今のところはMicrosoftがインボックスドライバを更新してくれるのを待つしか無い.誰かデバッグとバグ報告してほしい.
おわりに
ESXi上にWindowsのデスクトップ環境を構築したする流れを説明した.
VIAのチップを使ったUSB拡張カードをWindowsの仮想マシンで利用するのは避けた方が良さそう.
コメント