HashiCorp Nomad: simple alternative orchestrator to Kubernetes

Nomad 0.6 (August 2017) by HashiCorp: single-binary Go workload orchestrator, supports containers + VMs + binaries + batch jobs, federated multi-cluster, integration with Consul and Vault. The pragmatic alternative to Kubernetes.

Open SourceWeb NomadHashiCorpOrchestratorContainerCloudOpen Source

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.

Need support? Under attack? Service Status
Need support? Under attack? Service Status