index [XXX] blocked by: [FORBIDDEN/12/index read-only / allow delete (api)]问题解决

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了index [XXX] blocked by: [FORBIDDEN/12/index read-only / allow delete (api)]问题解决相关的知识,希望对你有一定的参考价值。

参考技术A 一、通常我们在Elasticsearch中增加或更新数据时会出现错误如下,说名这个索引是只读状态。

解决方法,终端运行下面命令:

或者在postman中执行 PUT http://127.0.0.1:9200/索引名称/_settings

或是创建索引时就指定 read_only_allow_delete 为 false
PUT 127.0.0.1/blog

二、如果上面的方法执行完之后,过几分钟又会出现同样的错误,并且查看索引信息, read_only_allow_delete 依然为 true

这时就是因为你的磁盘空间不足导致的, 查看官方文档 ,可以看到当磁盘的使用率超过95%时,Elasticsearch为了防止节点耗尽磁盘空间,自动将索引设置为只读模式。

解决方法:
1、最简单也是最直接的是清理磁盘空间
2、更改elasticsearch.yml配置文件,在config/elasticsearch.yml中增加下面这句话

这是把控制洪水阶段水印设置为99%,你也可以自己设置其他百分比,默认是95%。
3、更改elasticsearch.yml配置文件,在config/elasticsearch.yml中增加下面这句话

默认为true。设置为false禁用磁盘分配决策程序。
上面无论哪一种方法修改之后,都需要重启elasticsearch,然后再把索引的 read_only_allow_delete 设置为false,采用一中的方法中的任意一种即可,更改后再查看索引的信息,如图,read_only_allow_delete配置没有了,表示以及设置成功了。

解决:ElasticSearch ClusterBlockException[blocked by: [FORBIDDEN/12/index read-only / allow delete (api

简记

使用SkyWalking用ES做存储,发现运行一段时间会提示ElasticSearch ClusterBlockException[blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];

本以为是ES所在的系统出现磁盘满了的问题,简单查看发现还有10G左右空间,占用95%的磁盘,删除后已用磁盘空间降至40%,但问题依然存在,

尝试重启单节点的ES,使用Kibana连接时同样报出了上边的提示,所以怀疑不是SkyWalking的ES客户端的问题,把目光定位在ES的索引上

经过尝试,最后使用以下命令解决,遂记之。

curl -XPUT -H "Content-Type: application/json" http://10.2.7.70:9204/_all/_settings -d '"index.blocks.read_only_allow_delete": null'

测试环境用的单节点ES,IP请自行切换,一般使用协调节点就可以设置整个ES集群了。

以上是关于index [XXX] blocked by: [FORBIDDEN/12/index read-only / allow delete (api)]问题解决的主要内容,如果未能解决你的问题,请参考以下文章

跨域报错解决方案Access to XMLHttpRequest at ‘http://xxx.com/xxx‘ from origin ‘null‘ has been blocked by

解决升级Chrome浏览器之后出现跨域错误:Access to xxx has been blocked by CORS policy: XXXX

Access to XMLHttpRequest at 'XXX' from origin 'XX' has been blocked by CORS policy:

Elasticsearchindex [index] blocked by: [TOO_MANY_REQUESTS/12/index read-only / allow delete (api)](代

解决升级Chrome浏览器之后出现跨域错误:Access to xxx has been blocked by CORS policy: XXXX

解决:ElasticSearch ClusterBlockException[blocked by: [FORBIDDEN/12/index read-only / allow delete (api