无法启动elasticsearch服务

问题描述 投票:10回答:3

我试图在Windows 2008 R2服务器上启动Elastic Search服务,但它无法启动。它以前已经运行了几个月没有问题。

在服务中,我收到消息:

“Windows无法在本地计算机上启动Elasticsearch 1.7.2(ELASTIC_POC)。有关详细信息,请查看系统事件日志。如果这是非Microsoft服务,请与服务供应商联系,并参阅特定于服务的错误代码1”。

事件日志非常无用,显示以下错误:

“Elasticsearch 1.7.2(ELASTIC_POC)服务进入停止状态。”

“Elasticsearch 1.7.2(ELASTIC_POC)服务终止,服务特定错误函数不正确..”

我确实在Elastic Search自己的日志文件中获得了更多信息:

[2016-03-30 10:47:22] [info]  [ 3988] Running 'ELASTIC_POC' Service...
[2016-03-30 10:47:22] [info]  [ 3760] Starting service...
[2016-03-30 10:47:22] [error] [ 3760] Failed creating java C:\Progra~2\Java\jre1.8.0_60\bin\client\jvm.dll
[2016-03-30 10:47:22] [error] [ 3760] The system cannot find the path specified.
[2016-03-30 10:47:22] [error] [ 3760] ServiceStart returned 1
[2016-03-30 10:47:22] [error] [ 3760] The system cannot find the path specified.
[2016-03-30 10:47:22] [info]  [ 3988] Run service finished.
[2016-03-30 10:47:22] [info]  [ 3988] Commons Daemon procrun finished

检查C:\ Program Files(x86)\ Java \ jre1.8.0_60,它只包含一个名为“lib”的文件夹(为空)。有一个“jre1.8.0_73”文件夹,里面有几个文件,“包括\ bin \ client \ jvm.dll”

如何使Elastic Search使用后来的Java版本,或者恢复jre1.8.0_60文件夹的内容?我似乎无法找到(安全下载)安装程序..

任何帮助非常感谢。

elasticsearch windows-server-2008-r2
3个回答
21
投票

您的Java Runtime Environment很可能会自动更新。

这将打破Elastic Search,因为您有一个名为JAVA_HOME的环境变量,现在指向错误的位置。

首先,进入程序文件/ java并找到JRE的新文件夹。它可能是更晚的版本号。示例:代替jre1.8.0_73,可能是jre1.8.090或更高的数字加到最后。

相应地更新您的JAVA_HOME环境变量。

然后,在对弹性搜索文件进行适当备份后,在启用admin的命令提示符中,导航到弹性搜索bin文件夹。

键入以下命令

 service remove
 service install

然后,您可能想要进入services.msc并将服务从“手动启动”切换到“自动”或“自动延迟”

有人可能认为在更新JAVA_HOME环境变量之后重新安装服务是不必要的,但是我的安装是必要的。


3
投票

已解决,再次安装服务..

打开

{路径到弹性搜索} \ BIN \

在命令提示符下,

并运行

服务安装

它不允许我跑

服务删除,所以我现在如何列出两个弹性搜索服务,然而,这是一个测试服务器,所以这很好。


0
投票

对我来说,这是由更新Java后我的注册表中的问题引起的。似乎旧版本的服务安装程序硬编码注册表项中的java路径,而它们应该依赖于JAVA_HOME环境变量。

在注册表中找到以下项:HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Apache Software Foundation\Procrun 2.0\elasticsearch-service-x64\Parameters\Java\Jvm。如果它看起来像是jvm.dll的硬编码路径,请将值更改为%JAVA_HOME%\bin\server\jvm.dll并尝试启动该服务。


0
投票

只需按步骤执行以下步骤,然后弹性搜索安装将起作用:高级系统设置>>环境变量>>系统变量>>路径>>新建然后插入最新的java jdk路径。像这样:C:\ Program Files \ Java \ jdk-11.0.3 \ bin

© www.soinside.com 2019 - 2024. All rights reserved.