![在服务器和存储上测量的不同 IOP](https://linux22.com/image/680166/%E5%9C%A8%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%92%8C%E5%AD%98%E5%82%A8%E4%B8%8A%E6%B5%8B%E9%87%8F%E7%9A%84%E4%B8%8D%E5%90%8C%20IOP.png)
我有这种奇怪的行为,我无法向自己解释 - 希望这里有人可以解释。
我们收到了一些服务器(硬件)并安装了 NFS 驱动器。我们计划使用这些服务器作为 Splunk 索引器,但由于 Splunk 不建议使用 NFS 作为存储,因此我们想先进行一些性能测试。
因此,我运行了 Bonnie++,结果非常糟糕(大约 300 IOP/s),但存储人员告诉我,他们那边的结果大约为 1200 IOP/s,这没问题。这怎么可能呢 - 我该怎么做才能在服务器上获得这种性能?
答案1
http://veerapen.blogspot.com/2011/09/tuning-redhat-enterprise-linux-rhel-54.html
简而言之:
在具有硬件 RAID 的系统上配置 Linux 调度程序并将默认值从 [cfq] 更改为 [noop] 可改善 I/O。
使用 nfsstat 命令计算读取/写入的百分比。设置 RAID 控制器缓存比率以匹配。
对于繁重的工作负载,您将需要增加 NFS 服务器线程的数量。
使用 no_delay 选项配置 nfs 线程以无延迟地写入磁盘。
告诉 Linux 内核尽快刷新,以便写入尽可能少。在 Linux 内核中,脏页写回频率可以通过两个参数控制。
为了加快磁盘写入速度,请使用 filesystem data=journal 选项并阻止更新文件访问时间,这本身会导致将更多数据写入磁盘。当需要同时从磁盘读取和写入数据时,此模式是最快的,它优于所有其他模式