In this video, HashiCorp solutions engineer Josh Jordan points out four contexts that are ripe for Nomad while giving a demo using high availability services in a hybrid IT environment.
The scale of our environments requires that we know our deployment footprint and how to optimize resource utilization for it. Leveraging Nomad's architecture can simplify infrastructure complexities so you can optimize the 'where and how' of applications running in your server fleet and third-party clouds.
Nomad is a scheduler—an orchestration tool concerned with service architectures. It provides configuration, coordination, and management of those architectures with one simple workflow for developers to deploy containerized and non-containerized workflows efficiently.
So when do you want to consider a tool like Nomad? In this video, HashiCorp solutions engineer Josh Jordan points out four contexts that are ripe for Nomad:
All of these contexts will be on full display in this demo using HA services in a hybrid infrastructure environment.
Here's the GitHub repo so you can follow along.
0:00 — Introduction to Nomad contexts
9:35 — Demo: HA services in a hybrid ecosystem
26:05 — Q&A
The short answer is no because a canary deployment is intended to create predictability in service deployments to infrastructure; however, Nomad doesn't get in your way if you want to do A/B testing for services you deploy. You would need to leverage your router, proxy, etc to do it. NGINX supports A/B configurations when routing to services.
I may have misunderstood the question, but I believe this was a reference to running Nomad in Vagrant or Docker, to which I'm not aware of any issues other than you probably don't want to do either of these for production. You could run your servers in either, but definitely not the clients. Following the deployment architecture is always recommended.
If the question pertained to running Vagrant or Docker as a driver, the answer is not concise.
Docker is one of the supported Nomad Drivers, Vagrant is not.
I've never tried it, but you may be able to leverage the Raw Exec driver to run Vagrant without isolation and map its port config to Nomad's port listing as a static port. Seems experimental, but I'd love to hear what you find out.
We are bringing Driver plugins to Nomad 0.9, so you may be able to write your own Vagrant driver in the future, but I'm not sure what the constraints are to confirm this at present.