Ubuntu 16.04 安装 ElasticSearch 5.x,启动失败

Posted

技术标签:

【中文标题】Ubuntu 16.04 安装 ElasticSearch 5.x,启动失败【英文标题】:Ubuntu 16.04 install ElasticSearch 5.x, failed to start 【发布时间】:2017-04-28 12:05:25 【问题描述】:

在全新安装 Ubuntu 16.04 时,我使用后续步骤安装 ElasticSearch 5.0.1 或 5.0.2,但 ES 无法启动。有谁知道如何在 Ubuntu 16.04 或 14.04 上运行 ES 5.x?

    苏 add-apt-repository ppa:webupd8team/java apt-get 更新 apt-get 升级 apt-get install oracle-java8-installer java -版本 wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key 添加 - apt-get install apt-transport-https

    echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-5.x.list

    apt-get update && sudo apt-get install elasticsearch

    服务弹性搜索状态

Elasticsearch 5.x 无法在 Ubuntu 16.04 上启动。 有谁知道如何在 Ubuntu 16.04 或 14.04 上运行 ES 5.x?

我也通过这几个步骤尝试使用新版本的 Elasticsearch 5.1.1

    苏 apt-get purge elasticsearch apt-get 更新 apt-get 升级 apt-get install elasticsearch

--安装新版本elasticsearch 5.1.1

    现在,如果我检查状态,我会得到这个

服务弹性搜索状态

● elasticsearch.service - Elasticsearch 已加载:已加载(/usr/lib/systemd/system/elasticsearch.service;已禁用;供应商预设:已启用)

活动:不活动(死)

 Docs: http : / / www.elastic.co

Dec 09 22:49:49 elastic systemd[1]: 停止 Elasticsearch。

【问题讨论】:

还有持续的问题:在 ubuntu 16.04 上,ES 5.1 的连接不断下降。 ES 2 感谢您的评论。关键是如何解决这里提出的问题。我同意你的观点,2.x 和 1.x 版本在 Ubuntu 14th 和 16th 上运行良好。 您能否发布更清晰完整的状态格式输出?你检查过java没有因为内存不足而失败吗?检查dmesg。如果 ES 被杀死(您的 ES 状态中将有 signal 作为“原因”),请检查分配了多少堆。在 5.x 中。 ES 你可以编辑/etc/elasticsearch/jvm.option文件和修改#-Xms2g #-Xmx2g 我不关注你 (@user305883)。这是我运行 free -m total used free shared 时得到的buff/cache 可用 内存: 974 80 294 5 600 707 交换: 1021 0 1021 我对此持怀疑态度,并认为我无法找到这个问题的答案,但您的 (@user305883) 建议结果很好。感谢帮助。我将 /etc/elasticsearch/jvm.option -Xms2g-Xmx2g 更改为 #-Xms2g#-Xmx2g 并且在 service elasticsearch start ESUbuntu 16.04 上运行良好乙>。这是正确的答案。再次感谢。 【参考方案1】:

您是否尝试在 /etc/default/elasticsearch 中取消注释 START_DAEMON=true

【讨论】:

5.1.1 版本的 /etc/default/elasticsearch 中没有预定义选项 START_DAEMON=true。抱歉,这不是正确的答案。 相关讨论:discuss.elastic.co/t/cant-start-elasticsearch-with-ubuntu-16-04/…. 那个文件里没有那个字符串【参考方案2】:

我对此表示怀疑,并认为我无法找到这个问题的答案,但您 (@user305883) 的建议结果证明是一个好主意。感谢您的帮助。

运行此命令后,我在 ubuntu 终端上将 /etc/elasticsearch/jvm.option -Xms2g-Xmx2g 更改为 #-Xms2g#-Xmx2g

服务弹性搜索启动

ESUbuntu 16.04 上启动良好。

这是正确的答案。再次感谢@user305883。

【讨论】:

【参考方案3】:

对我来说,可行的解决方案是将 Open JDK 8 设置为默认 Java 版本。我使用java-9-oracle 作为默认版本,尽管卸载/重新安装并更改了 JVM 选项,ES 5.x 仍无法启动。同时,ES 2.3 与 Java 9 没有任何问题。

您可以通过使用更改 Ubuntu 中的默认 java 版本 sudo update-alternatives --config java 命令

【讨论】:

我遇到了同样的问题。谢谢。【参考方案4】:

我在 FreeBSD 10.x 和 11.x 上遇到了同样的问题 - 它帮助了相同的解决方案 - 内存 - 问题是 Elasticsearch 5.x 没有提供任何错误消息,没有错误日志......

【讨论】:

【参考方案5】:

FWIW, 我在 Ubuntu 更新后遇到了同样的问题。我的 Ubuntu Ubuntu 16.04.3 LTS, xenial

我有linux-image-extra-4.13.0-26

更新后我收到了linux-image-extra-4.13.0-31

由于某种原因,更新被破坏了。

我将内核恢复到以前的linux-image-extra-4.13.0-26,Elastic 又开始正常工作了。这里有更多关于https://discuss.elastic.co/t/elasticsearch-dead-recently-without-modify-anything/116839/2

我重新启动了 Ubuntu。

在重新启动期间,单击了Esc。进入 Grub。

在 Grub 中,选择 Advanced options 并选择以前的内核版本。

【讨论】:

以上是关于Ubuntu 16.04 安装 ElasticSearch 5.x,启动失败的主要内容,如果未能解决你的问题,请参考以下文章

ubuntu16.04快速安装LNMP

Ubuntu 16.04 安装 ssh

ubuntu16.04 安装 wxPython方法

安装Ubuntu16.04踩坑记录

Ubuntu16.04 + cuda8.0 + GTX1080安装教程

Ubuntu 16.04 安装 ElasticSearch 5.x,启动失败