linux软件raid10,机器相同,结果差异很大

我在两台相同的机器上拥有完全不同的软件raid10性能和行为.

我有两台硬件相同的机器,同时购买,具有相同的软件版本,硬件版本和固件版本.每个都有一个带有8 x 6 Gb / s通道的SAS控制器连接到SAS机箱,该机箱可容纳12个SAS磁盘.

在机器1上,它是稳定的并且似乎工作正常,raid阵列中的每个磁盘的行为大致相同:繁忙时间相等(生产负载级别中所有磁盘的大约33%),以及每周软件raid检查运行,写入和读取性能不会降低.完整的raid检查在大约一天内完成,使用所有可用的备用带宽尽快完成.在此检查完成时,这相当于大约200 MB /秒读取.

机器2是一个问题儿童.尽管配置为使用所有可用磁盘带宽,但完全raid检查基本上从未完成.在尝试检查时,它以5 MB /秒的速度运行,在此期间写入性能下降到大约30 MB /秒.另外,四个磁盘占35%,而其余磁盘平均占22%.

取消机器2上的raid检查后,写入速度恢复到大约160 MB /秒.

如果我使用dd测试每个单独的mpath设备,在机器1上我得到的每个驱动器的读取速度大约为145 MB /秒,最低速度为119 MB /秒,然后是127 MB.其余的都在145 MB /秒范围内.

在机器2上,我获得107 MB(x 3个磁盘)之间的速度,其余都高于135 MB /秒,一个磁盘的峰值为191 MB /秒(!).

我承认自己已经远离了我的舒适区,但我找不到任何证据可以得出结论.我还检查了两台机器上每个磁盘上的SMART统计数据,虽然所有磁盘上都存在相当数量的“读取更正”错误,但值与读取性能之间似乎没有相关性,繁忙的%差异之间也没有相关性.

我无法找到解释在一个盒子上对另一个盒子执行阵列RAID检查时性能不佳的原因.关于下一步调试这个的建议将不胜感激.

解决方法

我发现了问题.在软件阵列中的12个磁盘中的4个磁盘上禁用了写入缓存.

以下是我为缩小范围所做的工作:

我打破了阵列,并使用带有oflag = direct的dd来测试每个磁盘的写入速度.我发现繁忙%较高的那些也只能写入大约75 MB /秒,而所有其他的则可以为持续的1 GB和10 GB数据大小写入180 MB /秒.

但是,由于4个慢速磁盘彼此非常一致,我开始挖掘,并安装了sdparm以允许我摆弄SCSI参数页面.

一旦我看到WCE(写缓存启用)的认设置已打开,但这四个磁盘已将其关闭,我将其打开.写入速度上升到180 MB /秒标记,并且阵列现在以1 GB /秒的速率重建(这大约是这组磁盘可以使用此控制器执行的最大值.)

check命令是sdparm –get = WCE / dev / mapper / mpatha并为将来的用户设置sdparm –set = WCE –save / dev / mapper / mpatha.

此外,还节省了电源 – 这阻止了操作系统级缓存以保持速度,尽管oflag = direct仍然可以.

相关文章

/etc/sysctl.conf这个目录主要是配置一些系统信息,/etc/sys...
1.作用 useradd或adduser命令用来建立用户帐号和创建用户的起...
它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅...
不管是我们在安装软件还是监测软件的使用性能,我们都要随时...
装好Tomcat7后,发现除了本机能访问外界访问不了,岂有此理。...
修改防火墙配置需要修改 /etc/sysconfig/iptables 这个文件,...