The Ultimate Home Server - Toward an Amalgamation

Could do with a good tutorial/info dump type video on setting up a hypervisor based system. How to size it for your needs, getting started with Docker etc.

4 Likes

I have been spending some time on the personal knowledge base portion for a little bit. I currently store my notes in flat markdown files that get linked together by some local wiki software called vimwiki.

What I like about vimwiki is that it is built into my favorite editor, can be configured to use markdown, and is 100% local. This is ideal as I have machines with bad network connectivity. With iSH in the App Store, I am able to use it on all my devices (vim works really well on a mobile phone, believe it for not). I keep the files in sync by committing them to a private GitHub repo. I am currently working on adding a good backup solution for all my GitHub repos, but for now it is a good fit and ensure’s good conflict resolution and decentralization.

I manage all the config in a dotfiles repo which ensures I have a consistent setup across devices.

The older I get, plain text seems to be the most secure format for saving/archiving information. These tools let me do they and store information I learn or generate. The specific tools don’t matter as long as you can find something that sticks and you keep using it.

Wow, not sure my 6C/12T Core system I am using for my home server is gonna hold up doing all of that.

Yeah I have a dual socket motherboard with 2x Xeon X5675 (6C/12T) with 64GB of DDR3.

I’d like to have a couple more servers to be able to distribute the load but the heat with one is enough until I get an additional ac unit for that room not including the money it’ll take lol.

I have a single AMD Ryzen 5 2600. The multicore performance might be comparable but I only have half the cores you do since you said you have 2x X5675. I also have half the RAM as well. I just thought some of the stuff you have running and how you did it was interesting. But with 6 Cores CPU allocation may be a challenge since I cannot spread my workload as widely.

I’m very keen on energy saving so I’d like to find an alternative to big noisy and power hungry servers.

A lot of tasks have short bursts of activity and then a lot of idle time. Makes building a system that is powerful enough and has good idle consumption quite difficult.

Prioritising tasks might help, e.g. you want Home Assistant to respond instantly and don’t mind if your long running backup process gets delayed by a few seconds.

There is no Planet B.

Which is scary to think about. Let’s just hope that something like ARM or RISC-V will make dynamic computing less demanding and more efficient. Too bad they cost half a leg, with barely any budget options, yet.

1 Like

Well there is always the Raspberry Pi. The 3 and 4 are quite capable machines, certainly enough for things like Home Assistant. I wonder though, overall is it lower power to run a bunch of RPis and a network switch than it is to run a single larger server with a bunch of VMs?

They’re capable, but they’re usually not enough for multiple services. And everyone has an old, although, maybe not efficient, machine somewhere that you can use, to save some money.

Clustering with docker is certainly alot more efficient than VMs, but if your performance requirements are more than a single RPi, you’re out of luck, as some services don’t cluster very well.

Old laptops might be good for low power stuff. Mobile CPUs aren’t as fast but maybe fast enough, and you can have plenty of RAM and an SSD in there. Being designed for battery operation they tend to be better on power consumption.

Plus it has a built in screen/keyboard and battery UPS. The battery might be dead but you can often referb them yourself with a bit of work.

That’s a good point. Their form factor isn’t really fit for it, however.

I doubt it to be frank, one Raspberry Pi 4 might use little power but using several to do what one machine with multiple VMs can do is going to make it less efficient and then you stumble into problems you normally wouldn’t have with fewer machines running. Now if we had a large ARM-based machine that ran multiple VMs then we are talking.

Speaking of which, I just realized that I have another PC that’s not in use. It has an AMD A10 7860K, is that worth setting up a cluster between my PC with an R5 2600? I could probably lower the TDP of the CPU to 25W or 35W like my R5 2600 is currently running at.

It would be good to get some real world reports of performance on various platforms. People say a Pi 4 is good for Home Assistant, worth the upgrade over a Pi 3, for example.

1 Like

Apologises if this boat has already sailed however, I thought I would add my 2 cents.

About Me?
I have been in multiple IT Service Desk roles supporting a business for 10+ years (Ranging from Basic End User support to implementation and administering SSO).

HomeLab
I needed to learn more about Cisco network equipment for work so I built a home lab 9+ Years ago.
Rack with the following mounted.
Cisco 2911 ISR - Modules (24 Port Switch, VDSL EHWIC x 2 & 2 x Telephony Modules)
Cisco 2960 Switch
Lenovo M73 with connections to both network devices via, Ethernet Connected to Lab & WiFi on SSID for IOT equipment on my normal network to allow remote access as the lab is located in my Garage.

Current Home Servers Setup
I have a multiple devices running different processes for my home, I would like to consildate as many of these processes.

Asus RT-AX88U AX6000 [Running ASUSWRT-MERLIN]
- Multiple Outgoing VPN’s with different devices routed over different tunnels.

HP Z2 Mini G4 Workstation [Xeon E-2124G, 32GB RAM, Nvidia Quadro P600, Windows 10 Pro for Workstations] - Setup as a proof of concept for my family to see what I want to do with a future dedicated build while I slowly get the parts.
- Plex Server
- Radarr
- Sonarr
- Lidarr

RaspberryPi 4 Model B x 2
- ADS-B TwitterBot - GitHub - shbisson/OverPutney: An ADS-B twitterbot written in Python for use with Piaware systems with the tar1090 mapping tool.
- Pi-Hole

RaspberryPi 3 Model B+ x 2
- ADS-B Flight Tracker (FlightAware, ADS-B Exchange & FlightRadar24)
- RetroPi

Google Home for automation and security
Sensors [Movement & Reed switches], Google Home Mini’s [room music on schedules],

AXIS POE IP Camera’s - recording to MicroSD Cards with custom webpage for viewing multiple cameras on one page.

Dropbox for offsite backup of things which cannot afford to be lost.

Future Plans
- Virtualisation of as many of the above as possible
- Cutting as many of the cords as possible (YouTube Music Sucks)
- Backup of the different machines
- Minecraft / Game Servers - For my offspring.
- Moving off Google Home for automation.
- Organisation & storage of Books / AudioBooks
- A better setup / secure network (currently using Router, 2 switches, 1 AP.
- Moving to WireGuard for VPN
- A Better Password Manager
- Setting up an Incoming VPN for Family Mobile Phones

2 Likes

Something I discovered recently, a lot of cheap devices can be upgraded with OpenWRT.

In the UK there were a huge number of BT Home Hub 5 and Plusnet Hub routers given to subscribers for free. I picked one up locally for free, or they got for less than £10 on eBay.

They have 802.11ac wifi and a 5 port switch. If you install OpenWRT the switch becomes managed, with support for VLANs. Basically you can get a an 802.11ac AP and managed switch for free. Great for home network/lab use.

5 Likes

If i were you I’d setup a that machine as a truenas scale box which gives you the capability to run docker containers out of the box. Which will handle most of you’d wanted services with less overhead on the system.

On my system you can see I’m really only allocating 15 of the 24 CPUs and most of the ram usage is that is allocated is doing nothing or is cached information for certain services like plex.

4 Likes

Welcome to the community!

I’ve moved to bitwarden as my password manager for about a year now and highly recommend taking a look at it. They have a free personal account if you don’t want to self host it.

If I were you I’d look into seeing if there are docker containers for the services you run and if they are well maintained. If they are then I’d highly recommend using docker instead of virtual machine.

For me if I can put a service in a container I do, but some services need to be in a VM for some requirement in order for it to work. Docker containers saves on the precious resources we spend how hard earned money on.

1 Like

Something I’ve never really understood is why you’d virtualize services like Plex. Because, instead of running a single OS with containers or services, you’d have to run with the overhead of multiple virtual machines, like background tasks (looking at you Windows) and file-system management.

Also, I’d imagine backup would be easier for docker containers, since it usually includes a single docker-compose.yml file and any additional data, that you’d need anyway.

I guess network isolation is one reason to virtualize, but is that really worth it? Surely, that would be a lot of overhead for something so medicore.

This is less of a “it’s stupid to virtualize!” and more a “I just don’t get it”-situation.

1 Like

Run my slower machine or faster one. Neither Machine has nearly the core count. That said I was considering running XCP-ng on the faster machine that also holds the hard drives (excluding backup, those will be external). I might consider doing more of a docker setup possibly though instead.