Elasticsearch 服务经常宕机或被终止

Elasticsearch 服务经常宕机或被终止

我的网络服务器正在运行 ubuntu 14.10,带有 elasticsearch 1.5.0 和 java 1.7u55

由于某种原因,elasticsearch 服务经常出现故障,导致我的网站无法再供用户使用(使用带有 symfony 的 FOSElasticaBundle)。

我正在使用 systemctl 自动重启它,但我希望一劳永逸地解决问题。我觉得我的日志不够详细。作为管理服务器的新手,我需要一些帮助。

有人能帮我找出失败的原因吗?我可以在这里输出哪些正确的文件以更好地理解问题?

谢谢 !

我的 systemctl 状态显示:

elasticsearch.service - ElasticSearch
   Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled)
   Active: active (running) since Mon 2015-04-20 12:04:24 CEST; 1h 56min ago          <------------- Here it means restarted 1h56 ago. Why did it fail in the first place ?
 Main PID: 9120 (java)
   CGroup: /system.slice/elasticsearch.service
           └─9120 /usr/bin/java -Xms256m -Xmx1g -Djava.awt.headless=true -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingO...

在我的 journalctl 中,我有:

Apr 18 18:56:19 xx.ovh.net sshd[29397]: error: open /dev/tty failed - could not set controlling tty: Permission denied
Apr 20 13:52:45 xx.ovh.net sshd[9764]: error: open /dev/tty failed - could not set controlling tty: Permission denied

编辑:当我启动第一个搜索请求时它经常重新启动:

elasticsearch.service - ElasticSearch
   Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled)
   Active: activating (auto-restart) (Result: signal) since Tue 2015-04-21 12:27:43 CEST; 10s ago
  Process: 15618 ExecStart=/usr/share/elasticsearch/bin/elasticsearch (code=killed, signal=ABRT)
 Main PID: 15618 (code=killed, signal=ABRT)

答案1

好吧,由于声誉低,我无法发表评论,但一个 elasticsearch 实例至少需要 1.5 gB 才能舒适地运行,也许更多,具体取决于您的要求。默认情况下,elastic 占用 1 gB 内存,然后 lucene(ES 利用的搜索库)将占用一些其他内存来执行搜索。以下是 elastic 网站上的几个链接,关于管理内存并阻止您的进程因其内存使用而被 OOM 杀手杀死。

https://www.elastic.co/guide/en/elasticsearch/reference/current/setup-configuration.html#setup-configuration-memory

https://www.elastic.co/guide/en/elasticsearch/guide/current/_limiting_memory_usage.html

答案2

当下次发生这种情况时,请检查free - m并监控 Elasticsearch 日志/var/log/elasticsearch/your cluster name.log

相关内容