Elasticsearch磁盘占用大于95% 导致索引自动置为只读的解决方法

当Elasticsearch磁盘使用率达到95%时,系统会自动将索引设置为只读。解决方法包括清理磁盘空间或调整自动锁阀值。建议首先清理磁盘,并通过执行特定的curl命令解除索引的只读模式。定期检查服务器状态,特别是系统盘的使用情况,以避免类似问题。
摘要由CSDN通过智能技术生成

应用系统在更新或者插入elasticsearch的时候报错

TOO_MANY_REQUESTS/12/disk usage excee  ded flood-stage watermark, index has read-only-allow-delete block

看错误信息大意是要操作的索引是只读的,不能进行插入或删除。
原因是当Elasticsearch所在磁盘占用大于等于95%时,Elasticsearch会把所有相关索引自动置为只读。(Elasticsearch官方文档有介绍)

解决方案有两种:
1.清理磁盘,使占用低于95%。
2.根据官方文档调整自动锁阀值

建议采用第一种,注意解决之后,需要手动把被锁的索引的只读模式关闭。

按照官档去关闭只读模式

curl -XPUT -H "Content-Type: application/json" http://localhost:9200/_cluster/settings -d '{ "transient": { "cluster.routing.allocation.disk.threshold_enabled": false } }'
curl -XPUT -H "Content-Type: application/json" http://localhost:9200/_all/_settings -d '{"index.blocks.read_only_allow_delete": null}'

通过Kibana查看配置信息:

GET /_cluster/settings
{
  "persistent" : { },
  "transient" : {
    "cluster" : {
      "routing" : {
        "allocation" : {
          "disk" : {
            "threshold_enabled" : "false"
          },
          "enable" : "all"
        }
      }
    }
  }
}

问题解决
在生产环境中,还是要定时巡检服务器状态, 尤其 是系统盘,数据的存储还是尽量放到挂载的大硬盘下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值