Roon Core in a Virtual Linux Machine

I haven’t run these instructions but Plex on LXC over proxmox sounds like it might be not so hard to accomplish.

killdozer has a point, though, docker not only has a larger community and support is easier to obtain, it also runs in windows and you could test your container solutions in windows OS before blowing up the machine to install another OS.

On the VM solution, I chose that because even with 2 cores and 2 GB RAM, the system load is pretty minimal even when running 3 clients connected to the roon server. I am not sure about Plex, though, but if it doesn’t peak about 70% of a VM limited as described, you would have no issues running 2 VMs in that NUC of yours. Remember that the hypervisors still manage to optimize the processor resources when needed so you would only hit trouble if both of your VMs were executing at capacity.

Either option you choose, sounds like a fun learning experience. Let us know how it goes.

1 Like

I run Docker on my NAS for a few low-power containers, so I am familiar with the tool…
My reasoning for LXC (with which I don’t have prior knowledge) is the least amount of resource overhead and the option to run Rock instead of Roon core.

I’m not sure I would hear a difference between ROCK and Roon Core anyway, given that my endpoints are more MidFi than HiFi :blush:

If I would do docker, I would need to go Proxmox => Linux VM or LXC => Docker => Roon + Plex… It’s really unlikely I would run PLEX and Roon at once anyway… So maybe just give it a shot…

1 Like

Thanks for sharing your amazing experience.
I personally run my roon core on Rock and it is working well. 100% reliable.
I used to run my core on Mac or Windows. I used to notice the sound quality becomes with some echo artifacts and when I restart the core it works well. Anyway nothing as reliable as a rock. I am saying that but I am not sure.

Anyway, Rock is amazing. but I am always curious to learn about other Linux based installations. My core interest is sound quality. Any observation from your side on the sound quality. Please note that my Rock is running on Pentium slow processor without a GPU as I assume it is better. Any thoughts would be appreciated.

Thanks.

Honestly…

I’d install whatever flavor of Linux you’re comfortable with and then run both server processes on that Linux. Both Plex and Roon could access the media disk and the NAS if you wanted.

I don’t see any reason to add overhead of a hypervisor in this scenario. But, also, hypervisors are very low CPU overhead but can be very high I/O overhead. So, this is where you want to be careful if you go the hypervisor route. You want to expose as much native disk as possible (passthrough) to the VM. And that native passthrough requires virtualization supports in your CPU so check before going down this route.

In your scenario loading Plex Server and Roon Server on any Linux distro won’t be much different than containers other than you now need to maintain the containers. The difference, of course, is you can’t run ROCK without virtualizing it in some way. I really like ROCK but I also like giving it “dedicated” resources to both guarantee a minimum set of resources and not letting it run away. Roon has a tendency to just consume all RAM it can find.

I run ROCK in a VM on Proxmox but I’ve got 32GB of RAM and 8 Cores so I have resources to dedicate to ROCK. I use a direct attached USB drive for media. The VM is configured with 2 cores and 8GB of RAM. It works well enough. It worked well with 6GB RAM as well but I find certain tasks are just a little snappier with the 8.

oh, and I should mention my base clock frequency on the CPU I’m using is 3.4Ghz. A virtualized core at high core clock frequency is going to be a very different experience than your average NuC CPU which has a lot slower base frequency.

1 Like

I’ve since reinstalled my NUC with Proxmox as the OS, and installed a Win11 VM on top of it. When I saw the CPU power was more than adequate, but the memory was not, I installed 16GB of RAM instead of 8. I was surprised about the limited CPU power the service needs.

Currently, both Roon and Plex are running on the same Win11 VM which works ok. There is a weird issue where I need to restart a client once for the endpoint to show up, but other than that it works fine. The NUC has ample spare resources to run other services on.

I’ve attempted several times to install a ROCK VM, but thus far I have not been able to get it to work. The issue is I can’t get the .iso on the USB key to load properly.

Ideally, I want PLEX and Roon to live on dedicated VMs (or containers).ROCK would be my OS of choice for Roon, but if that would not work out maybe I’ll try on Ubuntu.

I currently have a small 128GB M.2 SATA disk and a 500GB 2,5" data disk in the NUC. The small one contains the Proxmox OS and the VM storage. The larger one is mounted as a directory drive and contains the media (about 70GB of it). I am wondering if I should put a bigger NVME drive in for LVM (thin) or just swap how I use the disks now. I don’t want to invest too much in the NUC though, given it’s age. I do have a 500GB Samsung T5 USB-C SSD I could use as passthrough storage for media I suppose and use the 128GB disk for the OS, the 500GB internal drive for LVM and the external one for music?

The reason I went for VMs is that I am likely going to acquire a more powerful host in the not-too-distant future and I want to be able to move VMs hassle-free. I have a Ryzen 3900x that will come available soon, that might be a candidate, or maybe just a 12 or 13th gen i7 NUC…

I have a fairly decent Synology 720+ with a read/write cache. I have also considered hosting the music there and not bothering with local storage at all… Choices…

Update:

Roon runs in it’s dedicated VM using a ROCK image, thanks to the guys in this excellent thread. Besides ARC, everything works as expected. I guess I need to figure out how to setup port forwarding in the VM itself for that to work…

Hello, Are your endpoints using ethernet - (wifi or are they hardwired)? Using Proxmox with single VM for Roon Core and a second Vm for TrueNas / shared drives. This works great when I hardwire RPI endpoints. I have not tried Containers or Docker yet. Thanks for your time.

Mixed here, some ethernet, some WiFi.
All work great, and I set up ARC a long time ago; it works great as well. I’ve recently migrated from an older gen7 i5 NUC to a gen13 i3 version as Proxmox host, and it worked flawlessly, restored from a snapshot. There is a little less power draw and no issues with performance whatsoever. I use internal SSD storage and Tidal for media, but I back up to my NAS (NFS for Proxmox and the Roon DB via SMB from ROCK separately).

hmm…not sure what I did wrong. Can’t see any Wifi endpoints with proxmox VM.
In proxmox i configured a Network device enp6s0 and a linux Bridge vmbr0. I tried to use wpa_supplicant? Managed to get wlp5s0 configured but it not active. I think it has something to do with my proxmox config not my VM’s. How do you manage this.

Hmm, I use a OVMF (UEFI) Bios, on a i440fx machine with 4 cores and 2/4Gb of ram. In terms of networking I use the e1000 on bridge=vmbr0.

I recall I had some issues with it at first, but this has been working fine for more that a year. Hope you can replicate this…

Also, my NUC has WiFi but I did not enable it. I have it cabled in my main VLAN and my endpoints are also in my main VLAN.

A mix here too - mainly ethernet but a couple of Bluesound Pulses connnected wirelessly - all very reliable.

If proxmox is connected with ethernet you have nothing to do with wifi. With your setup you should reach any address in the network.

Check tha you can ping an endpoint

  • from the proxmox host
  • from the vm

Post your network settings of your proxmox server and the endpoint. Check the netmask (/24).

ip a # on proxmox

Wifi-connected dietpi

I used a proxmox container as roon server but switched to an even cooler setup with roon as container within Truenas Scale that is running fine (since a few days). But that’s another exercise.