本文主要介绍为广大服务器和存储厂商采用的磁盘性能测试工具 iometer 在 Linux 和 Windows 平台上的安装使用和测试方法,并且对典型测试应用的参数配置给出建议,可供相关测试人员参考。
>1 软件介绍
>Iometer 是对存储子系统的读写性能进行测试的软件。可以显示磁盘系统的最大 IO 能力、磁盘系统的最大吞吐量、CPU使用率、错误信息等。用户可以通过设置不同的测试的参数,有存取类型(如sequential ,random)、读写块大小(如64K、256K),队列深度等,来模拟实际应用的读写环境进行测试。Iometer操作简单,可以录制测试脚本,可以准确有效的反映存储系统的读写性能,为各大服务器和存储厂商所广泛采用。
>Iometer主要有两个版本:
>(1)iometer-2006_07_27.linux.i386-bin.tgz
>dynamo主要是安裝在 Linux下的,也是iometer 主要在跑的程序.
>(2)iometer-2006.07.27.win32.i386-setup.exe
>iometer只要是安裝在 windows下的,不负责运行只提供操作介面和显示执行结果。
>2 安装软件
>安装dynamo:
>基本上将iometer-2006_07_27.linux.i386-bin.tgz 解压缩就可以使用。
>iometer_computer_name:运行iometer计算机的名称或 IP,通常是windows;
>manager_computer_name:运行dynamo计算机的名称或 IP,通常是linux;
>安装iometer:
>在windows机器上双击 iometer-2006.07.27.win32.i386-setup.exe,按照提示默认安装。
>3 使用Iometer
>首先在 Windows 机器上运行程序:开始->所有程序->Iometer2006.07.27->iometer,然后在 Linux 机器上运行命令:./dynamo –i 10.40.179.65 –m 10.40.179.113。这样在windows上的管理界面中就可以看到 Linux机器上的运行代理。
>可以看到HA-B也就是 Linux机器的主机名被添加到manager中。Topology显示了所有manager(dynamo副本)的层次化结构以及所有激活的worker(每个dynamo副本的线程数,跟CPU核心有关)。
>Disk Targets 面板
>Targets:
>显示了 dynamo所在主机的不同分区,在windows上就是C、D,在Linux上就是 sda,sdb等;
>Maxium Disk Size:
>设置每个worker使用的扇区数,默认每扇区 512 字节;
>Starting Disk Sector:
>设置每个worker使用的起始扇区;
># of Outstanding I/Os:
>模拟测试多个应用向 IO 请求读写,默认是 1。通常不用这个参数,除非是用在 NAS/SAN 上面。此参数和”Test Setup”面板上的Cycling Options 有关。
>Access Specification 面板
>在右侧Global Access Specifications 列出了常用的 IO参数,用户可以直接选中添加到左侧使用,也可以双击或点击 Edit自定义参数,弹出界面如下:
>Transfer Request Size:
>设置传输块大小,这个参数值越大则 IOPS就越小。
>Percent Random/Sequential Distribution:
>设置读写数据的随机性,即顺序 I/O 和随机 I/O 的占用比例。要得到较高的 IO 性能当然要选100%顺序。
>Percent Read/Write Distribution:
>设置读写方式,即读和写在 IO中的占用比例。硬盘的读性能要比写性能好,所以 100%读可以得到较高的性能数据。
>Test Setup 面板
>Run Time:
>设置测试运行时间
>Ramp Up Time:
>一些高级的 RAID 系统通常会有一块 RAM 当做 IOcache,为避免开始得到的数据来自于这些cache,系统会将这个参数设置的时间不列入最后的性能计算,以便得到真正的 IO值。
>按下就可以开始测试了,结果在 Results Display面板显示。
>Results Display 面板
>Results Since:
>分为两种, Start of Test表示查看iometer在多种参数下跑过的平均值和总和; Last Update表示只看这一次的结果不和前次比较;
>Update Frequency(seconds):
>设置测试时数据显示刷新频率,通常设为1基本为实时查看,最右边为无穷大表示测试完成后再查看数据;
>Total I/Os per Second:
>每秒IO数的平均值,它和 transfer request size有关,反比关系
>Total MBs per Second:
>每秒传输的数据量,提高性能可以将transfer request size增大并且为100%顺序读。
>Average I/O Response Time:
>平均IO响应时间
>Maxium I/O Response Time:
>最大IO响应时间
>测试完成后结果会保存在csv文件以便处理。
>4 测试模式分析
>最大IO处理能力测试,建议使用:
>transfer request size为512bytes;
>percent random/sequential distribution为100%顺序;
>percent read/write distribution为1