无法在Mac上启动ElasticSearch

Nik*_*nko 6 elasticsearch

我安装elasticsearchbrew install elasticsearch,并开始了它brew services start elasticsearch,但是,curl http://127.0.0.1:9200表演connection refused。我检查了口:netstat -a -n | grep tcp | grep 9200有的ipv4正在运行那里。好的,所以我打开/usr/local/etc/elasticsearch/elasticsearch.yml了端口并将其更改为9300,也取消了注释并更改了:network.host: 127.0.0.1。还在显示connection refused我什么时候做curl http://127.0.0.1:9300。该OSMacOS High Sierra 10.13.4。如果打开/usr/local/var/log/elasticsearch/elasticsearch_nikitavlasenko.log,错误似乎是:

数据路径[/ usr / local / var / lib / elasticsearch / elasticsearch_nikitavlasenko]中存在群集名称[elasticsearch_nikitavlasenko]子目录。这些路径下的所有数据必须在一个目录中上移到路径[/ usr / local / var / lib / elasticsearch]

xer*_*raa 14

您之前是否安装了旧版本(2.x或更早版本)?听起来很像这个PR,当路径中有节点名称时,检查您是否没有使用旧的行为

我会做什么:

  • 如果您不再需要数据,只需删除/usr/local/var/lib/elasticsearch/elasticsearch_nikitavlasenko并重新开始。
  • 如果需要数据,则可以更改path.data配置或将文件夹上移一级(就像日志消息中所述)。

PS:我不会将端口9300用于HTTP,因为通常这是用于集群本身中节点通信的端口。

  • 我刚才有同样的问题。结果发现配置文件指向数据路径的`/usr/local/var/lib/elasticsearch`,但包创建了目录`/usr/local/var/lib/elasticsearch/elasticsearch_USERNAME`。由于该 `elasticsearch_USERNAME` 目录在那里,它无法启动。我按照您的建议简单地删除了“elasticsearch_USERNAME”目录,从而解决了该错误。 (2认同)

Aar*_*ron 3

这是 Elasticsearch 的 Homebrew 公式中的错误造成的。它正在创建一个具有 Elasticsearch 不再允许的节点名称的目录。

该公式已更新,以从 path.data 中删除节点名称,并且不再创建无效目录,这应该可以解决此问题。