在我的ubuntu机器上,当我运行命令curl -X GET 'http://localhost:9200'
来测试连接时,它显示以下消息。 curl: (7) Failed to connect to localhost port 9200: Connection refused
当我用sudo systemctl start elasticsearch
检查服务器状态时,它显示以下消息。
● elasticsearch.service - Elasticsearch
Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Sun 2016-11-20 16:32:30 BDT; 44s ago
Docs: http://www.elastic.co
Process: 8653 ExecStart=/usr/share/elasticsearch/bin/elasticsearch -p ${PID_DIR}/elasticsearch.pid --quiet -Edefault.path.logs=${LOG_DIR} -Edefa
Process: 8649 ExecStartPre=/usr/share/elasticsearch/bin/elasticsearch-systemd-pre-exec (code=exited, status=0/SUCCESS)
Main PID: 8653 (code=exited, status=1/FAILURE)
Nov 20 16:32:29 bahar elasticsearch[8653]: 2016-11-20 16:32:25,579 main ERROR Null object returned for RollingFile in Appenders.
Nov 20 16:32:29 bahar elasticsearch[8653]: 2016-11-20 16:32:25,579 main ERROR Null object returned for RollingFile in Appenders.
Nov 20 16:32:29 bahar elasticsearch[8653]: 2016-11-20 16:32:25,580 main ERROR Unable to locate appender "rolling" for logger config "root"
Nov 20 16:32:29 bahar elasticsearch[8653]: 2016-11-20 16:32:25,580 main ERROR Unable to locate appender "index_indexing_slowlog_rolling" for logge
Nov 20 16:32:29 bahar elasticsearch[8653]: 2016-11-20 16:32:25,581 main ERROR Unable to locate appender "index_search_slowlog_rolling" for logger
Nov 20 16:32:29 bahar elasticsearch[8653]: 2016-11-20 16:32:25,581 main ERROR Unable to locate appender "deprecation_rolling" for logger config "o
Nov 20 16:32:29 bahar elasticsearch[8653]: [2016-11-20T16:32:25,592][WARN ][o.e.c.l.LogConfigurator ] ignoring unsupported logging configuration
Nov 20 16:32:30 bahar systemd[1]: elasticsearch.service: Main process exited, code=exited, status=1/FAILURE
Nov 20 16:32:30 bahar systemd[1]: elasticsearch.service: Unit entered failed state.
Nov 20 16:32:30 bahar systemd[1]: elasticsearch.service: Failed with result 'exit-code'.
这是elasticsearch.yml(etc / elasticsearch / elasticsearch.yml)中PATH和LOgs的错误
取消选中这些路径,您的错误将被删除。
这意味着elasticsearch没有运行。从我看到的,启动它有一个问题。检查您的elasticsearch配置。
检查Elasticsearch是否正在运行,运行以下命令:
$ ps aux|grep elasticsearch
如果Elasticsearch未启动,请检查您的JAVA环境,下载新的Elasticsearch并重新安装:
1.检查JAVA是否正确安装:
$ java -version
java version "1.8.0_101"
Java(TM) SE Runtime Environment (build 1.8.0_101-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)
如果您的JAVA版本低于1.7,请更换新版本。
2.download Elasticsearch安装包,解压缩:
$ tar -zxvf elasticsearch-2.3.3.gz
3.运行Elasticsearch
$ cd elasticsearch-2.3.3
$ ./bin/elasticsearch
通常它是日志目录的写权限问题(默认为/ var / log / elasticsearch),使用ls -l
检查权限,并在必要时将模式更改为777以获取日志目录和文件。
长话短说:系统重启可能会好起来的。
问这个问题已经有一段时间了。无论如何,我最近遇到了类似的问题。
我的一个节点上的elasticsearch服务死了,错误说的类似于重启服务时在问题中发布的错误。它说要写的日志文件夹是只读文件系统。但是这些文件和目录确实归用户elasticsearch(版本5.5,部署在Cent OS 6.5上)所有,不应该有只读问题。
我查了一下,没找到线索。所以,我只是重启系统。重新启动后,一切都运行良好,无需进一步调整:elasticsearch服务在启动时按配置启动,它会找到群集和所有其他节点,并且群集运行状况状态会在一段时间后变为绿色。
我想,根本原因可能是我的情况下出现了一些硬件故障。由elasticsearch集群管理的所有数据和日志都存储在每个节点上安装的2TB SSD驱动程序中。我们的硬件团队最近刚刚从外部存储故障中恢复过来。在恢复期间重新启动所有节点。有可能是一些滞后的问题导致了这个问题。