今天在跑性能的时候,发现4台存储中有一台存储的性能特别慢,其他都能达到90MB/s,就它一个只有几M/s。单独测试它,发现只有50MB/s,如下图
另外三台存储单独测试,能达到100MB/s,正常值
而且这里还发现一个情况,4台存储都在运行时,其他三台存储load average均很小。但是第4台存储压力较大,如下图
1、首先怀疑第4台存储上的程序不对,查看日志,发现
chunk_0000000000024D77_00000002.ufs - crc error
显示是crc错误,怀疑是硬盘坏了,但是查看所有的硬盘信息,均是online且正常
2、其次怀疑客户端压力太大(2客户端),但是把客户端压力降下来之后,性能还是很差
排错无法进行下去了,喝口水先。。。。回来后,用megacli查看磁盘组信息,忽然发现如下图
注意“current cache policy”一栏,writethrough。。。再到另外3台存储上看缓存策略,如下
终于看到曙光了,修改缓存策略。如下两个图
修改成功后,用dd查看,发现速度果然达到100MB/s。。。。
总结:由此可见,WB和WT策略对于读写的性能是多么大,应该是之前建RAID的时候没有设置好导致的。也难怪,直写磁盘当然没有中间加个缓存速度快了。希望后人引以为戒啊。。。。
本文转自 taojin1240 51CTO博客,原文链接:http://blog.51cto.com/taotao1240/686205,如需转载请自行联系原作者