我刚刚获得了一个服务器,其具有:
2 个四核 Xeon
48G ECC 内存
LSI 9260-8i 上有 5 个 160GB SSD
在部署目标平台之前,我想收集尽可能多的基准数据,测试各种配置的硬件 RAID、ZFS zRAID 的 I/O,以及 vSphere 和 KVM 虚拟化的 I/O 性能。为了查看没有缓存影响的实际磁盘 I/O 性能,我尝试运行 Iozone,其最大文件大小是文档中推荐的物理 RAM 的两倍以上,因此:
iozone-a-g100G
然而,正如人们所预料的那样,这需要太长时间,不切实际。(我在七个小时后停止了跑步......)
我希望将记录和文件大小的范围缩小到可以反映应用程序服务器实际性能的值,希望将运行时间缩短到一小时左右。
有任何想法吗?
谢谢。
答案1
对于具有如此多 RAM 的服务器,direct-IO 标志是您的好帮手。该-I
标志如下:
-I Use VxFS VX_DIRECT, O_DIRECT,or O_DIRECTIO for all file operations
这将告诉它不要缓存块或文件,并等待存储系统表示写入已完全提交后再继续。性能会比使用块缓存时更差,这是可以理解的,但至少您的测试运行将在合理的时间内完成,并且您可以对每个存储配置进行相对比较。
答案2
我不清楚你的问题到底是什么。如果是有关 iozone 本身的问题,那么很抱歉,我没有什么其他可以补充的了。
否则,如果您还在寻找其他工具来收集基准基准统计数据——您是否考虑过尝试 iometer?除了严格的磁盘测试之外,它还允许您捕获网络 IO 性能特征,并可在多个平台上运行。
您是否还会监控 ESX 本身的性能?那么,您将查看 esxtop,它将向您显示 CPU、中断、内存、网络、磁盘接口、磁盘 VM 和电源管理统计数据。