Server hardware discussion

I have been thinking about building a server which will do the following…

  • L.A.M.P for web hosting stuff
  • file serving
  • luanti instance (lan only)
  • movie ripping
  • audio ripping
  • PiHole?
  • NAS

The hardware isn’t going to be high spec. I will be using things I already have around, probably an AMD A series cpu withabout 8Gb ram as that’s all the boards have. I could get more RAM I guess. My retired FX rig has 16Gb ram but I’m thinking about power use hence the A series.

I also have 2 x 2Tb drives and 2 x 1Tb drives for use as a NAS and I plan on using Truenas.
With all this said, would docker or kubernetes be appropriate? Linux command line or GUI? Which distro?

1 Like

Moved to Hardware.

I use Kubernetes for all of eom.dev - it is very reliable and scalable, but not necessarily the easiest option out there. There may be a GUI out there for K8S, but I don’t use one myself. You could probably adapt the Ansible playbooks from the software-infrastructure repo to get up and running pretty quickly. I’ve been meaning to make this repo more useful to a general audience, so maybe this is an opportunity to do so.

2x2Tb sounds like plenty for storage (RAID?), though if you go the K8S route then there are some built-in tools for handling storage that may give you everything you need without an additional NAS.

My cluster uses NFS, for example.

RAM is where you are going to have some limitations. 16GB really isn’t a lot. What kind of motherboard is this on? DDR4 or 5?

I’m also curious about how you plan to deploy your infrastructure. I run virtual machines on all of my physical servers, and the K8S cluster is made from those VMs. If I were to do it all again, I might consider skipping the VMs, though they do offer a degree of abstraction in that all of the machines in my cluster are defined in software and are all exactly the same. There can also be challenges associated with bare-metal K8S clusters…

Have you thought about hosting something in the Fediverse? I use Mastodon, but GoToSocial would be better for a smaller network.

1 Like

Blockquote
I use Kubernetes for all of eom.dev

Could it run what I am thinking of doing?

Blockquote
2x2Tb sounds like plenty for storage (RAID?), though if you go the K8S route then there are some built-in tools for handling storage that may give you everything you need without an additional NAS.

I have a lot of stuff hence the configuration and there is too much for online storage solutions.

Blockquote
RAM is where you are going to have some limitations. 16GB really isn’t a lot. What kind of motherboard is this on? DDR4 or 5?

Depending on the board, A series is FM2 with DDR3. FX is DDR3 also. Like I said, nothing fancy.

Blockquote
I’m also curious about how you plan to deploy your infrastructure.

You and me both. :grin:

Blockquote
Have you thought about hosting something in the Fediverse? I use Mastodon, but GoToSocial would be better for a smaller network.

No.

LAMPing allows me to run web stuff I want to use and this is a prerequisite.
File serving for music, videos and normal files.
Ripping film video is optional.
NAS for storage is a must or something equal with redundancy.
PiHole optional.

Or should I get a Raspi 5?

Yes, but Kubernetes is a tool for managing computer clusters whereas the things you are describing are applications that would run on the cluster. LAMP, for example, would be two Docker containers running Apache with PHP and MySQL. Beyond that, the deployment and configuration of services in K8S is usually automated with Ansible and Helm.

K8S is fairly complex, but it is much more flexible than LAMP. Using K8S, I don’t have to care if the app developers used LAMP or any other kind of architecture. I just deploy the Helm chart.

All of the services you listed would just be Docker containers in the cluster.

I could do the LAMP stuff on a RasPi2 or 3, I have these spare, processing power doesn’t need to be that good for what I have in mind.

I had a look at K8s and went :scream:

It isn’t as scary as it looks! Jeff Geerling has published Ansible roles for easy installation, and the software-infrastructure repo has all of the components used for my live system.

That said, I knew I was going to deploy a lot of services, so it was a worthwhile investment of time to learn K8S for faster deployments. If you’re just doing a few websites, though, I concede that it is a bit overkill.