2016-11-24 498 views
0

我試圖在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. 

任何幫助?

+0

此[SO](HTTP ://stackoverflow.com/questions/28624943/cannot-start-service-after-elasticsearch-upgrade-from-1-4-1-to-1-4-4)可能會有所幫助。 – Kulasangar

回答

0

我有同樣的問題。我可以通過查看日誌文件找到問題的原因。 〜/ elasticsearch-5.2.1 /日誌/ elasticsearch服務,x64.2017-02-20。它抱怨「創建java%JAVA_HOME%\ jre \ bin \ server \ jvm.dll失敗」。因此,我將環境變量中的JAVA_HOME重置爲系統變量(不是用戶變量),並將其解析。

2

在具有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正確的文件夾:

  1. 打開Windows資源管理器 超級 + Ë
  2. 右鍵單擊我的電腦
  3. 選擇高級系統設置
  4. 選擇環境變量
  5. 選擇JAVA_HOME
  6. 編輯JAVA_HOME以將值更改爲正確的根文件夾,例如C:\Progra~1\Java\jre1.8.0_45
  7. 確定兩次

檢查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提示符處打開管理器程序:

  1. 從DOS提示符下運行elasticsearch-service.bat manager
  2. 單擊Java選項卡
  3. 上單擊......按鈕的%JAVA_HOME%\bin\server\jvm.dll
  4. 的權利,如果需要選擇正確的JRE文件夾或手動設置的值,例如 C:\Program Files\Java\jdk1.8.0_45\jre\bin\server\jvm.dll
  5. 點擊應用
  6. 選擇常規選項卡
  7. 點擊開始
  8. 點擊OK關閉Elasticsearch經理

刪除並重新添加可在elasticsearch服務需要:

使用設置在設置\ elasticsearch.yml檢查它正在運行在瀏覽器
  • elasticsearch-service.bat remove
  • elasticsearch-service.bat install

打開elasticsearch:

http://localhost:9200/