HashiCorp Nomad - Local Lab Using Vagrant
https://discoposse.com/2019/11/21/building-a-hashicorp-nomad-cluster-lab-using-vagrant-and-virtualbox/Accompanying blog for the initial setup:
What is this?
A simple 3-node or 6-node lab running Ubuntu servers on VirtualBox and each node runs Consul and Nomad servers which can be configured as a cluster.
Why use this method?
This is a great way to get your feet wet with Nomad in a simplified environment and you also have a chance to mess around with the configurations and commands without risking a cloud (read: money) installation or a production (read: danger!) environment.
There are a few things you need to get this going:
How to use the Nomad lab configuration
For 3-node clusters you must rename
For 6-node (two region) clusters you must rename
Clone this repo (or fork it of you so desire and want to contribute to it)
Change directory and run a
vagrant statusto check the dependencies are met
vagrant upcommand and watch the magic happen! (spoiler alert: it's not magic, it's technology)
Each node will able to run Consul and Nomad
To start your Nomad cluster just do this:
- Connect to the first node (either nomad-a-1 or nomad-b-1) using the
vagrant ssh <nodename>where
<nodename>is the instance name (e.g. nomad-a-1, nomad-b-1).
- Change directory to the /vagrant folder using
- Launch Nomad using the shell script which is
<nodename>is the node you are running on (e.g.
- Connect to the remaining two nodes (nomad-a-2, nomad-a-3) and repeat the process of changing to the /vagrant folder and running the appropriate launch script
The first node in each of the set of three will begin as the leader. The other two node launch scripts have a
nomad server join command to join the cluster with the first node.
Once you're used to the commmands, you can start and stop as much as needed.
Consul is installed but not used for the basic configuration. More to come on that.
Now you're running!
Interacting with the Nomad and Consul cluster
Logging into the systems locally can be done
- You can use some simple commands to get started
nomad node status
- To open the Nomad UI use this command on your local machine