我正在尝试计算磁盘子系统的 8K 页 I/O 容量。驱动器为 SATA 7200 RPM - 4 个驱动器,采用 RAID-5 配置。我不确定 SCSI 控制器,但服务器大约有 5 年历史了。
答案1
您需要了解的另一件事是顺序 I/O 请求与随机 I/O 请求的比率。这会在很大程度上影响 I/O 操作速度。对于旋转介质,100% 随机请求是 I/O 操作的下限,而 100% 顺序请求是上限。
此外,由于您将使用 RAID5,因此您的读/写百分比也会影响 I/O 操作。这可能会受到 RAID 卡的极大影响,因此除了“写入速度会比读取速度慢”之外,没有太多硬性的经验法则,而且即使这一点也可能被 RAID 卡上的智能缓存所破坏。
7.2K RPM 驱动器将在某个点达到 I/O 饱和,但是您的 RAID 卡在处理大量写入时可能在此之前就达到 CPU 饱和。
唯一能确定的方法就是测试。正如 Evan 所说,iometer 有着悠久的历史。我也用过碘效果不错。它不如 iometer 那么先进,但使用起来更简单一些。
答案2
答案3
我使用 sysbench 做过这种测试。我所做的是创建一个大型测试文件,比系统内存大几倍,并且只测试随机 IO 写入。这应该会给你一个有用的最坏情况指标。我会围绕该测试进行所有调整。由于缓存和读写流量的混合以及任何执行顺序 IO 的操作,实际性能应该比这更好。我肯定会围绕 IOPS 进行优化,因为我发现 IO 瓶颈比空间问题更难修复。
如果有机会,我会考虑将 4 磁盘 RAID 5 重新配置为 RAID 10,因为这通常会提供更好的写入 IO 性能。您可以用两种方式进行测试,以准确了解硬件在两种条件下的性能。
我的经验法则是 7.2k 驱动器可以增加约 150 IOPS,10K 可以增加约 200 IOPS,15k 可以增加 250 IOPS,尽管这可能有点乐观。每个镜像都为您提供额外的读取 IOPS,每个条带都为您提供额外的写入 IOPS。因此,例如,具有 7.2k 磁盘的 4 磁盘 RAID 10 可以为您提供最坏情况下高达 300 IOPS 的写入,但不会更多。RAID 5 的估计更复杂,因为它可能会根据写入的数据量以及实施中的任何快捷方式或优化而变化。在正常情况下,64k 条带上的 8k 写入最终会导致 4 磁盘 RAID 上的 5 IOPS,读取每个条带需要 3 个 IOPS,更新的数据条带和奇偶校验条带各需要 1 个 IOPS。我发现 RAID 5 上的写入 IOPS 大约是 RAID 10 中相同磁盘数量的一半,因此您的 4 磁盘 RAID 5 的随机写入 IO 最差情况可能为 150 IOPS,并不比单个磁盘好。