What is Nomad?
Nomad is a cluster manager, designed for both long lived services and short lived batch processing workloads. Developers use a declarative job specification to submit work, and Nomad ensures constraints are satisfied and resource utilization is optimized by efficient task packing. Nomad supports all major operating systems and virtualized, containerized, or standalone applications.
Nomad is a tool in the Cluster Management category of a tech stack.
Nomad is an open source tool with 8.5K GitHub stars and 1.3K GitHub forks. Here’s a link to Nomad's open source repository on GitHub
Who uses Nomad?
53 companies reportedly use Nomad in their tech stacks, including CircleCI, trivago, and Petal.
128 developers on StackShare have stated that they use Nomad.
Docker, Consul, Vault, Habitat, and Portworx are some of the popular tools that integrate with Nomad. Here's a list of all 9 tools that integrate with Nomad.
Pros of Nomad
Built in Consul integration
Bult-in Vault integration
Built-in federation support
Managable by terraform
Multiple workload support
Bult-in Vault inegration
Jul 23 2019 at 10:44PM
Jul 13 2017 at 9:32AM
- Handles the scheduling and upgrading of the applications over time
- With built-in dry-run execution, Nomad shows what scheduling decisions it will take before it takes them. Operators can approve or deny these changes to create a safe and reproducible workflow
- Nomad runs applications and ensures they keep running in failure scenarios. In addition to long-running services, Nomad can schedule batch jobs, distributed cron jobs, and parameterized jobs
- Stream logs, send signals, and interact with the file system of scheduled applications. These operator-friendly commands bring the familiar debugging tools to a scheduled world
Nomad Alternatives & Comparisons
What are some alternatives to Nomad?
See all alternatives
Kubernetes is an open source orchestration system for Docker containers. It handles scheduling onto nodes in a compute cluster and actively manages workloads to ensure that their state matches the users declared intentions.
Apache Mesos is a cluster manager that simplifies the complexity of running applications on a shared pool of servers.
Unlike traditional operating systems, DC/OS spans multiple machines within a network, aggregating their resources to maximize utilization by distributed applications.
Its fundamental idea is to split up the functionalities of resource management and job scheduling/monitoring into separate daemons. The idea is to have a global ResourceManager (RM) and per-application ApplicationMaster (AM).
Mesosphere offers a layer of software that organizes your machines, VMs, and cloud instances and lets applications draw from a single pool of intelligently- and dynamically-allocated resources, increasing efficiency and reducing operational complexity.