Command: operator scheduler set-config
The scheduler operator set-config command is used to modify the scheduler configuration.
nomad operator scheduler set-config [options]
If ACLs are enabled, this command requires a token with the
-address=<addr>: The address of the Nomad server. Overrides the
NOMAD_ADDRenvironment variable if set. Defaults to
-region=<region>: The region of the Nomad server to forward commands to. Overrides the
NOMAD_REGIONenvironment variable if set. Defaults to the Agent's local region.
-no-color: Disables colored command output. Alternatively,
NOMAD_CLI_NO_COLORmay be set. This option takes precedence over
-force-color: Forces colored command output. This can be used in cases where the usual terminal detection fails. Alternatively,
NOMAD_CLI_FORCE_COLORmay be set. This option has no effect if
-no-coloris also used.
-ca-cert=<path>: Path to a PEM encoded CA cert file to use to verify the Nomad server SSL certificate. Overrides the
NOMAD_CACERTenvironment variable if set.
-ca-path=<path>: Path to a directory of PEM encoded CA cert files to verify the Nomad server SSL certificate. If both
-ca-certis used. Overrides the
NOMAD_CAPATHenvironment variable if set.
-client-cert=<path>: Path to a PEM encoded client certificate for TLS authentication to the Nomad server. Must also specify
-client-key. Overrides the
NOMAD_CLIENT_CERTenvironment variable if set.
-client-key=<path>: Path to an unencrypted PEM encoded private key matching the client certificate from
-client-cert. Overrides the
NOMAD_CLIENT_KEYenvironment variable if set.
-tls-server-name=<value>: The server name to use as the SNI host when connecting via TLS. Overrides the
NOMAD_TLS_SERVER_NAMEenvironment variable if set.
-tls-skip-verify: Do not verify TLS certificate. This is highly not recommended. Verification will also be skipped if
-token: The SecretID of an ACL token to use to authenticate API requests with. Overrides the
NOMAD_TOKENenvironment variable if set.
-check-index- If set, the scheduler config is only updated if the passed modify index matches the current server side version. If a non-zero value is passed, it ensures that the scheduler config is being updated from a known state.
-scheduler-algorithm- Specifies whether scheduler binpacks or spreads allocations on available nodes. Must be one of
-memory-oversubscription- When true, tasks may exceed their reserved memory limit, if the client has excess memory capacity. Tasks must specify
memory_maxto take advantage of memory oversubscription. Must be one of
-reject-job-registration- When true, the server will return permission denied errors for job registration, job dispatch, and job scale APIs, unless the ACL token for the request is a management token. If ACLs are disabled, no user will be able to register jobs. This allows operators to shed load from automated processes during incident response. Must be one of
-pause-eval-broker- When set to true, the eval broker which usually runs on the leader will be disabled. This will prevent the scheduler workers from receiving new work. Must be one of
-preempt-batch-scheduler- Specifies whether preemption for batch jobs is enabled. Note that if this is set to true, then batch jobs can preempt any other jobs. Must be one of
-preempt-service-scheduler- Specifies whether preemption for service jobs is enabled. Note that if this is set to true, then service jobs can preempt any other jobs. Must be one of
-preempt-sysbatch-scheduler- Specifies whether preemption for system batch jobs is enabled. Note that if this is set to true, then system batch jobs can preempt any other jobs. Must be one of
-preempt-system-scheduler- Specifies whether preemption for system jobs is enabled. Note that if this is set to true, then system jobs can preempt any other jobs. Must be one of
Modify the scheduler algorithm to spread:
$ nomad operator scheduler set-config -scheduler-algorithm=spread Scheduler configuration updated!
Modify the scheduler algorithm to spread using the check index flag:
$ nomad operator scheduler set-config -scheduler-algorithm=spread -check-index=5 Scheduler configuration updated!