Scaling Policies HTTP API
The /scaling/policies
and /scaling/policy/
endpoints are used to list and view scaling policies.
List Scaling Policies
This endpoint returns the scaling policies from all jobs.
Method | Path | Produces |
---|---|---|
GET | /scaling/policies | application/json |
The table below shows this endpoint's support for blocking queries, consistency modes and required ACLs.
Blocking Queries | Consistency Modes | ACL Required |
---|---|---|
YES | all | namespace:list-scaling-policies |
Parameters
job
(string: "")
- Specifies the job ID to filter policies by.type
(string: "")
- Specifies the type of scaling policy to filter by. In the open source version of Nomad,horizontal
is the only supported value. Within Nomad Enterprise,vertical_mem
andvertical_cpu
are supported along withvertical
. The latter returns policies matching bothvertical_mem
andvertical_cpu
.
Sample Request
$ curl \ https://localhost:4646/v1/scaling/policies
$ curl \ https://localhost:4646/v1/scaling/policies?job=example
$ curl \ https://localhost:4646/v1/scaling/policies?type=vertical
Sample Response
[ { "ID": "b2c64295-4315-2fdc-6158-a27156808729", "Enabled": true, "Type": "vertical_cpu", "Target": { "Namespace": "default", "Job": "example", "Group": "cache", "Task": "redis" }, "CreateIndex": 1340, "ModifyIndex": 1340 }, { "ID": "c355d0ec-7aa1-2604-449d-4ec79c813d2c", "Enabled": true, "Type": "vertical_mem", "Target": { "Job": "example", "Group": "cache", "Task": "redis", "Namespace": "default" }, "CreateIndex": 1340, "ModifyIndex": 1340 }, { "ID": "31a53813-24df-b2ad-77dc-1b4bad4e7dca", "Enabled": true, "Type": "horizontal", "Target": { "Job": "example", "Group": "cache", "Namespace": "default" }, "CreateIndex": 1358, "ModifyIndex": 1358 }]
Read Scaling Policy
This endpoint reads a specific scaling policy.
Method | Path | Produces |
---|---|---|
GET | /scaling/policy/:policy_id | application/json |
The table below shows this endpoint's support for blocking queries, consistency modes and required ACLs.
Blocking Queries | Consistency Modes | ACL Required |
---|---|---|
YES | all | namespace:read-scaling-policy |
Parameters
:policy_id
(string: <required>)
- Specifies the ID of the scaling policy (as returned by the scaling policy list endpoint). This is specified as part of the path.
Sample Request
$ curl \ https://localhost:4646/v1/scaling/policy/5e9f9ef2-5223-6d35-bac1-be0f3cb974ad
Sample Response
{ "CreateIndex": 10, "Enabled": true, "ID": "5e9f9ef2-5223-6d35-bac1-be0f3cb974ad", "Type": "horizontal", "Max": 10, "Min": 0, "ModifyIndex": 10, "Policy": { "engage": true, "foo": "bar", "howdy": "doody", "value": 6.0 }, "Target": { "Group": "cache", "Job": "example", "Namespace": "default" }}