Ask
176
@yaml_yusuf ·

two vpses and twelve containers, is nomad worth it or do i keep bolting things onto compose

Solo dev. Twelve services split across two boxes, one compose file each, plus a pile of shell scripts for deploys and a failover procedure I have written down and never actually tested. Kubernetes is obviously out of proportion for this. Is Nomad the sane middle ground, or does it drag in Consul and a whole operational surface that I will end up maintaining instead of shipping?

8 answers Share
Report

Answering anonymously — a moderator will review it first.

  • @uptime_hoarder · 3w ago · 2 replies

    The number that decides this is nodes, not containers. Twelve containers on two boxes is a compose problem. Twelve containers you want automatically placed across five boxes, with rolling updates and a node able to disappear without you waking up, is an orchestrator problem regardless of which one you pick. Two other things to weigh before you choose Nomad specifically: HashiCorp moved their products onto the Business Source Licence a couple of years back, which may or may not matter to you but is worth reading before you build on it, and service discovery is much nicer with Consul alongside, which is a second thing to run even though Nomad has a native option now.

    138
    Share
    Reply

    Answering anonymously — a moderator will review it first.

    Report
    • @borrowck_ben · 3w ago

      The licence thing matters less for a solo dev than people imply, but read it yourself rather than trusting either side of that argument.

      34
      Share
      Reply

      Answering anonymously — a moderator will review it first.

      Report
  • @borrowck_ben · 3w ago

    Tried Nomad for exactly this situation about a year ago and went back to compose after two months. Getting a job running was genuinely pleasant, the HCL is nicer than YAML, and dev mode meant I was up in an afternoon. What killed it was that everything around it became my problem: secrets, the reverse proxy integration, volume handling for the stateful bits, and an upgrade of the cluster itself that I did on a Sunday for no user visible benefit. Compose plus a fifty line deploy script now does what I need and I have not thought about the infrastructure in months.

    124
    Share
    Reply

    Answering anonymously — a moderator will review it first.

    Report
  • @rackmount_rina · 3w ago · 3 replies

    I run both, Nomad at work across about nine nodes and compose on my own two boxes, and I have never been tempted to move the personal ones. The thing Nomad buys you is scheduling: you stop saying this container runs on that box and start saying this job needs these resources, and something else decides where it lands and restarts it elsewhere when a node dies. That is a genuine superpower at nine nodes and close to pointless at two, because with two boxes you already know where everything is and the placement decision is not hard. It is a single binary and it is genuinely much less to operate than Kubernetes, but it is still a cluster with servers, clients, a state store and an upgrade path you now own.

    167
    Share
    Reply

    Answering anonymously — a moderator will review it first.

    Report
    • @rackmount_rina · 3w ago

      Right. Come back to it when adding a third and fourth box makes you dread the wiring, that is the real trigger.

      38
      Share
      Reply

      Answering anonymously — a moderator will review it first.

      Report
    • @yaml_yusuf · 3w ago

      Scheduling being the actual product rather than the deploy tooling is a useful reframing. At two boxes I do not have a placement problem.

      41
      Share
      Reply

      Answering anonymously — a moderator will review it first.

      Report
  • @attic_server · 3w ago

    The middle option nobody mentions is Swarm mode, which is still there and still works and is roughly compose files with scheduling and rolling updates bolted on. It is unfashionable and it is not getting new features, which is a real risk to weigh, but for two to four boxes and a solo dev it does the specific thing you are asking for with about a day of learning. Worth an evening of reading before you commit to something with a cluster to operate.

    97
    Share
    Reply

    Answering anonymously — a moderator will review it first.

    Report
  • @venv_val · 3w ago

    Compose until failover actually matters. Then decide whether you want to run a cluster or pay someone to run one.

    72
    Share
    Reply

    Answering anonymously — a moderator will review it first.

    Report