机器学习决策器
编辑机器学习决策器
编辑自动伸缩机器学习决策器(ml
)会计算运行机器学习作业和训练模型所需的内存和 CPU 要求。
机器学习决策器适用于管理 ml
节点的策略。
为了使机器学习作业在集群未适当伸缩时也能打开,请将 xpack.ml.max_lazy_ml_nodes
设置为可能的机器学习节点的最大数量(有关更多信息,请参阅高级机器学习设置)。在 Elasticsearch Service 中,此设置是自动配置的。
配置设置
编辑num_anomaly_jobs_in_queue
和 num_analytics_jobs_in_queue
都旨在延迟向上伸缩事件。如果集群太小,这些设置指示每种类型的作业可以从节点取消分配的数量。只有当作业可以在当前规模下打开时,才会考虑这两个设置。如果某个作业对于任何节点大小都太大,或者如果某个作业在没有用户干预的情况下无法分配(例如,用户针对实时异常检测作业调用 _stop
),则该特定作业的数字将被忽略。
-
num_anomaly_jobs_in_queue
- (可选,整数)指定允许排队的异常检测作业数量。默认为
0
。 -
num_analytics_jobs_in_queue
- (可选,整数)指定允许排队的数据帧分析作业数量。默认为
0
。 -
down_scale_delay
- (可选,时间值)指定在向下伸缩之前延迟的时间。默认为 1 小时。如果整个时间窗口都有可能向下伸缩,则会请求向下伸缩。如果在该窗口期间集群需要向上伸缩,则该窗口会被重置。
示例
编辑此示例创建了一个名为 my_autoscaling_policy
的自动伸缩策略,该策略会覆盖机器学习决策器的默认配置。
resp = client.autoscaling.put_autoscaling_policy( name="my_autoscaling_policy", policy={ "roles": [ "ml" ], "deciders": { "ml": { "num_anomaly_jobs_in_queue": 5, "num_analytics_jobs_in_queue": 3, "down_scale_delay": "30m" } } }, ) print(resp)
const response = await client.autoscaling.putAutoscalingPolicy({ name: "my_autoscaling_policy", policy: { roles: ["ml"], deciders: { ml: { num_anomaly_jobs_in_queue: 5, num_analytics_jobs_in_queue: 3, down_scale_delay: "30m", }, }, }, }); console.log(response);
PUT /_autoscaling/policy/my_autoscaling_policy { "roles" : [ "ml" ], "deciders": { "ml": { "num_anomaly_jobs_in_queue": 5, "num_analytics_jobs_in_queue": 3, "down_scale_delay": "30m" } } }
API 返回以下结果
{ "acknowledged": true }