I have a few PC’s that I use for testing, gaming, and other side projects. I wanted to pare down on a few systems, so I started looking into a portable VM home lab server setup that could potentially be used for testing at least four different VM’s and also allow for some decent gaming performance utilizing VM hardware GPU passthrough.
I first pondered on the Intel NUC Skull Canyon. It’s pretty portable, tough looking, and powerful, but it lacked the ability to easily install an external GPU and the ability to easily install a hypervisor when it first launched. It’s also pretty expensive and I was trying to stay around the $500-$600 range. I started looking at a few mini ITX cases and remembered coming across the ASRock M8 Mini ITX design in the past.
I ended up finding the case, but it was a barebones only bundle that already included an older motherboard that didn’t support the type of passthrough that I was looking to utilize. The case reminded me of the old G4/5 Apple cases with the handles on each corner of the case. The handles on the corners make it a lot easier to carry. I ended finding a discount open box from Newegg that made the purchase a little more bearable.
Here’s the home lab setup specifications and costs:
|Case: ASRock M8 Mini ITX (included LGA 1150 mobo w/pwr supply) open box
|Memory: G.SKILL Aegis 16GB (2 x 8GB) 288-Pin DDR4 SDRAM DDR4 2133
|CPU: Intel Xeon E3-1225 v5 SkyLake 3.3 GHz 8MB L3 Cache LGA 1151
|Motherboard: ASRock Server/Workstation MB-C236WSI
I ditched the 1150 motherboard and installed the Intel c236 chipset based LGA 1151 motherboard along with a Xeon Skylake based processor. My first attempt at installing Vmware exsi 6.0 was a failed attempt due to my inability to get anything working with passthrough. I tried multiple versions of Esxi, but I still couldn’t get my ATI 6770, usb, or sound passthrough working. I tried a few other graphics cards, but without sound, I threw the Esxi hypervisor out of the picture. I then decided to try an installation of Xenserver 7 and to my surprise, I was able to pass through all of my components. I did have to manually run some commands to get things going, but in the end I ended up with a VM that could possibly do some decent gaming.
In order to get all the passthrough devices working, you may have to do some work within the CLI. I didn’t have to worry about setting up the GPU within the CLI as it was already listed as a passthrough device in the Xenserver GUI management interface.
In order to add other devices, first find your VM UUID once provisioned through the GUI manager. Then run the following command within the Xenserver CLI interface:
lspci -k | more
Find your pci devices. I was specifically looking for USB and sound. If you want to add multiple passthrough devices, you will have to run the next command once with both your pci devices listed within the command along with your VM UUID
xe vm-param-set other-config:pci=0/000:00:1f.3,0/000:00:14.0 uuid=a4f084ae-e8cf-144a-ac31-7bf456e333b5