Docker compute node build

I need a dedicated docker box. After some research I have come to the conclusion that micro-services using docker and/or Kubernetes would best suit my current and future workloads. To this end, I’m trying to use what I already have and buy as little as possible to reach my goal. At the same time I don’t want to create any future bottlenecks by skimping now if i can help it.

All my data is on a NAS (36TB Freenas) and would be accessed and processed in place by containers running on this new build. I want to be able to concurrently spin up and run as many containers as i need to get the job done. The two boxes would have a dedicated 10Gb link between em. I’m torn between two sets of parts and would greatly appreciate any help or insight to pro and con it out:

  • -Corsair RM750X V2 750W (Dead cheap and being sold for a song in our area)
  • -Samsung DDR4 2400MHz ECC Reg 16GB x2
  • -Supermicro X10SRM-TF (IPMI is the main draw here)
  • -Intel Xeon E5-2630 v3 CPU 8 core 16 thread 2,4MHz, 3,2MHz turbo (Found one very cheap)

OR

  • -Corsair RM750X V2 750W
  • -Asus Prime X370-Pro (Bang for the buck)
  • -Samsung 970 EVO Plus Series MZ-V7S250BW 250GB
  • -G.Skill Flare X Black DDR4 2400MHz 2x16GB
  • -AMD Ryzen 7 1700X 3,4GHz (Core count to price is great)

Cheers

Will this be for labs & learning or production workloads that earn you money (and possibly pay all your bills)?

If for labs, it probably doesn’t matter a huge amount, if for production workloads that run 24/7 things like ECC are pretty much a de-facto requirement. Other than that what’s the max RAM capacity for each board? Labs workloads are generally light on CPU usage but RAM can become a constraining factor when running lots of virtualised workloads.

If you are stopping at a single server then docker onto a bare metal OS install is all you need. If you want to properly master K8’s then you’ll likely want to install VM’s on the single server to create a K8’s cluster so you learn how K8’s manages virtual networks, contianers and pods etc.

Thanks for your reply BGL.

This will be for production workloads

I take your point. You reminded me of a few things I just glossed over coz of pricing and availability. The Supermicro RAM capacity is 512GB while The Asus is 64GB.

My thinking was to start with one node and docker then branch or build out as I become reasonably competent with K8s or as my use case and needs change and evolve. My lab is a modestly specked proxmox box and 10 Raspberry Pi model 3 B+ nodes

1 Like

Cool, let the production requirements guide your decisions. It’s always hard when working to a budget though. Given your options I’d probably opt for EEC RAM and greater expandability over a parts designed for home/gaming use.