Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java elasticsearch无法启动_Java_Ruby On Rails_Ruby_Ruby On Rails 3_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch - Fatal编程技术网 elasticsearch,Java,Ruby On Rails,Ruby,Ruby On Rails 3,elasticsearch" /> elasticsearch,Java,Ruby On Rails,Ruby,Ruby On Rails 3,elasticsearch" />

Java elasticsearch无法启动

Java elasticsearch无法启动,java,ruby-on-rails,ruby,ruby-on-rails-3,elasticsearch,Java,Ruby On Rails,Ruby,Ruby On Rails 3,elasticsearch,当我运行命令启动elasticsearch时 /elasticsearch -f 给出了一系列错误,如 ElasticSearchIllegalStateException[未能获取节点锁,以下位置可写吗?:[/home/anish/elasticsearch/data/elasticsearch]] IOException[未能在/home/anish/elasticsearch/data/elasticsearch/nodes/49上获得锁定] IOException[Cannot c

当我运行命令启动elasticsearch时

/elasticsearch -f
给出了一系列错误,如

ElasticSearchIllegalStateException[未能获取节点锁,以下位置可写吗?:[/home/anish/elasticsearch/data/elasticsearch]]

IOException[未能在/home/anish/elasticsearch/data/elasticsearch/nodes/49上获得锁定]

  IOException[Cannot create directory: /home/anish/elasticsearch/data/elasticsearch/nodes/49]

不知道如何摆脱它..pl help

/etc/sysconfig/elasticsearch
中查找
ES\u USER
ES\u GROUP
的值--两者的默认设置都是
elasticsearch
。如果该用户无法写入数据目录,则您将看到此错误。由于数据目录似乎位于您的主目录下,这可能就是问题所在。您可以修改
ES_用户
ES_组
的设置,或更改数据目录的权限。

此错误可能有多种原因,Elasticsearch将其数据存储在文件系统中,其位置在
Elasticsearch.yml
中指定,并在启动Elasticsearch时,它检查是否可以将数据写入该位置,如果可以,则会获取该位置上的锁,以便其他进程无法写入该位置,从而防止数据丢失和损坏

此外,这取决于Elasticsearch的版本,在当前的主要版本7.X中,Elasticsearch更改了在同一台机器上有多个安装时写入同一位置的方式,在此之前,它使用
节点。max_local_storage_nodes
允许在同一台机器上进行多个安装

解决问题的技巧

  • 检查多个Elasticsearch进程是否正在运行,以及您是否打算这样做
  • 检查Elasticsearch是否具有对该位置的写入权限,如前一个答案中所述
  • 检查elasticsearch的版本,查看您是否使用了正确的配置

  • 在.deb包中的默认设置中,配置文件是/etc/default/elasticsearch,并且对ES_USER和ES_USER进行了注释,需要取消注释,以便守护进程启动时不会出现错误