Jump to content

HightSierraとESXi6.5U1,Nvidia GPUパススルー


massiveblue619
 Share

2 posts in this topic

Recommended Posts

初めまして。 :)
私は、ESXi6.5U1とNvidiaのGPUをパススルーしてHighSierraを動かしています。
MacPro(late2013)からの乗り換えでESXiでmacOSとWindowsの同時稼働を目標にして構築しました。
今の所安定して動いています。動作報告と構築方法を書きます。
仮想化でmacOSを動かしたい方の助けになればと思います

Hardware:
CPU: Intel Core i7-7820X
Memory: DDR4 64GB
M/B: MSI X299 SLI PLUS
GPU1: ELSA NVIDIA QuadroP400 2GB (macOS)
GPU2: ZOTAC GeForce GTX 1070 Mini 8GB (Windows)
Storage: Crucial MX300 525GB TypeM2 (macOS)
Intel SSD SDSC2KW256G8 256GB (ESXi DataStore)
Sandisk SSD SDSSDA120G 120GB (ESXi)
その他 HDDx4
USB HostController: Century CIF-USB3P4FL USB3.0 4Port (FL1100)
Audio: Yamaha Steinberg UR12 (USB)
Bluetooth: ELECOM LBT-UAN05C2/N
Monitor: ASUS PA279Q (DP=Displayport)
USB Device: Trackball, Apple Wireless Keyboard 他

Ethernet:

  • Vmware vmxnet3
  • Intel I211 Gigabit Network Connection (Windows)
  • Intel Gigabit CT Desktop Adapter XPI9301CT (macOS)

Hypervisor:

vSphere Hypervisor 6.5 Update1 (Hewlett Packard Enterprise)
VMKernel Build 6765664 -> VMKernel Build 7388607 [2018/02/21 Update]

 

GuestOS:

macOS HighSierra 10.13.2 (17C88) -> macOS HighSierra 10.13.3 (17D102)

Windows10 Pro Creators Update x64 -> Windows10 Pro Fall Creators Update x64

 

 

方法:
注意:SSHクライアントとターミナルの操作が必要な時があります。

ESXiをインストールしUnlockerPatchを適用済みの状態であること。

 

OSディスクのISO作成:

HighSierraのISOイメージ作成はGitHubのkholia/OSX-KVM にあるshスクリプトを利用しました。

作成したらESXiにアップロードします。

 

Pass-through:
ESXiのサーバーにログインしてパススルーしたいデバイスを有効にしておきます。ESXiの再起動が必要です。

パススルーしたデバイス。

  • ELSA NVIDIA QuadroP400 2GB
  • ZOTAC GeForce GTX 1070 Mini 8GB
  • Century CIF-USB3P4FL USB3.0 4Port (FL1100)
  • マザーボード上のUSB Host controller (Asmedia)
  • Intel I211 Gigabit Network Connection
  • Intel Gigabit CT Desktop Adapter XPI9301CT

ディスクの設定:

Crucial MX300 525GB を仮想マシンに直接利用させたいのでSSHクライアントでESXiに入り
RDM(RawDeviceMapping)を使い登録しておきます。
こちらを参考にしました。
https://gist.github.com/Hengjie/1520114890bebe8f805d337af4b3a064

 

私の場合、他にもMacProで利用していた外付けHDDをPCに収納してRDMで登録してあります。

 

仮想マシンの設定/OSインストール:
次にmacOS用の仮想マシンを作成します。ウィザードでゲストOSの選択では"macOS 10.12(64Bit)"を選択します。
この時はまだパススルーしたデバイスは登録しません。ハードディスクに先ほどRDMで設定したCrucialのVMDKを指定します。接続の種類はSATAを指定して下さい。仮想CD-ROMドライブには作成したISOイメージを選択します。

作成が完了したら、HighSierraのインストールとOSアップデート、そしてNvidiaのWebドライバーを予めインストールしておきます。
問題がないか確認してよければ仮想マシンをシャットダウンします。
準備ができたので仮想マシンのVMX編集に入り、パススルーしたデバイスを登録します。私の場合は、QuadroP400とCentury CIF-USB3P4FLを指定しました。編集を終わらせ保存します。

モニターとQuadroP400をDPケーブルで接続します。USBマウスやキーボードをパススルーしたUSBカードに接続します。
仮想マシンの電源をオンにします。うまくいけばモニターにログイン画面が映ります。 :thumbsup_anim:

VMware Toolsはインストールせずにそのまま使用しています。

 

Trimの有効化:
CrucialのSSDですがTrimが有効になっていないのでmacOSのターミナルから以下のコマンドで有効にします。再起動して

システムレポートから有効になっているか確認してください。

sudo trimforce enable

VMware Fusionを動かす:

ESXi上でVMwareFusionを動かしたい場合、このままだとFusion側の仮想マシンがエラーで起動できません。なのでESXiの設定を変更します。
SSHクライアントでESXiにログインします。/etc/vmware/config に以下を追記します。

vhv.enable = "TRUE"

保存したらESXiを再起動します。確認でmacOSを立ち上げてVMwareFusionで仮想マシンをオンにしてみてください。動くはずです。 :D

 

追記(2017/12/06):
ちなみにVMwareToolsはインストールていません。

​・ESXiのMacにVMwareToolsはインストールていません。
・CloverBootloaderは使用していません。

追記(2018/01/10):加筆・修正

追記(2018/02/21):ESXiアップデート、 Intel I211 Gigabit Network Connection と Intel Gigabit CT Desktop Adapter XPI9301CTを追加

 

post-2297350-0-53599000-1511197982_thumb.png
post-2297350-0-33907400-1511197993_thumb.png
post-2297350-0-59373200-1511198007_thumb.png
post-2297350-0-20874400-1511198483_thumb.png
post-2297350-0-46303800-1511198470_thumb.png
post-2297350-0-00711000-1511198495_thumb.png

post-2297350-0-53599000-1511197982_thumb.png

post-2297350-0-33907400-1511197993_thumb.png

post-2297350-0-59373200-1511198007_thumb.png

post-2297350-0-46303800-1511198470_thumb.png

post-2297350-0-20874400-1511198483_thumb.png

post-2297350-0-00711000-1511198495_thumb.png

  • Like 1
Link to comment
Share on other sites

30bit Color Enable:

ESXi上では24Bitカラーですが、MacProの時はPA279との接続では30bit表示でしたこれを再度有効するために

調べた所できました。

 

参考にしたTopic

http://www.insanelymac.com/forum/topic/324195-nvidia-web-driver-updates-for-macos-high-sierra-update-01112017/page-37

 

com.apple.windowserver.plistの削除

Library/Prefrences/com.apple.windowserver.plist

ResXtremeを使い、2560x1440 Depth:8 Bits/Sample 10を選択して30bitになります。

 

post-2297350-0-85771300-1511339395_thumb.png
post-2297350-0-76977700-1511339403_thumb.png

post-2297350-0-85771300-1511339395_thumb.png

post-2297350-0-76977700-1511339403_thumb.png

Link to comment
Share on other sites

 Share

×
×
  • Create New...