获取自动扩容容量 API

编辑

此功能旨在由 Elasticsearch ServiceElastic Cloud EnterpriseElastic Cloud on Kubernetes 间接使用。不支持直接使用。

获取 自动扩容 容量。

请求

编辑
resp = client.autoscaling.get_autoscaling_capacity()
print(resp)
const response = await client.autoscaling.getAutoscalingCapacity();
console.log(response);
GET /_autoscaling/capacity/

先决条件

编辑
  • 如果启用了 Elasticsearch 安全功能,则您必须拥有 manage_autoscaling 集群权限。有关更多信息,请参阅 安全权限

描述

编辑

此 API 根据配置的自动扩容策略获取当前的自动扩容容量。此 API 将返回信息,以根据当前工作负载适当地调整集群大小。

required_capacity 计算为该策略启用的所有单独决策器的 required_capacity 结果的最大值。

操作员应验证 current_nodes 是否与操作员对集群的了解相符,以避免基于过时或不完整的信息做出自动扩容决策。

响应包含特定于决策器的信息,您可以使用这些信息来诊断自动扩容如何以及为何确定需要某个容量。此信息仅用于诊断。请勿使用此信息做出自动扩容决策。

查询参数

编辑
master_timeout
(可选,时间单位)等待主节点的时间段。如果在超时过期之前主节点不可用,则请求失败并返回错误。默认为 30s。也可以设置为 -1,表示请求永远不会超时。

响应体

编辑
policies

(对象)包含策略名称到容量结果的映射

policies 的属性
<policy_name>

(对象)包含策略的容量信息

<policy_name> 的属性
required_capacity

(对象)包含策略所需的容量。

required_capacity 的属性
node

(对象)包含每个节点所需的最小节点大小,确保单个分片或 ML 作业可以放入单个节点。

node 的属性
storage
(整数)每个节点所需的存储字节数。
memory
(整数)每个节点所需的内存字节数。
processors
(浮点数)每个节点所需的处理器(vCPU)数量。
total

(对象)包含策略所需的总大小。

total 的属性
storage
(整数)策略所需的总存储字节数。
memory
(整数)策略所需的总内存字节数。
processors
(浮点数)策略所需的处理器(vCPU)总数。
current_capacity

(对象)包含由策略管理的节点的当前容量,即 Elasticsearch 计算所依据的节点。

current_capacity 的属性
node

(对象)包含由策略管理的节点的最大大小。

node 的属性
storage
(整数)节点的最大存储字节数。
memory
(整数)节点的最大内存字节数。
processors
(浮点数)节点的最大处理器(vCPU)数量。
total

(对象)包含由策略管理的节点的当前总存储和内存大小。

total 的属性
storage
(整数)策略可用的当前存储字节数。
memory
(整数)策略可用的当前内存字节数。
processors
策略可用的当前处理器 (vCPU) 数量。
current_nodes

(对象数组)用于容量计算的节点列表。

current_nodes 中元素的属性
name
(字符串)节点的名称。
deciders

(对象)来自单独决策器的容量结果,允许深入了解外部级别的 required_capacity 是如何计算的。

deciders 的属性
<decider_name>

(对象)策略启用的特定决策器的容量结果。

<decider_name> 的属性
required_capacity

(对象)决策器确定的所需容量。

required_capacity 的属性
node

(对象)包含每个节点所需的最小节点大小,确保单个分片或机器学习作业可以放入单个节点。

node 的属性
storage
(整数)每个节点所需的存储字节数。
memory
(整数)每个节点所需的内存字节数。
processors
(浮点数)每个节点所需的处理器(vCPU)数量。
total

(对象)包含策略所需的总大小。

total 的属性
storage
(整数)策略所需的总存储字节数。
memory
(整数)策略所需的总内存字节数。
processors
(浮点数)策略所需的处理器(vCPU)总数。
reason_summary
(字符串)决策器结果依据的描述。
reason_details
(对象)每个决策器的结构,其中包含有关决策器结果依据的详细信息。不应将内容用于应用程序目的,并且不受向后兼容性保证的约束。

示例

编辑

此示例检索当前的自动扩容容量。

resp = client.autoscaling.get_autoscaling_capacity()
print(resp)
const response = await client.autoscaling.getAutoscalingCapacity();
console.log(response);
GET /_autoscaling/capacity

该 API 返回以下结果

{
  policies: {}
}