2014-04-30 55 views
1

我对Elasticsearch相当陌生,而且遇到了一些难以解决的问题。我的Elasticsearch(1.1.1)目前正在追加cpu,即使没有搜索或索引正在进行。 CPU使用率并不总是在100%,但是它有很大的提升并且负载非常高。Elasticsearch CPU空闲时高

以前,这个节点上的索引在没有任何问题的月份内运行得很好。今天刚刚开始,我不知道是什么原因造成的。

即使重新启动ES后,问题仍然存在,我甚至在纯粹的绝望中重新启动服务器。对问题没有影响。

以下是一些帮助解决问题的统计数据,但我想可能还有更多需要的信息。我只是不确定要提供什么。

Elasticsearch 1.1.1
的Gentoo Linux 13年3月12日
Java版本 “1.6.0_27”
OpenJDK的运行时环境(IcedTea6 1.12.7)(Gentoo的建立1.6.0_27-B27)
OpenJDK的64位服务器VM(构建20.0-B12,混合模式)

一个节点,5个碎片,0副本

上系统

32GB RAM,16GB专用于Elasticsearch
RAM不出现至b这里的问题。

任何提示解决这个问题,将不胜感激。

编辑:从顶部的信息,如果它是有帮助的。

top - 19:56:56 up 3:22, 2 users, load average: 10.62, 11.15, 9.37 
Tasks: 123 total, 1 running, 122 sleeping, 0 stopped, 0 zombie 
%Cpu(s): 98.5 us, 0.6 sy, 0.0 ni, 0.7 id, 0.2 wa, 0.0 hi, 0.0 si, 0.0 st 
KiB Mem: 32881532 total, 31714120 used, 1167412 free, 187744 buffers 
KiB Swap: 4194300 total,  0 used, 4194300 free, 12615280 cached 

    PID USER  PR NI VIRT RES SHR S %CPU %MEM  TIME+ COMMAND                     
2531 elastic+ 20 0 0.385t 0.020t 3.388g S 791.9 64.9 706:00.21 java 
+0

你可以给我们更多的细节,如你的htop日志? – eliasah

+0

添加顶部信息(没有安装htop)。让我知道你还有什么想看的东西。 –

+1

Lucene做了一些我知道的背景合并。我会看看CPU高电平时是否可以进行线程转储,也许你可以看到可能会占用CPU。否则,我会发布到ES组。 – Andy

回答

2

正如Andy Pryor所说,后台合并可能是导致问题的原因。我们的指数翻转已经暂停,我们目前的两个指数超过200GB。滚动他们似乎已经解决了这个问题,我们一直在哼着歌。

编辑: 当看似空闲时的高负荷被确定是由几个非常大的指数合并引起的,这些指数并没有每周滚动。这是内部流程每周都要推出索引的失败。在解决这个问题后,合并时间缩短,高负荷消退。

+0

这不是一个答案!它看起来更像是@Andy Prior写过 – eliasah

+0

的澄清答案。 –