Jump to content

Hello, 

 

I'm hoping to get some help/advice 🙂

 

I currently have a old desktop running Ubuntu and plex but want to upgrade to a "proper" home server. 

 

I have 5 main use cases:

  • Plex server
  • Nas storage for important document and back-ups
  • Home assistant
  • Pihole (or equivalent)
  • Basic desktop usage (mostly video calls on a big screen but I could just do that on a Rpi so not important)

I was thinking of using proxmox with

  • 1 VM running ubuntu server for plex
  • 1 VM running home assistant 
  • 1 VM running ubuntu for everything else

For hardware I was thinking something like this: https://uk.pcpartpicker.com/list/Pq2xsL plus a GTX1050 or similar when I can find one cheap(er), and a few hdd I have lying around. 

The logic was to pass on the gpu to the first vm for transcoding and use the integrated graphics for the rest.

 

My main questions are:

  • Is a Core i5 10400 with 32 gb of ram enough to run all of that?
  • Is it a stupid way of doing it and will I get significantly better performance another way?
  • Assuming it's not stupid, any recommendations on the config/resources to allocate to each VMs?
  • I won't be looking to implement everything in one go but is there anything I would need to set up on day one to save pain further down the line?

Thanks in advance and let me know if left out anything important!

Link to comment
https://linustechtips.com/topic/1425559-first-home-server-vm-set-up/
Share on other sites

Link to post
Share on other sites

8 minutes ago, Kiruathecat said:

plus a GTX1050 or similar when I can find one cheap(er), and a few hdd I have lying around. 

Why not use the igpu, its better for encoding, and built into yoru system. You can split the igpu into multiple virtual gpus, and use one for the vm

 

10 minutes ago, Kiruathecat said:

VM running ubuntu for everything else

Id split the everything else into seperate vms

 

11 minutes ago, Kiruathecat said:
  • Assuming it's not stupid, any recommendations on the config/resources to allocate to each VMs?
  •  

Probably give every vm 2/4 vcpus as a minnimun, just makes it nice when they need more cpu, and 4gb of ram. Then add resources as needed. Probably start plex with a bit more, like 8gb of ram and 6 vcpus

Link to post
Share on other sites

16 hours ago, Electronics Wizardy said:

Why not use the igpu, its better for encoding, and built into yoru system. You can split the igpu into multiple virtual gpus, and use one for the vm

That's the plan for now 🙂

 

16 hours ago, Electronics Wizardy said:

Id split the everything else into seperate vms

Noted 

 

16 hours ago, Electronics Wizardy said:

Probably give every vm 2/4 vcpus as a minnimun, just makes it nice when they need more cpu, and 4gb of ram. Then add resources as needed. Probably start plex with a bit more, like 8gb of ram and 6 vcpus

Cool i start with that then 🙂

 

Thanks for your help!

Link to post
Share on other sites

18 hours ago, Kiruathecat said:
  • 1 VM running ubuntu server for plex
  • 1 VM running home assistant 
  • 1 VM running ubuntu for everything els

 

Do you have a reason to need 3 VM's for this? You could just run Ubuntu natively if thats all you need? 

Plex and Home Assistant can be dockerized very easily. 

 

It would be even easier to just use the iGPU natively since you just map /dev/dri to the container 

 

An example of a Plex docker-compose file  with iGPU passthrough and transcoding in shared memory

version: '3.9'
services:
    plex:
        container_name: plex
        network_mode: host
        devices:
            - '/dev/dri:/dev/dri'
        environment:
            - PUID=1000
            - PGID=1000
            - VERSION=latest
            - UMASK_SET=022
            - "TZ=America/Los_Angeles"
        volumes:
            - '/opt/plex/config:/config'
            - '/opt/plex/preroll:/preroll'
            - '/opt/plex/tmp:/tmp'
            - '/path/to/media:/media'
            - '/dev/shm:/transcode'
        restart: unless-stopped
        image: linuxserver/plex

 

You can also install something like Portainer which gives you a really powerful and nice GUI for managing your Docker containers. 

Using Docker-ce, It can be installed a single command

 

docker run -d -p 8000:8000 -p 9443:9443 --name portainer \
    --restart=always \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v portainer_data:/data \
    portainer/portainer-ce:latest

 

Running a single kernel will give you far better resource efficiency, less overhead and an easier configuration. 

Spoiler

Desktop: Ryzen9 5950X | ASUS ROG Crosshair VIII Hero (Wifi) | EVGA RTX 3080Ti FTW3 | 32GB (2x16GB) Corsair Dominator Platinum RGB Pro 3600Mhz | EKWB EK-AIO 360D-RGB | EKWB EK-Vardar RGB Fans | 1TB Samsung 980 Pro, 4TB Samsung 980 Pro | Corsair 5000D Airflow | Corsair HX850 Platinum PSU | Asus ROG 42" OLED PG42UQ + LG 32" 32GK850G Monitor | Roccat Vulcan TKL Pro Keyboard | Logitech G Pro X Superlight  | MicroLab Solo 7C Speakers | Audio-Technica ATH-M50xBT2 LE Headphones | TC-Helicon GoXLR | Audio-Technica AT2035 | LTT Desk Mat | XBOX-X Controller | Windows 11 Pro

 

Spoiler

Server: Fractal Design Define R6 | Ryzen 3950x | ASRock X570 Taichi | Asus RTX 4060 Dual OC | 64GB (4x16GB) Corsair Vengeance LPX 3000Mhz | Corsair RM850v2 PSU | Fractal S36 Triple AIO + 4 Additional Venturi 120mm Fans | 8 x 20TB Seagate Exos X22 | 4 x 16TB Seagate Exos X18 | 3 x 2TB Samsung 970 Evo Plus NVMe | LSI 9211-8i HBA

 

Spoiler

NAS: Innovision 4U 24-bay chassis (12GB MiniHD SGIO Backplane) | Intel Core i9-10980xe | EVGA X299 FTW-K | EVGA RTX 2080Ti Super FTW3 | 128GB (8x16GB) Corsair Vengeance LPX 3200Mhz | DEEPCOOL PN1000M PSU| Noctua NH-D12L Chromax Black | 16 x 16TB Seagate Exos X18 | 2 x 2TB Samsung 990 Pro | 2 x 2TB Intel U.2 P4510 | LSI 9305-24i HBA

 

Link to post
Share on other sites

I've been reading about containers/dockers since I posted my first message and I've been wondering about this too. 

 

Would your advice be to not run proxmox at all then? Just a ubuntu server instance with Plex and Home assistant as containers?

 

Or run proxmox with a single ubuntu kernel shared by the containers?

 

I'm pretty new at this (part of the reason for the project tbh) so apologies if the question is stupid ^^"

Link to post
Share on other sites

12 hours ago, Kiruathecat said:

I've been reading about containers/dockers since I posted my first message and I've been wondering about this too. 

 

Would your advice be to not run proxmox at all then? Just a ubuntu server instance with Plex and Home assistant as containers?

 

Or run proxmox with a single ubuntu kernel shared by the containers?

 

I'm pretty new at this (part of the reason for the project tbh) so apologies if the question is stupid ^^"

 

Proxmox does have a built in container system but it uses LXC which is less mainstream and not as user friendly to those not experienced with containerisation. 

 

Proxmox-VE can be installed as a package on base Debian itself (which will recompile it to a Proxmox kernel), so you can have a full Debian OS (Ubuntu is based on Debian), but really why run Proxmox if you dont need VM's? 

 

 

There is info linked in this post about installing Docker-ce (Community Edition) & Docker-Compose on Ubuntu:

 

 

You can install Portainer-ce which will give you a nice web GUI (https://servername:9443) for managing your Docker containers, using 1 command to install it:

docker run -d -p 8000:8000 -p 9443:9443 --name portainer \
    --restart=always \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v portainer_data:/data \
    portainer/portainer-ce:latest

 

Personally I use docker-compose to deploy a container using a template like the example I gave above for Plex. Then I just tweak it through Portainer as I need to, and use that to stop/restart containers. You can also use tools like Watchtower to automagically keep your containers up to date with the latest release version 

 

But yes Home-Assistant is on DockerHub https://hub.docker.com/r/homeassistant/home-assistant and probably just about every other app you'd want to use. 

 

Spoiler

Desktop: Ryzen9 5950X | ASUS ROG Crosshair VIII Hero (Wifi) | EVGA RTX 3080Ti FTW3 | 32GB (2x16GB) Corsair Dominator Platinum RGB Pro 3600Mhz | EKWB EK-AIO 360D-RGB | EKWB EK-Vardar RGB Fans | 1TB Samsung 980 Pro, 4TB Samsung 980 Pro | Corsair 5000D Airflow | Corsair HX850 Platinum PSU | Asus ROG 42" OLED PG42UQ + LG 32" 32GK850G Monitor | Roccat Vulcan TKL Pro Keyboard | Logitech G Pro X Superlight  | MicroLab Solo 7C Speakers | Audio-Technica ATH-M50xBT2 LE Headphones | TC-Helicon GoXLR | Audio-Technica AT2035 | LTT Desk Mat | XBOX-X Controller | Windows 11 Pro

 

Spoiler

Server: Fractal Design Define R6 | Ryzen 3950x | ASRock X570 Taichi | Asus RTX 4060 Dual OC | 64GB (4x16GB) Corsair Vengeance LPX 3000Mhz | Corsair RM850v2 PSU | Fractal S36 Triple AIO + 4 Additional Venturi 120mm Fans | 8 x 20TB Seagate Exos X22 | 4 x 16TB Seagate Exos X18 | 3 x 2TB Samsung 970 Evo Plus NVMe | LSI 9211-8i HBA

 

Spoiler

NAS: Innovision 4U 24-bay chassis (12GB MiniHD SGIO Backplane) | Intel Core i9-10980xe | EVGA X299 FTW-K | EVGA RTX 2080Ti Super FTW3 | 128GB (8x16GB) Corsair Vengeance LPX 3200Mhz | DEEPCOOL PN1000M PSU| Noctua NH-D12L Chromax Black | 16 x 16TB Seagate Exos X18 | 2 x 2TB Samsung 990 Pro | 2 x 2TB Intel U.2 P4510 | LSI 9305-24i HBA

 

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×