无论才能、知识多么卓著,如果缺乏热情,则无异纸上画饼充饥,无补于事。

es2.3.1集群各节点gc情况不一致

Elasticsearch | 作者 wengqiankun | 发布于2017年05月17日 | 阅读数:5786

es2.3.1集群各节点gc情况不一致

集群情况:
CentOS release 6.5
jdk1.8.0_65
cms gc
五个节点都是16c 16g;节点 堆内存配置为8g
索引:一份1.36G大小的索引;3个shard,4 个备份
elasticsearch.yml中 discovery.zen.ping.unicast.hosts 统一配置为 [ip1, ip2, ip3, ip4, ip5], 各节点的这个配置顺序一致
 
目前的现象是:
集群上次重启以来已运行19天:
ip1, ip2 
full gc 16次, 每次full gc后
used内存不到300M
metaspace和class space的used也基本不变
ip3, ip4, ip5  
full gc22次, 每次full gc后,
used内存都会上升,到现在used内存 已经大于2.5G;
metaspace 52M   --> 250M+
class space 6M --> 50M+
 
上一次重启 就是因为频繁的full gc导致es查询效率极低导致;
目前只知道以上现象,但是 不知道是什么原因,也不知道如何下手查找原因?
请大神帮忙分析一下原因或者提供一些寻找原因的思路
 
已邀请:

wengqiankun - es新手

赞同来自:

根据heap dump找到原因了  https://github.com/elastic/ela ... 18079

medcl - 今晚打老虎。

赞同来自:

把监控装起来

Yuna - Elasticsearch兼职新司机

赞同来自:

补充M大的监控建议,除了bigdesk还可以使用HQ,虽然他们都是没有存储的功能。HQ其中有一个功能比较不错,可以分析你的集群节点的一些运行指标。看是否达到阈值,会给你提示。可以到HQ网站了解一下。
 
你说的GC问题,希望你能提供多一些数据给大家进行分析。比如节点数,索引的大小,mapping的信息,JVM的配置,然后访问量等一些情况。 这样我们能够从侧面的给出一些建议。
 
在没有这些数据提供 之前,请问你们是否有聚合操作? 或者大量的wildcardQuery 查询?是否启用dov value特性?

要回复问题请先登录注册