Hey. I am a developer and looking to add some simple scheduling, scaling potential, health monitoring / self healing, and perhaps most importantly rolling updates that don’t interrupt the live service - all of that, to my simple home hobby server. My first attempt involved kubernetes, but the learning curve and cpu usage made it a bad fit for the simple requirements I have. K3s seemed like the next logical step, but in my research for alternatives, nomad stuck out as an interesting option. I have a few projects that may never need scaling and most certainly don’t need to be containerized, so the idea that I could manage something like that in Nomad was especially appealing.
So, my question is whether a smaller distribution or configuration exists that would let me get the desirable functionality I’ve described in a way that wouldn’t also starve a humble host machine. The system requirements page lists some high requirements and I did come across this discussion where someone expressed similar concern, but was hoping to get some more specific information / elaboration on the answer. I’m new to the forums and didn’t want to revive a post from a year ago so pardon me if that would be the right thing to do, but are there any specific numbers we can discuss? For example…
A nodejs server that runs a few routes, a go binary that serves another few routes, and an instance of mongodb they both connect to. Single physical machine, single instance of each of those 3 applications, no present need to scale - how much of my system resources would be consumed by keeping those 3 alive and occasionally running an update on 1 of them?
If there is software that can do this and I’m on the entirely wrong track looking at solutions like kubernetes and nomad, I would also be happy to accept that as an answer if you would also recommend such solutions So that we may potentially discuss specifics for configuring nomad - I have these specs:
Intel (R) Xeon (R) CPU ES-1225 v5 @ 3.30GHZ with 64GB memory
I think that’s plenty to enable the machine to listen to a port and say “Hello, World!” but it might do more in the future. Is it reasonable to manage the updates of these small scale projects with nomad?