es删除报错 blocked by [FORBIDDEN8index write (api)]
前言
> 这是我在这个网站整理的笔记,关注我,接下来还会持续更新。 作者:神的孩子都在歌唱
问题
错误:index [xxxx] blocked by: [FORBIDDEN/8/index write (api)];
我使用postman执行删除文档操作 DELETE: http://ip:9200/索引名/_doc/文档ID
问题原因
内存不足
当 JVMMemoryPressure 指标超过 92% 持续 30 分钟时,Amazon ES 会触发保护机制并阻止所有写入操作,以防止集群达到红色状态。当保护打开时,写入操作会失败并出现 ClusterBlockException 错误,无法创建新索引,并引发 IndexCreateBlockException 错误。
当 JVMMemoryPressure 指标在五分钟内返回到 88% 或更低时,保护将被禁用,并且对集群的写入操作将被解除阻止。
磁盘空间不足
Elasticsearch 默认的“低水位线”为 85%,这意味着一旦磁盘使用率超过 85%,Elasticsearch 就不再向该节点分配分片。Elasticsearch 的默认“高水位线”为 90%,此时它会尝试将分片重新定位到其他节点
我的问题
我使用graylog存储日志,如果他到达一定的存储量了之后就会新创建一个索引,另一个索引相当于归档了,只能进行查询操作。所以我想删除security_log_0 里面的某个文档就报错了
我们可以通过api去查看,发现有个index.blocks.write
为true
,我们将他改为false就可以
解决办法
将index.blocks.write
改为false就可以
http://ip:9200/索引名/_settings
{
"index": {
"blocks": {
"write": "false"
}
}
}
然后我们在删除就能够成功了
- 点赞
- 收藏
- 关注作者
评论(0)