> ## Documentation Index
> Fetch the complete documentation index at: https://notes.kodekloud.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Module 3 Summary and Where Tidepool Landed

> How Nomad orchestrates resilient, fungible deployments, design patterns for stateless services and identity-based secrets, and gaps requiring Consul, Vault, and Nomad Autoscaler

Let's rewind to 14 minutes past 2:00 AM on the same host: the disk fills, Docker stops, and the container running Tidepool's API goes down. Nomad detects the node is unresponsive, creates an evaluation, and the scheduler produces a plan to replace the work that was running on that node. The leader accepts the plan and a new allocation starts on a machine with capacity.

The replacement instance comes up, authenticates to Vault using an identity it cannot forge, retrieves its database credentials, renders configuration from a template variable, registers itself under the service name the frontend queries, and begins answering requests. The other two replicas carried traffic while this happened, nobody was paged, and no customer in Berlin emailed support.

<Frame>
  <img src="https://mintcdn.com/kodekloud-c4ac6d9a/l4I9ipyyKXTd2i-D/images/Learn-By-Doing-HashiCorp-Nomad/Operating-Nomad-Day-to-Day/Module-3-Summary-and-Where-Tidepool-Landed/disk-fill-docker-stop-replica-shift.jpg?fit=max&auto=format&n=l4I9ipyyKXTd2i-D&q=85&s=d893db790316ee7280956c1871cc3b55" alt="A slide showing a failure flow: a disk fills, Docker stops, and the allocation moves so &#x22;the other copies carry the traffic.&#x22; Four replica boxes (box-1 to box-4) with server and Docker icons are illustrated." width="1920" height="1080" data-path="images/Learn-By-Doing-HashiCorp-Nomad/Operating-Nomad-Day-to-Day/Module-3-Summary-and-Where-Tidepool-Landed/disk-fill-docker-stop-replica-shift.jpg" />
</Frame>

Maya checked the allocation events the next morning just out of curiosity and read the audit trail there. The incident looked routine to her because Nomad had automated the replacement and registration steps.

Operationally, this workflow implies a few deliberate design choices.

## She stopped naming machines

Treating hosts as fungible resources changes how you design and operate services:

* Run multiple replicas rather than depending on a single named host.
* Use service discovery so frontends look up services by name instead of by IP.
* Avoid baking secrets into images; tasks should authenticate with a machine/task identity and retrieve credentials from a secrets store such as Vault.
* Accept that a task might start on any node the scheduler chooses, so make tasks stateless where possible and parameterize configuration.

Each change follows from the previous one: fungible nodes → more replicas → service discovery → identity-based secret delivery → safer, more resilient deployments.

<Frame>
  <img src="https://mintcdn.com/kodekloud-c4ac6d9a/l4I9ipyyKXTd2i-D/images/Learn-By-Doing-HashiCorp-Nomad/Operating-Nomad-Day-to-Day/Module-3-Summary-and-Where-Tidepool-Landed/she-stopped-naming-machines.jpg?fit=max&auto=format&n=l4I9ipyyKXTd2i-D&q=85&s=44f694a3a0cfd28eddb9fbd19bc59b94" alt="An infographic titled &#x22;She Stopped Naming Machines&#x22; that uses icons and short captions (no names, many copies, announced by name, identity not a password) to explain machine naming and identity. The right side reads &#x22;Maya read about it the next morning,&#x22; and the bottom shows server/container illustrations labeled box-1 through box-4." width="1920" height="1080" data-path="images/Learn-By-Doing-HashiCorp-Nomad/Operating-Nomad-Day-to-Day/Module-3-Summary-and-Where-Tidepool-Landed/she-stopped-naming-machines.jpg" />
</Frame>

## What Nomad does not provide out of the box

Nomad is a compact, flexible orchestrator, but it intentionally focuses on core scheduling and allocation. There are a few gaps you should plan for:

* It does not autoscale workloads automatically by itself; scaling is declared in the job spec. Use the [Nomad Autoscaler](https://github.com/hashicorp/nomad-autoscaler) when you need dynamic scaling.
* Its built-in service discovery reports health but does not perform advanced filtering to remove unhealthy instances from results — running [Consul](https://learn.kodekloud.com/user/courses/hashicorp-certified-consul-associate-certification) provides richer health checks and service discovery semantics.
* Nomad does not include a service mesh; integrate with [Consul](https://learn.kodekloud.com/user/courses/hashicorp-certified-consul-associate-certification) or another mesh provider for mTLS, traffic control, and observability.
* The ecosystem and third-party integrations around Nomad are smaller than those for some other orchestrators; you may find fewer ready-made plugins or community answers for niche issues.

<Frame>
  <img src="https://mintcdn.com/kodekloud-c4ac6d9a/l4I9ipyyKXTd2i-D/images/Learn-By-Doing-HashiCorp-Nomad/Operating-Nomad-Day-to-Day/Module-3-Summary-and-Where-Tidepool-Landed/nomad-limitations-autoscaling-health-mesh-ecosystem.jpg?fit=max&auto=format&n=l4I9ipyyKXTd2i-D&q=85&s=95405832b4e9153722244862ddfef33e" alt="A presentation slide titled &#x22;What Nomad Does Not Do&#x22; that lists limitations: no autoscaling alone, no health filtering, no mesh without Consul, and a smaller ecosystem. The slide includes illustrative icons (graph, lifebuoy, globe, Docker/servers) and four server boxes labeled box-1 through box-4." width="1920" height="1080" data-path="images/Learn-By-Doing-HashiCorp-Nomad/Operating-Nomad-Day-to-Day/Module-3-Summary-and-Where-Tidepool-Landed/nomad-limitations-autoscaling-health-mesh-ecosystem.jpg" />
</Frame>

| Limitation | What it means | Typical solution |
| - | - | - |
| No built-in autoscaling | Jobs scale by declaration; Nomad won't scale workloads automatically | Deploy the `Nomad Autoscaler` for policy-driven scaling |
| Basic service discovery only | Nomad can register services and report health but lacks advanced filtering | Run `Consul` for richer service discovery and health filtering |
| No service mesh included | No built-in mTLS, traffic routing, or observability via a mesh | Integrate `Consul` or another mesh provider |
| Smaller ecosystem | Fewer integrations and community resources for edge cases | Plan for more in-house tooling or custom integrations |

<Callout icon="lightbulb" color="#1CB2FE">
  Nomad reduces host-level operational work and gives you a simpler control plane for mixed workloads. However, you should account for the extra components (Autoscaler, Consul, Vault) and the people required to operate them when estimating operational effort.
</Callout>

Therefore, count the people and the operational tasks required to run the system. If your team is small and your workloads are mixed, Nomad often delivers most of the benefits of a larger orchestrator while keeping your operational footprint leaner.

## Links and references

* Nomad Autoscaler: [https://github.com/hashicorp/nomad-autoscaler](https://github.com/hashicorp/nomad-autoscaler)
* Vault (secrets management): [https://learn.kodekloud.com/user/courses/hashicorp-certified-vault-associate-certification](https://learn.kodekloud.com/user/courses/hashicorp-certified-vault-associate-certification)
* Consul (service discovery & mesh): [https://learn.kodekloud.com/user/courses/hashicorp-certified-consul-associate-certification](https://learn.kodekloud.com/user/courses/hashicorp-certified-consul-associate-certification)

<CardGroup>
  <Card title="Watch Video" icon="video" cta="Learn more" href="https://learn.kodekloud.com/user/courses/learn-by-doing-hashicorp-nomad/module/b579370f-3fca-4d5f-b200-462e1a84bcd2/lesson/02670dde-ddda-4c55-8171-0c43328daa50" />
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.