Too many servers/raspberry pis? Which services do you consolidate and which do you try to isolate/standalone? reddit / selfhosted ---------------------------------------------------------------------- malachi347 · 2023-12-02 16:59 Finally upgraded my home server to a Win10p, i7-7770k, 64GB RAM, a 500GB NVMe, a 10GB HDD and a 12GB RAID5 all in one box. After doing so, I realized that this mobo also has two ethernet ports. I started thinking about replacing a raspi by creating a VM for either AdGuard or HomeAssistant and assigning the dedicated network interface. For stability and security, it would seem better to have those on raspis, but I also worry I have too many "servers"... For example I was thinking about spinning up another raspi just to run CodeProject.Ai. ...so... which services do YOU try to consolidate into my a "master" server and which do you run on standalone equipment? What would you do/recommend for me? Sidenotes: -A raspi5 running a Web Server and Home Assistant (and a few other random little Linux tools) -A raspi4 running AdGuard Home -A piZero2 running a custom pool controller web server -A piZero running a Bearded Dragon terrarium web server sensors/controller -My "main" server which has BlueIris, FTP Server, SMB, Sonarr, Radarr, Plex Media Server, PhotoPrism and a few other small things. TL;DR: I could conceivably use my upgraded home server to host more of my applications, but what services are best for isolating / keeping simple / run standalone on, say, a raspberry pi? ---------------------------------------------------------------------- acbadam42 · 2023-12-02 17:54 pi hole gets a dedicated machine, PFsense gets a dedicated machine. Everything else can be wherever. I have found it utterly impossible to work on my home lab if every time I fiddle with it I lose DNS or internet altogether. ---------------------------------------------------------------------- Malossi167 · 2023-12-02 17:56 >for either AdGuard or HomeAssistant and assigning the dedicated network interface. For most stuff there is no need these days for a dedicated interface. > For stability and security, it would seem better to have those on raspis, I would argue that. Stability? Not really. More systems that can physically fail. You reduce the risks of a total system failure but increase the risk of some failure. And a dedicated machine is not really more secure than a VM. >but it almost feels redundant and more to manage. And this is why VMs and docker are so popular. Espacially docker is great as it has a much smaller overhead while it provides many of the advantages of a dedicated machine. >...so... which services do YOU try to consolidate into a "main" server and which do you run on standalone equipment? What would you do/recommend for me? Most definitely. Run a VM host on your main machine like Proxmox and try to use docker where you can. Only if a service requires it run it in an LXC or VM. ---------------------------------------------------------------------- Malossi167 · 2023-12-02 18:01 Second this. You can virtualize anything but losing your router is just a PITA. Get some passively cooled Atom class PC. They are cheap and work well enough. ---------------------------------------------------------------------- malachi347 · 2023-12-02 18:35 Great advice, thanks! I have docker for Windows and it's been pretty good to me. Loving PhotoPrism bar a few annoyances. Home Assistant having it's own raspi does seem like an added point of failure, and AdGuardHome is a no-brainer to be standalone. But the fact that I will be relying on Home Assistant for many crucial needs (home security, keeping an eye on our wall-jumping, anxiety-riddled Husky, garage door opener, etc) I feel like it might deserve to be on it's own raspi as well, but I do like the idea of just having one server to manage. (Eventually I'll take my piZero projects and make them ESP32s and just run one webserver that talks to them). Thanks again! Loving this community and plan to stick around / contribute! ---------------------------------------------------------------------- GrumpyCat79 · 2023-12-02 22:19 A bit like acbadam42, the only thing that gets dedicated hardware is my router (opnsense) and I run my DNS server there I used to have two DNS servers for when I mess up with the first one, but it didn't work as I'd like and was makes everything incredibly slow because clients will always try the first server and wait for it to timeout before using the second DNS server For that reason, I now run it directly on the router, as if the router is down, there's not much need for my DNS server Having a dedicated NIC doesn't really enhance security, it'll just allow for more seperation in the bandwith your app have access to ---------------------------------------------------------------------- ChadTheAssMan · 2023-12-02 22:46 Why aren't you running a k8s cluster by now? ---------------------------------------------------------------------- PatochiDesu · 2023-12-02 23:13 In general you have to find points that let you categorize, rate and compare your services. if you manage to do that you have to define rules that results in actions that bring you closer to your goal (minimizing nodecount) Here are some examples what i would do. Maybe they help you to tackle the problem: If you have one big kubernetes cluster: i would at first try to categorize my services. you can here have a look how hyperscalers categorize their VMs. Something like: Memoryintensive Computeintensive Balanced After that you categorize your nodes. Nodes with low cores but a lot memory are reserved for memoryintense stuff, Nodes with a lot cores but low memory are for computeintense stuff and balanced nodes (like low of both or a lot of both) are assingend to balanced. this ensures that your services are running on the optimal environment. Next step would be to identify spot-services. this is usually stuff that you need on demand. for example a pipeline agent is only needed when there is software to compile or deploy or a video streaming service is needed when you want to watch a movie. shut down those services and build a tiny management service that allows you to spin up the stuff when you need it and turn it off when its not needed. or try to automate start and stop according to metrics or events. after this step you should have a clear picture of what has to run 24/7 and what not. now its time to look at your nodes. if you have 5 memoryintense nodes that have an average memoryload of 10 % think about shutting down some to use your ressources more efficiently. this also allows you to have ressources in the backhand in case of bottlenecks. for example if you run out of computeintense nodes, you can add temporaily your spare memoryintense ones to lower the negative impact. If you have a lot standalone container hosts: i would categorize the services according to spot (on demand) and 24/7 needed. Everything that is 24/7 needed (stuff that is critical like DNS, VPN, Container Registry) you put on a like 2 node cluster and keep the ressource consumption at max 80 % (if you need more ressources add more nodes or switch to better hardware) Everything that is needed on demand. Like Moviestreaming you put on a seperate system with at least one very tiny node. the tiny node hosts a management solution that allows you to spin up services manually in an easy way or an automized way. the big node hosts your service on demand. ---------------------------------------------------------------------- dargx001 · 2023-12-03 00:29 I read your comment as passive aggressively cooled at first. ---------------------------------------------------------------------- trancekat · 2023-12-03 02:05 1 router for vpn 1 server for video/transcoding 1 server for everything else ---------------------------------------------------------------------- Traditional_Wafer_20 · 2023-12-03 06:41 Probably because writing books in YAML is not a passion for him/her ---------------------------------------------------------------------- mortomr · 2023-12-03 07:05 Sure you did - whatever ---------------------------------------------------------------------- XDALE226X · 2023-12-03 07:14 Honestly I did too at first ---------------------------------------------------------------------- G_Freeman0815 · 2023-12-03 07:42 Thats the way! ---------------------------------------------------------------------- sevengali · 2023-12-03 10:26 I have one server and one OpnSense box. I use Proxmox on the server for VMs. I split them like so 1. TrueNAS 2. Home Assistant 3. Yarrrrr (*arrs, torrent clients and related, NOT Jellyfin) 4. Backup OpnSense 5. Gaming servers 6. Everything else VMs provide enough isolation for me. I couldn't afford the energy bill to have all these separate :P However I'm looking to split everything off my current server and leave that one for just storage. Considering one of those little beelink boxes as they have a pretty good performance/watt. ---------------------------------------------------------------------- Dismal-Plankton4469 · 2023-12-03 10:43 I can only guess that people who downvoted this did not understand the humour. ---------------------------------------------------------------------- budius333 · 2023-12-03 16:05 >upgraded my home server to a Win10 >For stability and security I'm confused. Do you want stability and security but are running a windows server?!? But to answer your question: Home Assistant is dedicated, everything is a Docker container in a shared server. ---------------------------------------------------------------------- mortomr · 2023-12-03 17:06 lol thanks 😂 ---------------------------------------------------------------------- ChadTheAssMan · 2023-12-12 12:57 This comment is why my salary is so big and why I'm not one bit worried in the marketplace. Sincerely, thank you for being such an asshole and guaranteeing my employment. ---------------------------------------------------------------------- Traditional_Wafer_20 · 2023-12-13 07:15 Is there any explanation behind the complaint and insults ? ---------------------------------------------------------------------- ChadTheAssMan · 2023-12-13 12:12 Let's sum up here: - snarky and sarcastic comment - petty down vote - pretends to not know their a troll Like I said, thanks for being you 😂 ---------------------------------------------------------------------- Traditional_Wafer_20 · 2023-12-13 21:23 Oh I got it now. Thank you. ---------------------------------------------------------------------- ChadTheAssMan · 2023-12-24 02:42 Lmao, of course you are french. Pathetically petty.