gitwtfhub

wtf is nomad-on-kubernetes?

kelseyhightower/nomad-on-kubernetes — explained in plain English

Analysis updated 2026-07-17 · repo last pushed 2018-06-26

354ShellAudience · ops devopsComplexity · 4/5DormantSetup · hard

TL;DR

A step-by-step tutorial showing how to run HashiCorp Nomad inside Kubernetes, so you can manage containerized and non-containerized workloads from one place.

Mindmap

mindmap
  root((repo))
    What it does
      Runs Nomad on Kubernetes
      Adds Consul service discovery
      Adds Vault secrets management
      Ten guided setup steps
    Tech stack
      Nomad
      Kubernetes
      Consul
      Vault
    Use cases
      Run legacy VM workloads
      Unify infra management
      Learn Nomad plus Kubernetes
    Audience
      Platform engineers
      DevOps teams
      Infra teams on Kubernetes
    Caveats
      2017 era versions
      Verify compatibility first

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Run legacy, non-containerized apps alongside Kubernetes services under one system.

REASON 2

Learn how to combine Nomad, Consul, and Vault on top of a Kubernetes cluster.

REASON 3

Set up service discovery and secrets management for a mixed workload environment.

REASON 4

Prototype a unified scheduling layer for both VM-based and containerized apps.

What's in the stack?

NomadKubernetesConsulVaultShell

How it stacks up

kelseyhightower/nomad-on-kubernetescodecrafters-io/build-your-own-redispyenv/pyenv-update
Stars354327383
LanguageShellShellShell
Last pushed2018-06-262026-01-10
MaintenanceDormantQuiet
Setup difficultyhardmoderateeasy
Complexity4/51/51/5
Audienceops devopsdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · hard Time to first run · 1h+

Requires provisioning a Kubernetes cluster plus Consul and Vault, referenced tool versions are from 2017.

Wtf does this do

Nomad on Kubernetes is a step-by-step tutorial that teaches you how to run Nomad, a workload scheduler from HashiCorp, inside a Kubernetes environment. The main benefit is that it lets you combine two powerful systems so you can manage a wider variety of applications from one place, including older or non-containerized software that Kubernetes alone can't easily handle. Kubernetes is great at running containerized apps, but Nomad is more flexible and can run almost any type of workload, including things that aren't packaged in containers. By running Nomad on top of Kubernetes, you get the best of both worlds: Kubernetes handles the underlying infrastructure and deployment, while Nomad extends what you can actually run on it. The tutorial also walks through setting up Consul (for service discovery, helping services find each other) and Vault (for managing secrets like passwords and API keys securely). This project is aimed at platform engineers, DevOps practitioners, or infrastructure teams who already use Kubernetes but need to support workloads that don't fit neatly into the containerized model. For example, if your company has legacy applications running on virtual machines alongside newer Kubernetes-based services, this setup lets you manage both under a unified framework. CircleCI has used a similar approach to process millions of builds per month, as noted in the README. The tutorial is broken into ten guided steps covering prerequisites, client tool installation, infrastructure provisioning, and cluster setup for Consul, Vault, and Nomad. It's written with cost in mind, using minimal CPU and memory allocations so you can learn without racking up a big cloud bill. A cleanup script is included to tear everything down when you're done. Note that the specific software versions referenced (from 2017) are quite old, so you'd want to verify compatibility with current versions before using this in production.

Yoink these prompts

Prompt 1
Walk me through setting up Nomad on top of an existing Kubernetes cluster using this tutorial's ten steps.
Prompt 2
Explain how Consul and Vault fit into a Nomad-on-Kubernetes setup and what each one is responsible for.
Prompt 3
Help me adapt this tutorial's prerequisites and client tool install steps to a current Kubernetes version.
Prompt 4
Show me how to run a non-containerized legacy app on Nomad once it's deployed inside Kubernetes.

Frequently asked questions

wtf is nomad-on-kubernetes?

A step-by-step tutorial showing how to run HashiCorp Nomad inside Kubernetes, so you can manage containerized and non-containerized workloads from one place.

What language is nomad-on-kubernetes written in?

Mainly Shell. The stack also includes Nomad, Kubernetes, Consul.

Is nomad-on-kubernetes actively maintained?

Dormant — no commits in 2+ years (last push 2018-06-26).

How hard is nomad-on-kubernetes to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is nomad-on-kubernetes for?

Mainly ops devops.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.