刘华
实验室:JS测试器
分类专栏
hadoop2篇
mysql1篇
nginx8篇
java5篇
架构设计3篇
信息安全6篇
前端开发2篇
数据同步6篇
AI7篇
其他9篇

ES提示MANY_REQUESTS/12/disk usage exceeded flood-stage watermark, index has read-only-allow-delete

liuhua-2023/8/15 12:04:12

今天我们公司运营平台测试环境提交审批时遇到ES报错问题,提交审批流程都不行。

image.png

分析了一下,应该是流程服务所以来的ES服务主动锁定索引造成的。网上查了一下ES锁定的原因,可能是内存满了,磁盘满了,或索引在恢复中、刷新中、合并中、备份、复制中。

参考:https://blog.csdn.net/qq_38423256/article/details/131062957

显示最近我们没有对ES进行维护操作,应该是内存或磁盘的问题。又查询、排除了内存占用的问题,最后看磁盘,50G的磁盘只剩不到5%的可用空间了。估计是ES服务判断了磁盘剩余空间阈值,进而将索引变成了只读模式。我尝试通过以下操作去掉只读模式:

curl -X PUT  "http://localhost:9200/_all/_settings" -H "Content-Type: application/json"  -d '{"index.blocks.read_only_allow_delete": null}'

该操作返回执行成功,通过以下操作查询结果:

curl http://localhost:9200/_all/_settings

看到只读模式去掉了。但一会儿再查询,又变成只读模式了。

看来只能尝试清理磁盘了。

通过du -h --max-depth=1查询各目录占用磁盘空间大小,找到磁盘占用大的目录,进行清理。

清理了一定磁盘空间后,再执行操作去掉只读模式,然后成功了。


小钉 京ICP备16032583号-1