open-nomad/website/content/docs/commands/job/stop.mdx
Luiz Aoqui 1aceff7806
cli: remove hard requirement on list-jobs (#16380)
Most job subcommands allow for job ID prefix match as a convenience
functionality so users don't have to type the full job ID.

But this introduces a hard ACL requirement that the token used to run
these commands have the `list-jobs` permission, even if the token has
enough permission to execute the basic command action and the user
passed an exact job ID.

This change softens this requirement by not failing the prefix match in
case the request results in a permission denied error and instead using
the information passed by the user directly.
2023-03-09 15:00:04 -05:00

130 lines
4.4 KiB
Plaintext

---
layout: docs
page_title: 'Commands: job stop'
description: |
The job stop command is used to stop a running job.
---
# Command: job stop
**Alias: `nomad stop`**
The `job stop` command is used to stop a running job and signals the scheduler
to cancel all the running allocations.
## Usage
```plaintext
nomad job stop [options] <job 1> <job 2> ... <job N>
```
The `job stop` command requires at least one job ID or prefix to stop. If there
is an exact match based on the provided job ID or prefix, then the job will be
cancelled. Otherwise, a list of matching jobs and information will be
displayed.
Stop will issue a request to deregister the matched jobs and then invoke an
interactive monitor that exits automatically once the scheduler has processed
the requests. It is safe to exit the monitor early using ctrl+c.
When ACLs are enabled, this command requires a token with the `submit-job`
and `read-job` capabilities for the job's namespace. The `list-jobs`
capability is required to run the command with job prefixes instead of exact
job IDs.
## General Options
@include 'general_options.mdx'
## Stop Options
- `-detach`: Return immediately instead of entering monitor mode. After the
deregister command is submitted, a new evaluation ID is printed to the screen,
which can be used to examine the evaluation using the [eval status] command.
- `-eval-priority`: Override the priority of the evaluations produced as a result
of this job deregistration. By default, this is set to the priority of the job.
- `-verbose`: Show full information.
- `-yes`: Automatic yes to prompts.
- `-purge`: Purge is used to stop the job and purge it from the system. If not
set, the job will still be queryable and will be purged by the garbage
collector.
- `-global`
Stop a [multi-region] job in all its regions. By default, `job stop` will
stop only a single region at a time. Ignored for single-region jobs.
- `-no-shutdown-delay`
Ignore the group and task [`shutdown_delay`] configuration so that
there is no delay between service deregistration and task
shutdown. Note that using this flag will result in failed network
connections to the allocations being stopped.
## Examples
Stop the job with ID "job1":
```shell-session
$ nomad job stop job1
==> Monitoring evaluation "43bfe672"
Evaluation status changed: "pending" -> "complete"
==> Evaluation "43bfe672" finished with status "complete"
```
Stop multiple jobs:
```shell-session
$ nomad job stop job1 job2
==> 2022-12-16T15:19:28-08:00: Monitoring evaluation "166c39c5"
==> 2022-12-16T15:19:28-08:00: Monitoring evaluation "049404c2"
2022-12-16T15:19:28-08:00: Evaluation triggered by job "job1"
2022-12-16T15:19:28-08:00: Evaluation triggered by job "job2"
2022-12-16T15:19:28-08:00: Evaluation within deployment: "90885ce7"
2022-12-16T15:19:28-08:00: Evaluation status changed: "pending" -> "complete"
==> 2022-12-16T15:19:28-08:00: Evaluation "166c39c5" finished with status "complete"
==> 2022-12-16T15:19:28-08:00: Monitoring deployment "90885ce7"
✓ Deployment "90885ce7" successful
2022-12-16T15:19:28-08:00
ID = 90885ce7
Job ID = job1
Job Version = 0
Status = successful
Description = Deployment completed successfully
Deployed
Task Group Desired Placed Healthy Unhealthy Progress Deadline
example 1 1 1 0 2022-12-16T15:29:03-08:00
==> 2022-12-16T15:19:29-08:00: Monitoring evaluation "049404c2"
2022-12-16T15:19:29-08:00: Evaluation within deployment: "a13df8f8"
2022-12-16T15:19:29-08:00: Evaluation status changed: "pending" -> "complete"
==> 2022-12-16T15:19:29-08:00: Evaluation "049404c2" finished with status "complete"
==> 2022-12-16T15:19:29-08:00: Monitoring deployment "a13df8f8"
✓ Deployment "a13df8f8" successful
2022-12-16T15:19:29-08:00
ID = a13df8f8
Job ID = job2
Job Version = 0
Status = successful
Description = Deployment completed successfully
Deployed
Task Group Desired Placed Healthy Unhealthy Progress Deadline
example2 1 1 1 0 2022-12-16T15:29:16-08:00
```
Stop the job with ID "job1" and return immediately:
```shell-session
$ nomad job stop -detach job1
507d26cb
```
[eval status]: /nomad/docs/commands/eval/status
[multi-region]: /nomad/docs/job-specification/multiregion
[`shutdown_delay`]: /nomad/docs/job-specification/group#shutdown_delay