一、可能导致ES CPU高的原因:

1、复杂的query查询

举例:我这边出现过200个组合wildcard query导致集群down掉的情况;

2、有大量的reindex操作

3、ES版本较低

二、排查思路

1、业务场景排查

问自己几个问题?

  • 1)集群中数据类型是怎么样的?
  • 2)集群中有多少数据?
  • 3)集群中有多少节点数、分片数?
  • 4)当前集群索引和检索的速率如何?
  • 5)当前在执行哪种类型的查询或者其他操作?

2、建议Htop观察,结合ElaticHQ 观察CPU曲线

3、CPU高的时候,建议看一下ES节点的日志,看看是不是有大量的GC。

4、查看hot_threads。

GET _nodes/hot_threads::: {test}{ikKuXkFvRc-qFCqG99smGg}{VE-uqoiARoONJwomfPwRBw}{127.0.0.1}{

收藏 打印