我的web服务器运行ubuntu 14.10与elasticsearch 1.5.0和java 1.7u55
由于某种原因,elasticsearch服务经常停止,导致我的网站不再提供给我的用户(使用带有symfony的FOSElasticaBundle)。
我正在使用systemctl自动重新启动,但我宁愿一劳永逸一个很好的修复。 我觉得我所拥有的logging不够具有描述性。 对于pipe理服务器来说很新,我需要一些帮助。
有人能帮我弄清楚这个失败的原因吗? 我可以在这里输出什么正确的文件来更好地理解这个问题?
谢谢 !
我的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...
在我的日记中,我有:
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
编辑:它经常重新启动时,我启动第一个search请求:
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)
那么,由于低代表我不能评论,但一个elasticsearch实例需要至less1.5 GB的舒适运行,也许更多的取决于你问的东西。 默认情况下,弹性需要1 GB的内存,然后lucene(ES利用的search库)将占用一些其他内存来执行search。 以下是弹性站点关于pipe理内存的一些链接,以及由于其内存使用而阻止OOM杀手杀死进程的过程。
https://www.elastic.co/guide/en/elasticsearch/guide/current/_limiting_memory_usage.html
当下一步发生时,请检查free - m并监视/var/log/elasticsearch/your cluster name.log的Elasticsearch日志。 – 呃,这应该是一个评论,但Android应用程序使它成为一个答案…