Spec-Zone.ru › Elasticsearch 8
›Elasticsearch Guide [8.17] ›REST APIs ›Autoscaling APIs

Create or update autoscaling policy API

This feature is designed for indirect use by Elasticsearch Service, Elastic Cloud Enterprise, and Elastic Cloud on Kubernetes. Direct use is not supported.

New API reference

For the most up-to-date API details, refer to Autoscaling APIs.

Creates or updates an autoscaling policy.

Request

resp = client.autoscaling.put_autoscaling_policy(
    name="<name>",
    policy={
        "roles": [],
        "deciders": {
            "fixed": {}
        }
    },
)
print(resp)
const response = await client.autoscaling.putAutoscalingPolicy({
  name: "<name>",
  policy: {
    roles: [],
    deciders: {
      fixed: {},
    },
  },
});
console.log(response);
PUT /_autoscaling/policy/<name>
{
  "roles": [],
  "deciders": {
    "fixed": {
    }
  }
}

Prerequisites

  • If the Elasticsearch security features are enabled, you must have the manage_autoscaling cluster privilege to use this API.
  • If the operator privileges feature is enabled, only operator users can use this API.

Description

This API puts an autoscaling policy with the provided name. See Autoscaling Deciders for available deciders.

Query parameters

master_timeout
(Optional, time units) Period to wait for the master node. If the master node is not available before the timeout expires, the request fails and returns an error. Defaults to 30s. Can also be set to -1 to indicate that the request should never timeout.
timeout
(Optional, time units) Period to wait for a response from all relevant nodes in the cluster after updating the cluster metadata. If no response is received before the timeout expires, the cluster metadata update still applies but the response will indicate that it was not completely acknowledged. Defaults to 30s. Can also be set to -1 to indicate that the request should never timeout.

Examples

This example puts an autoscaling policy named my_autoscaling_policy using the fixed autoscaling decider, applying to the set of nodes having (only) the "data_hot" role.

resp = client.autoscaling.put_autoscaling_policy(
    name="my_autoscaling_policy",
    policy={
        "roles": [
            "data_hot"
        ],
        "deciders": {
            "fixed": {}
        }
    },
)
print(resp)
const response = await client.autoscaling.putAutoscalingPolicy({
  name: "my_autoscaling_policy",
  policy: {
    roles: ["data_hot"],
    deciders: {
      fixed: {},
    },
  },
});
console.log(response);
PUT /_autoscaling/policy/my_autoscaling_policy
{
  "roles" : [ "data_hot" ],
  "deciders": {
    "fixed": {
    }
  }
}

The API returns the following result:

{
  "acknowledged": true
}

© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/8.17/autoscaling-put-autoscaling-policy.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API