张杰部落格
博客信息

SolrCloud负载不均衡导致的IO瓶颈问题

发布时间:『 2021-08-14 19:37』  博客类别:Solr/ES  阅读(55) 评论(0)

SolrCloud是在三台机器上搭建的分布式索引,有三个索引集合,每台机器一个shard。

鍥剧墖.png

最近发现一个索引集合(itdaan)出现搜索很慢,试图查找原因。如是分别查看三台机器的请求数量。发现192.168.0.37的请求数量高于两外两台机器,但是三个shard的数据又分配比较均匀。花了两个周末,到现在也没找出问题所在。访问SolrCloud我是交由Solr本身自己的负载均衡,理论上不应该出现该问题。既然找不到原因,那我就先看看37为什么慢,看看是不是服务器本身的问题了。

1,请求数量(netstat -nat | grep -i "8983" | wc -l)

分别为 54  33  29

37这台机多一些,也没多太多。

2、查看机器的iowait(iostat -x 1)

(1) 192.168.0.37

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          21.29    0.00    6.93   83.37    0.00   0.00

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
vda               0.00     0.00  930.00    0.00 151540.00     0.00   325.89     2.46    2.70    2.70    0.00   0.24  22.00

(2) 192.168.0.36

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           9.00    0.00    3.50   11.50    0.00   76.00

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
vda               0.00     0.00  890.00    0.00  6644.00     0.00    14.93     1.76    2.00    2.00    0.00   0.04   4.00

(3)192.168.0.38

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          11.06    0.00    2.01    7.54    0.00   79.40

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
vda               0.00     0.00  183.00    0.00   988.00     0.00    10.80     0.22    1.22    1.22    0.00   0.05   0.90

从上面可以看出iowait的值,37明显比其它两台机器的高,也就是说CPU很多资源都在等待io的读取权限;所以也就不奇怪cpu负载很高了,也就导致很多请求很慢。

还注意到一个很重要的指标就是rKB/s,其它两台机器的值都很低,而37却有几乎有147m/s的吞吐!一个小小的solr能搞出这么大的io负载,也是醉了。


为什么Solr会有如此高的IO呢?问题到底发生在哪里。因为我已经试图改变过访问方式,已经可以排除没有使用负载均衡的方式访问Solr。





关键字:   solrcloud  

上一篇:windows 10 hyper-v 挂载物理磁盘

下一篇:没有了

评论信息
暂无评论
发表评论
验证码: 
Powered by IMZHANGJIE.CN Copyright © 2015-2021 粤ICP备14056181号