无法启动elasticsearch服务
问题描述:
我试图在Windows上启动elasticsearch。无法启动elasticsearch服务
ES 5.0.0, JDK 1.8.0.66, 的Windows 10
服务已正确安装,但无法启动。
D:\Softwares\Elastic_Project\elasticsearch-5.0.0\bin>elasticsearch-service install
C:\Program Files\Java\jdk1.8.0_66
Installing service : "elasticsearch-service-x64"
Using JAVA_HOME (64-bit): "C:\Program Files\Java\jdk1.8.0_66"
The service 'elasticsearch-service-x64' has been installed.
D:\Softwares\Elastic_Project\elasticsearch-5.0.0\bin>elasticsearch-service start
C:\Program Files\Java\jdk1.8.0_66
Failed starting 'elasticsearch-service-x64' service
日志
[2016-11-24 14:21:19] [info] [11120] Commons Daemon procrun (1.0.15.0 64-bit) started
[2016-11-24 14:21:20] [info] [11120] Starting service 'elasticsearch-service-x64' ...
[2016-11-24 14:21:20] [info] [11572] Commons Daemon procrun (1.0.15.0 64-bit) started
[2016-11-24 14:21:20] [info] [11572] Running 'elasticsearch-service-x64' Service...
[2016-11-24 14:21:20] [info] [ 5916] Starting service...
[2016-11-24 14:21:21] [info] [ 5916] Service started in 1487 ms.
[2016-11-24 14:21:21] [info] [11572] Run service finished.
[2016-11-24 14:21:21] [info] [11572] Commons Daemon procrun finished
[2016-11-24 14:21:23] [error] [11120] Failed to start 'elasticsearch-service-x64' service
[2016-11-24 14:21:23] [error] [11120] The data area passed to a system call is too small.
[2016-11-24 14:21:23] [info] [11120] Start service finished.
[2016-11-24 14:21:23] [error] [11120] Commons Daemon procrun failed with exit value: 5 (Failed to start service)
[2016-11-24 14:21:23] [error] [11120] The data area passed to a system call is too small.
我已经在系统变量加入JAVA_HOME。系统日志
The Elasticsearch 5.0.0 (elasticsearch-service-x64) service terminated with the following service-specific error:
Incorrect function.
任何帮助?
答
我有同样的问题。我可以通过查看日志文件找到问题的原因。 〜/ elasticsearch-5.2.1 /日志/ elasticsearch服务,x64.2017-02-20。它抱怨“创建java%JAVA_HOME%\ jre \ bin \ server \ jvm.dll失败”。因此,我将环境变量中的JAVA_HOME重置为系统变量(不是用户变量),并将其解析。
答
在具有Java 1.7的系统上的Windows 7中,然后升级到Oracle Java 1.8 SDK(jdk-8u45-windows-x64.exe)时,系统JAVA_HOME与elasticsearch管理器中的JAVA_HOME不同,而Java在路上。此外,elasticsearch服务安装失败,因为该系统没有装载Java 8
设置系统JAVA_HOME正确的文件夹:
- 打开Windows资源管理器 超级 + Ë
- 右键单击我的电脑
- 选择高级系统设置
- 选择环境变量
- 选择JAVA_HOME
- 编辑JAVA_HOME以将值更改为正确的根文件夹,例如
C:\Progra~1\Java\jre1.8.0_45
- 确定两次
检查JAVA_HOME设置和java的工作原理:
java -version
echo %JAVA_HOME%
如果失败则eleasticsearch-service install
将无法正常工作。 要修复在DOS提示符:
set JAVA_HOME=C:\Progra~1\Java\jre1.8.0_45
path=C:\Program Files\Java\jdk1.8.0_45\bin;%path%
检查Elasticsearch经理JAVA_PATH值,如果需要修复它。从DOS提示符处打开管理器程序:
- 从DOS提示符下运行
elasticsearch-service.bat manager
。 - 单击Java选项卡
- 上单击......按钮的
%JAVA_HOME%\bin\server\jvm.dll
- 的权利,如果需要选择正确的JRE文件夹或手动设置的值,例如
C:\Program Files\Java\jdk1.8.0_45\jre\bin\server\jvm.dll
- 点击应用
- 选择常规选项卡
- 点击开始
- 点击OK关闭Elasticsearch经理
删除并重新添加可在elasticsearch服务需要:
使用设置在设置\ elasticsearch.yml检查它正在运行在浏览器elasticsearch-service.bat remove
elasticsearch-service.bat install
打开elasticsearch:
此[SO](HTTP ://*.com/questions/28624943/cannot-start-service-after-elasticsearch-upgrade-from-1-4-1-to-1-4-4)可能会有所帮助。 – Kulasangar