ROCK VM on ESXi

Hey folks. First off, I want to say this is COMPLETELY unsupported, but I did get ROCK running as a VM on a computer running ESXi.

First some background. Couple years ago I purchased a NUC10I7FNH for ROCK. I didn’t pay much attention to the hardware requirements and WAY overbuilt it with a single 16GB DIMM and a 1TB M.2 drive. ROCK installed, no problem and ran for months but I eventually got to the point where I felt like I was wasting the hardware and would rather have a VMware environment to run some other things and as a lab to play. (Full disclosure, I’m an IT professional.) So I bought a second identical model NUC, added a bunch of RAM (both are running 48GB now), a small SATA SSD to install ESXi on so the 1TB NVMe M.2 drives are the primary storage for VM’s, and ran Roon Core Server on a Mac Mini I wasn’t using.

I eventually got frustrated with running Core on the Mac Mini because I don’t use it for much of anything else and OS updates would leave Core Server stopped (have to remote into it, log back in, and restart it). You know, the kind of things that created the reason for ROCK in the first place with stability and reliability.

Quick note about my Roon environment and why a VM is perfectly fine for me: I pretty much only stream music from hi-res sources, I don’t have a library of music I’ve ripped myself, and I’m using a Roon Ready receiver for playback so I’m not doing any real “work” with my core.

How I did it

So first off, it may be that it worked reasonably smoothly because I’m running ESXi on a NUC, I don’t know, I haven’t tried on any other hardware. I used the Google experts to get through a couple of bits as well. Here’s the process I used, assuming ESXi 7.0 U3, with the WebUI (mostly).

  1. Create your ROCK install USB as per the ROCK install instructions (I’m using a Mac and Etcher worked well for me)
  2. Plug the installer USB into your ESXi server
  3. Create a new VM with the following options
    a. Compatibility: ESXi 7.0 U2 Virtual Machine (default)
    b. Guest OS Family: Linux
    c. Guest OS Version: Other Linux (64-bit)
    d: Select whatever SSD-based storage you have
    e. 2 CPU’s with 2 cores per socket (default is 1, not sure if this makes a difference, maybe more should be used)
    f. 8 GB of RAM
    g. 150GB disk configured as thin and using IDE Controller 0 as ROCK won’t recognize a SCSI disk
  4. Once the VM is created, edit the settings as follows
    a. Add Other Device > USB Device then select your installer USB in the pulldown
    b. On the VM Options tab, go into Boot Options and change firmware from BIOS to EFI
    c. Save the settings
  5. Here’s where it gets wonky. Go ahead and boot the VM and monitor the progress in the console. It should say “Welcome to Grub!” for a bit, then, if all else is good, it should kick into the ROCK installer.
    a. The problem I had is that the console wouldn’t recognize my keystrokes, so I couldn’t go any further and I had to go through the process of plugging in a USB keyboard and passing it through to the VM which is not straight forward as you would think.
    b. You actually have to modify some ESXi config files via the command line, then add some additional changes in settings to the VM before I was able to connect the USB keyboard to the VM.
    c. I Googled “ESXi passthrough USB Keyboard” and I think the third result worked perfectly. Here’s the link: VMWare ESXi 7 USB/HID Passthrough - The Lawlor Family
  6. Once I was able to send keystrokes to the ROCK installer, everything else worked perfectly and I’m now running ROCK on a VM on my NUC.

So like I said, this is completely unsupported, it works for my environment but maybe not for yours, backup EVERYTHING before changing anything, not responsible, yada yada yada.

I been running ROCK on ESXi for a few months. Its running on a HP MicroServer Gen10+ with 2GB of RAM. It runs well for the time being since I only have about 250 albums.

Its a fun little project to do on the weekend. I’m glad yours is working out for you. :slight_smile:

1 Like