A different orchestrator
Kubernetes won the container orchestrator war, but at a cost: high operational complexity, steep learning curves, dozens of components, frequent updates. For many organisations with simple workloads, Kubernetes is beyond necessary.
HashiCorp Nomad, first released in September 2015, offers a deliberately simple alternative. 0.6 of August 2017 is a mature version. MPL 2.0 licence (until 2023, BSL thereafter).
What differentiates Nomad
- Single Go binary — agent that can be server (control plane) or client (data plane)
- Fewer components — no etcd, no multiple API servers, no separate scheduler (integrated)
- Heterogeneous workload — Docker + runc containers, VMs (via QEMU), raw binaries, batch jobs, GPU workloads
- Native multi-datacenter federation
- HashiCorp stack integration — Consul for service discovery, Vault for secrets, Terraform for IaC
Architecture
Nomad has servers (raft cluster, typically 3-5) and clients (worker nodes). nomad job run submits an HCL spec describing:
- Task type (driver: docker, exec, raw_exec, java, qemu)
- Resources (CPU, memory, disk)
- Count, restart policy, update strategy
- Network, affinities, constraints
The internal scheduler assigns allocations to clients. The semantic model is simpler than Kubernetes: no ~80 resource types; tasks are the base unit, grouped in groups and jobs.
When Nomad wins
- Small teams without dedicated platform engineering
- Heterogeneous workload mixed container/non-container
- HPC and batch — Nomad has native batch scheduler
- Edge deployment — lightweight agent on limited hardware
- Simple multi-cloud with federation
- Existing Consul use
When Kubernetes is better
- Mature CNCF ecosystem (Helm, Operators, service mesh)
- Industry standardisation — more talent available
- Cloud managed offerings (EKS, GKE, AKS)
- Complete cloud-native applications with many microservices
Adoption
- Cloudflare — manages thousands of edge nodes with Nomad
- CircleCI — CI infrastructure
- Roblox — gaming
- Trivago, GitHub Actions edge, Pandora
In the Italian context
Limited but present adoption in:
- Startups with small teams
- Academic HPC — batch scheduling
- Companies with Consul/Vault already deployed
References: Nomad 0.6 (August 2017). HashiCorp. MPL 2.0 licence (until 2023, then BSL). Integrated scheduler. Multi-driver: docker, exec, raw_exec, java, qemu. Consul + Vault + Terraform integration.
