lovelmh13/myBlog

ES 不允许修改操作

Opened this issue · 0 comments

若出现下图所示:

image

运行命令: curl -XPUT -H "Content-Type: application/json" http://localhost:9200/_all/_settings -d '{"index.blocks.read_only_allow_delete": null}'

或者在 kibana 的开发工具中运行:

PUT _settings
{
    "index": {
        "blocks": {
            "read_only_allow_delete": "false"
        }
    }
}

看到: {"acknowledged":true}% 就成功了

原因

这是由于ES新节点的数据目录 data 存储空间不足,导致从 master 主节点接收同步数据的时候失败,此时 ES 集群为了保护数据,会自动把索引分片 index 置为只读 read-only。

在我的硬盘还有 20G 和 7G 的时候都出现过该问题。但是只剩下 7G 空间的是时候,上述方法也不管用了,只好清理电脑腾出空间。

参考:

Elasticsearch error: cluster_block_exception [FORBIDDEN/12/index read-only / allow delete (api)], flood stage disk watermark exceeded

基于磁盘的分片分配