I've installed successfully VMware ESXi 5.1 on my Apple Mac Pro (model 5,1). It's fully supported by VMware.
Unfortunately it looks like the result is unusable as a quiet desktop, because ESXi 5.1 fails to regulate fan speed: the tower is now too loud.
Is there any way to make ESXi 5.1 properly regulate fan speed?
I had great hopes into ESXi, in order to use vt-d / vt-x for desktop virtualization (Mac OS X, Linux, FreeBSD, and windows), But if ESXi can't regulate fan speed, it's all ruined.
Not related to the fan question, but you do realize that an ESXi server has no local desktop console (well, very limited local console), and that to access your virtual desktops, they will all have to be accessed remotely?
I can successfully boot ESXi 5.1 on my MacPro5,1 without the fans ramping up.
Can you please try resetting the System Management Controller (SMC) on your Mac Pro by following the instructions in this Apple Knowledge Base article and see if that addresses the issue? Please let us know how it works out!
The SMC should be responsible for managing the chassis fan speeds while ESXi is running.
I'll give SMC reset a try, this a good idea.
Also, I should have made my initial statement more detailled: fans won't run full speed (like when you experience a kernel panic, or when you boot in target mode), but they won't slow down like when you boot Mac OS X. My Mac Pro behaves normally when I boot Mac OS X, fans are quite fast at first, then they slow down during the boot process, and when the OS is available, they are very quiet.
I've made a test, after reseting the SMC of my Mac Pro: that was no better.
But I've found out that the noisy fan is the fan of the graphic card. When Mac OS X boots, something (the driver?) regulates the fan, but when ESXi boots, nothing regulates the fan… Other fans run quite slow whichever OS is in command, and are not noisy.
I will have to test with a Mac OS X VM if the fan goes slower when the VM uses the graphic card thru vt-d / VMDirectPath. Any hint appreciated.
Interesting. I have no idea who's responsible for any active regulation of the graphics card's fan speed. I thought they usually regulated themselves according to temperature (and hence workload). I'd be surprised if ESXi was actually causing the graphics card to do enough work and generate enough extra heat to require it to speed up its cooling fan.
If the fan speed is actively regulated by the OS graphics driver (or if the GPU fan speed controller is initialized/configured by the OS graphics driver), you will probably be out of luck, unless you can manage to wrangle something with VMDirectPath and a guest driver that does the right thing.
The point of this operation is to replace my native Mac OS X by a virtualized Mac OS X using the graphic card (and USB ports) thru vt-d/VMDirectPath, and to evaluate the performance drop.
If both noise level and performance drop are acceptable, my next step is to add other VMs, At least a windows VM to replace my VMware Fusion Windows VM. Now, i'm not sure I can use the same physical video card thru VMDirectPath in both VMs (running at the same time) and I have no idea how I'm supposed to deal with it on the display side. I might have to buy another graphic card for this purpose... and rest assured it will be a fanless one!
I plan to create my Mac OS X VM later today, or tomorrow, I'll be back to repport about the noisy GPU fan.
- I've created a Mac OS X VM, blank (no OS, no boot CD, nothing), configured the ESXi and the VM so that the GPU is used in passthru mode by the VM. When I start the VM, it reclaims the GPU and the noise stop immediately. Same thing with a Windows Server 2008 R2 VM using the card in passthru.
(and this closes the topic)
- I've discovered that a PCI card can be used in passthru by only one VM at a time, even if it sports two "devices" (normal display, and hdmi display, shown as different devices)
- I've discovered that a VM using a passthru device can't be snapshoted. I'm disappointed about that. Snapshots are one of my motivations about going from physical to virtual.
- I was not able to dedicate USB ports in passthru mode. So for now, I have no keyboard/mouse but a good screen... I've tried to share every USB ports, but it won't stick after the reboot of the ESXi, and the only devices I could share are the Apple USB/Blutooth bus, my USB xrite i1 color meter, and my USB logitec headphones/mic. No keyboard (I've pluged in 2), no mouse.
I'll have to find a way to get rid of the vmware screen too. It looks like the embeded vmware video card can't be deleted from the VM.
- I made a huge mistake: don't, DON'T put the SATA bus in passthru mode if the ESXi storage sits on this SATA bus (in fact I didn't intend to do so, I just checked the device by mistake while checking every USB devices). My ESXi boots, but won't work very well (it looses its storage during the last steps of the boot), and more importantly, I can no longer change this passthru setting, as the ESXi can not longer acces its storage to record the modification
I was not able to repair my blunder by manual modification of files on the ESXi storage, I'll have to make a clean install.
- I'm quite disappointed I can't use local SATA hdds as RDM drives in my VMs. I had great hopes I could just create a blank VM and plug the 4 drives of my regular Mac OS X system.
You can rdm the drives individually, but as you learned don't do the whole controller.
I've done it using vcenter. the box is greeted out by default but this is how to fix that:
I've also done it a manual way, you ssh into the esxi host and make some files. I can't find the link rift now but it's out there.
Yes rdms mean no snapshots. And therefore no backups if your backup software uses snapshots which all of the vmware ones do. You have to use rsync or some agent software inside the vm.
Honestly IMO there isn't really a good way to run esxi on the bare metal and still use the machine as a workstation. Each device you pass through eats ram too. If you want a workstation, use vmware workstation. If you want esxi, get a second box.
Thank you Aaron for your reply.
In fact a lot has happened since my last post here. You can read the whole story here if you have some interest in using ESXi in a workstation setup: https://www.patpro.net/blog/index.php/tag/virtualisation/
it starts at the bottom of the page.
Unfortunately, Apple hardware does not allow proper sound device passthrough into a VM. I was able quite easily to setup passthrough for the sound controler, but a Mac OS X VM won't recognize it, and a Windows VM can use it but sound is awfully deteriorated, and the driver appears to commit suicide after only few seconds of playback. More importantly, the VM can't read a youtube video properly if sound passthrough is enabled, when it can read flawlessly the same 1080p HD video if sound device is not added to the VM. Same problem if I try to use a logitec USB headset for sound playback. May be I need a dedicated PCI sound card... I won't try.
I would already need a dedicated PCI graphics card for each VM and a dedicated PCI USB card for each VM, there would be no room for a dedicated sound card.
I know ESXi is not built to support proper sound playback via passthrough device, its written somewhere in the documentation. I see many youtube video about gamers playing in Xen VM with sound support. May be it's the way to go, but I need to buy proper hardware (supermicro's Whisper Quiet Workstation for example), and more importantly, I'll have to ditch Mac OS X. Not an easy thing to do!
To address just one of the issues you encountered: Mac hardware requires cooperation from its EFI firmware to identify the HD Audio controller to the operating system; Without that cooperation, the OS will not use a present HD Audio controller. Our virtual firmware knows how to identify our virtualized HD Audio controller so that the OS can use it, however we had not anticipated PCI passthrough HD audio controllers, so the OS won't be told to use a passed-through audio controller when running in a VM.
Thanks Darius for your help.
Well, in fact I was able to get some sound out of my digital speakers (pluged into optical output of the Mac Pro using TOSLINK), so it seems that at least a part of the passthrough process works. The sound is awful and is more like garbage than real playback, and after few seconds, it dies.
I have not undertood yet why the video playback, and the VM reactivity in general is highly crippled when the VM uses the sound controler in passthrough.