在我的一些索引中,我通过使用PUT /index/_settings
API调用来执行"index.blocks.read_only_allow_delete": true
。但大约 10 秒后,设置消失,索引再次可写。
我想知道这是否可能是 ES 中的一个错误,因为在 6.8 版中,当磁盘超过泛洪阶段的节点再次低于正常阈值时,进行了更改以自动重置此设置。
我在 ES 7.9 中遇到了这种奇怪的行为。我期望的是,如果 ES 因为水印而将设置更改为true
,那么它可以稍后将其重置为false
。但是,如果操作员手动将设置更改为true
,则 ES 将遵循该设置。
这些是我读到的有关该行为的文档:
控制泛洪阶段水印,默认为 95%。Elasticsearch在节点上分配了一个或多个分片的每个索引上强制使用只读索引块(
index.blocks.read_only_allow_delete
),并且至少有一个磁盘超过泛洪阶段。此设置是防止节点磁盘空间不足的最后手段。当磁盘利用率低于高水位线时,将自动释放索引块。
交叉发布在这里。
我最终使用了index.blocks.read_only
,因为ElasticSearch不会自动更新这个。