Nomad
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"
}
}