前言

elasticsearch 报错blocked by: [FORBIDDEN/12/index read-only / allow delete (api)]
从输出语句可以看出是索引只读的错误,实际也的确如此,这个错误正是我在操作删除的时候报出的。


一、原因分析

一旦在存储超过95%的磁盘中的节点上分配了一个或多个分片的任何索引,该索引将被强制进入只读模式
查看方法:在head插件或kibana上查看索引信息,当 “read_only_allow_delete”: “true”时,即是索引在只读模式状态。
image.png


二、解决办法

1、es存储数据的磁盘此时应用空间已使用95%以上,删除不必要文件给es足够空间
2、执行DSL

  1. PUT _settings
  2. {
  3. "index": {
  4. "blocks": {
  5. "read_only_allow_delete": "false"
  6. }
  7. }
  8. }

82c230b1-8806-4626-9985-17895762e692.jpg