文件系统变为只读时的弹性搜索

Mar*_*her 11 elasticsearch

我们有一个3节点Elasticsearch集群,运行1.7.3.每个节点都是数据节点和主节点.昨晚,其中一台机器损坏了其文件系统,并以只读方式重新安装.从那时起,群集在插入时返回错误,例如

RemoteTransportException[[db06][inet[/IPREMOVED:9300]][indices:data/write/index]]; nested: IndexFailedEngineException[[messages_201503071849][1] Index failed for [message#586279]]; nested: FileNotFoundException[/data/nodes/0/indices/messages_201503071849/1/index/_1v70.fdx (Read-only file system)];
Run Code Online (Sandbox Code Playgroud)

有没有办法配置系统以更好地处理此错误(即,该节点将自己带出群集)?我们希望能够在这种情况下继续写入.

Ado*_*nis 1

实际上从几个地方(主要是ElasticSearch的论坛)看,Elastic节点似乎无法自行恢复此错误,更糟糕的是,集群会在发生故障时锁定自身。

发生这种情况的原因(来自这里):

ES没有自动关闭的原因是org.elasticsearch.env.NodeEnviroment保留了一个java.nio.file.FileStore,它永远不会通过定期调用isReadOnly()方法来监控。

请参阅同一篇文章了解 2 种可能的解决方案