ElasticSearch search queen size is too high
我们有两个ElasticSearch集群用于提供文档索引和搜索服务,其中一个20个结点的大集群用于存储全量数据,一个12个结点的小集群用于存储近一个周数据,ES2即该小集群。
1 问题描述
ES2-1 CPU负载偏高,search队列积压,集群查询速度过慢。
1.1 CPU负载偏高,search队列积压
ES2-1
ES2-1 search queue size较其他节点偏高。
ES2-2
1.2 查询速度
查询在50s以上
1.3 后台日志
2月4日起,indexing和search slowlog量增大。
es_peony_sindex2_index_indexing_slowlog.log.2016-02-14
es_peony_sindex2_index_search_slowlog.log.2016-02-14
2 解决方案
下架ES2-1,杀掉该节点ES进程。
2.1 查询速度
3 事后分析
- 重启ES2-1不能解决问题,重启后待数据均衡,该节点依然成为瓶颈,故考虑暂时下架处理。
- 青云表示物理主机cpu负荷正常,系该虚拟主机内部进程有关。
- 猜测可能与批量新索引创建导致队列阻塞。2月4日后开始出现indexing_slowlog。
4 Fixed!
2月17日晨,格式化ES2-1的磁盘,当作全新结点重新启动ES,恢复正常。
参考
http://kibana.logstash.es/content/elasticsearch/performance/cluster-state.html