ElasticSearch中.task索引的管理

k75qkfdt  于 2023-06-21  发布在  ElasticSearch
关注(0)|答案(1)|浏览(188)

不久前,我偶然发现了ElasticSearch中的.task索引。看起来ElasticSearch在这个索引中为每个批量插入或批量删除创建一个条目。
因此,我想知道,如果我必须做一些清理索引的家务。目前,我的索引由~70.000个条目组成,还在增加。我尝试实现一个cron作业,通过批量删除来删除所有已完成的任务。
然而,在这方面,

  1. ElasticSearch告诉我,在未来的主要版本中可能会禁止访问索引:this request accesses system indices: [.tasks], but in a future major version, direct access to system indices will be prevented by default
  2. ElasticSearch阻止我删除任务,告诉我,我的用户正在错过所需的赠款:org.elasticsearch.ElasticsearchSecurityException: action [indices:data/write/delete/byquery] is unauthorized for user [user] with roles [superuser] on restricted indices [.tasks], this action is granted by the index privileges [delete,write,all]
    所以我想知道,我必须为这个索引做任何家务吗?或者有没有其他更优雅的方法来防止Elastic保留所有任务信息(例如我丢失的配置)?
rkue9o1l

rkue9o1l1#

.task索引仅包含历史数据引用。根据文件
如果请求包含wait_for_completion=false,Elasticsearch将执行一些预检,启动请求,并返回一个任务,您可以使用该任务取消或获取任务的状态。Elasticsearch会在_tasks/创建一个记录<task_id>。
默认情况下,它将永远增长,直到您对其执行操作。您可以在计划的时间安全地删除此索引(它将自动重新创建-除非您禁用了自动创建),root弹性用户或其他用户具有足够的,或在其上放置ILM
通常不建议在上操作。系统直接索引也许这仍然是任务的有效情况。
没有人保证这在未来的版本中不会改变。最有可能的是,家务管理将在某个时候成为产品的一部分。但我想这在他们的优先名单上并不高

相关问题