Nomad is an orchestration tool for deploying and managing applications. It is flexible and can run either containerized or non-containerized workloads.
In these getting started guides, you will learn about Nomad's core capabilities by installing and running a local Nomad cluster.
You can install Nomad to your local machine or you can use a pre-built Vagrant environment to run the steps in this tutorial. Choose one of the following ways of installing Nomad, follow the steps, and then continue to "Verify the installation."
Nomad is available as a pre-compiled binary or as a package for several operating systems.
To simplify the getting started experience, you can download a precompiled binary and run it on your machine locally.
After downloading Nomad, unzip the package. Make sure that the
is available on your
PATH, before continuing with the other guides.
You can inspect the locations available on your path by running this command.
$ echo $PATH/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
The output is a list of locations separated by colons. You can make Nomad
available by moving the binary to one of the listed locations, or by adding
Nomad's location to your
Tip (Linux-based or Mac): Permanently add a new location to your path by
editing your shell's settings file (usually called something like
where the part of the filename after the
. and before
rc is the name of
your shell). In that file you should see a line that starts with
followed by a colon-separated list of locations. Add the location of the Consul
binary to that list and save the file. Then reload your shell's configuration
with the command
source ~/.bashrc, replacing
bash with the name of your
Tip (Windows): Add a location to your path via the GUI by navigating to
Environment Variables in your system settings, and looking for the variable
PATH. You should see a semicolon-separated list of locations. Add the
Consul binary's location to that list and then launch a new console window.
You can use a Vagrant to set up a development environment for Nomad. Vagrant is a tool for building and managing virtual machine environments.
You can download a Vagrantfile which starts a small Nomad cluster. First create a new directory for your Vagrant environment.
$ mkdir nomad-demo
Change into the directory you made with the previous command.
$ cd nomad-demo
Now you can get the Nomad installation configuration.
$ curl -O https://raw.githubusercontent.com/hashicorp/nomad/master/demo/vagrant/Vagrantfile
Now that you have created a new directory and downloaded the
you must create the virtual machine with the
vagrant up command.
$ vagrant up
This takes a few minutes as the base Ubuntu box must be downloaded and provisioned with both Docker and Nomad. Once this completes, you should see this output.
Bringing machine 'default' up with 'virtualbox' provider...==> default: Importing base box 'bento/ubuntu-18.04'......==> default: Running provisioner: docker...
At this point the Vagrant box is running and ready to use. Once the Vagrant box
is running, use the
vagrant ssh command to start a shell session on it.
$ vagrant ssh
If you connect to the virtual machine properly, you should find yourself at a
shell prompt for
»Verify the installation
To verify Nomad was installed correctly, try the
You should see help output similar to the following.
Usage: nomad [-version] [-help] [-autocomplete-(un)install] <command> [args] Common commands: run Run a new job or update an existing job stop Stop a running job status Display the status output for a resource alloc Interact with allocations job Interact with jobs node Interact with nodes agent Runs a Nomad agent Other commands: acl Interact with ACL policies and tokens agent-info Display status information about the local agent deployment Interact with deployments eval Interact with evaluations exec Execute commands in task license Interact with Nomad Enterprise License monitor Stream logs from a Nomad agent namespace Interact with namespaces operator Provides cluster-level tools for Nomad operators plugin Inspect plugins quota Interact with quotas recommendation Interact with the Nomad recommendation endpoint scaling Interact with the Nomad scaling endpoint sentinel Interact with Sentinel policies server Interact with servers system Interact with the system API ui Open the Nomad Web UI version Prints the Nomad version volume Interact with volumes
In this tutorial you installed Nomad on your local machine. Continue to the next guide where you will be introduced to some of the critical vocabulary related to Nomad.