升级模型快照 API

编辑

将异常检测模型快照升级到最新的主版本。

从 Elasticsearch 8.10.0 开始,使用新的版本号来跟踪机器学习插件中的配置和状态更改。这个新的版本号与产品版本分离,并且会独立递增。

请求

编辑

POST _ml/anomaly_detectors/<job_id>/model_snapshots/<snapshot_id>/_upgrade

前提条件

编辑
  • 需要 manage_ml 集群特权。此特权包含在 machine_learning_admin 内置角色中。
  • 升级的快照的版本必须与前一个主要版本匹配。
  • 升级的快照不能是当前异常检测作业快照。

描述

编辑

随着时间的推移,旧的快照格式会被弃用和删除。异常检测作业仅支持来自当前或前一个主要版本的快照。

此 API 提供了一种将快照升级到当前主要版本的方法。这有助于为升级到下一个主要版本准备集群。

每个异常检测作业一次只能升级一个快照,并且升级的快照不能是异常检测作业的当前快照。

路径参数

编辑
<job_id>
(必需,字符串)异常检测作业的标识符。
<snapshot_id>
(必需,字符串)模型快照的标识符。

查询参数

编辑
timeout
(可选,时间)控制等待请求完成的时间。默认值为 30 分钟。
wait_for_completion
(可选,布尔值)如果为 true,则 API 将在升级完成之前不会响应。否则,它会在升级任务分配给节点后立即响应。默认为 false。

响应体

编辑
node
(字符串)如果升级任务仍在运行,则为分配的节点的 ID。
completed
(布尔值)如果为 true,则表示任务已完成。如果为 false,则表示仍在运行。

示例

编辑
resp = client.ml.upgrade_job_snapshot(
    job_id="low_request_rate",
    snapshot_id="1828371",
    timeout="45m",
    wait_for_completion=True,
)
print(resp)
const response = await client.ml.upgradeJobSnapshot({
  job_id: "low_request_rate",
  snapshot_id: 1828371,
  timeout: "45m",
  wait_for_completion: "true",
});
console.log(response);
POST _ml/anomaly_detectors/low_request_rate/model_snapshots/1828371/_upgrade?timeout=45m&wait_for_completion=true

当快照升级开始时,您会收到以下结果

{
  "completed" : false,
  "node" : "node-1"
}