Iometer简介

IO Meter是Intel开发的用来测试磁盘和网络I/O性能的软件,在目前测试磁盘系统性能中很常用。在IO Meter中用户可以自行设置进行读写或者写入测试的数据块和队列深度等参数,来进行磁盘最大I/O性能、最大数据吞吐量等指标的测试。还可以通过对参数的不同设置,来模拟磁盘系统在WebServer(网站服务器)、FileServer(文件服务器)和OLTP(OnLine Transaction Processing,在线交易处理)服务器等真实环境中的读写性能。

Iometer版本

Iometer历史版本

2003.xx.xx

2004.07.30

以前的性能测试在此版本上进行

2006.07.27

无法测试蓝鲸

2008.06.22-rc2(目前最新)

以后性能测试在此版上本测试

2008以前版本下载地址:www.iometer.org

2008版下载地址http://sourceforge.net/project/showfiles.php?group_id=40179

Iometer工作原理

Iometer分为控制台和客户端。

控制台也叫iometer端,必须是windows平台,可以为xp,2000,2003及NT系统。甚至Vista和2008。

客户端也叫Dynamo端,可以是windows和linux平台,dynamo端是就是我们要测试的节点。Linux客户端可以是redhat8,9;suse8.1;debian3.0.

在dynamo端执行Dynamo命令使之连接到控制台,控制台可以显示Dynamo端的磁盘设备和文件系统设备,因此可以在控制台指定测试策略来对客户端的设备进行测试,实际的测试负载在客户端产生

Iometer的安装

Window客户端:

iometer-2008-06-22-rc2.win.32.zip

(控制台和客户端均为这一压缩包)

解压后进入iometer-2008-06-22-rc2\src\Release目录,有两个可执行文件iometer.exe和Dynamo.exe文件。

其中iometer.exe为控制台端。Dynamo为客户端。

Linux客户端:

iometer-2008-06-22-rc2.src.tgz

将上面的tgz包拷贝到linux下解压:

Tar zxvf iometer-2008-06-22-rc2.src.tgz

Cd iometer-2008-06-22-rc2/src

可以看到下面有几个文件:

Makefile-Linux.i386

Makefile-Linux.ia64

Makefile-Linux.ppc

Makefile-Linux.x86_64

Makefile-Linux.xscale

Makefile-NetWare.i386

Makefile-OSX.all

Makefile-Solaris.i386

Makefile-Solaris.sparc

如果我们是64位机器,那么我们的编译文件选择Makefile-Linux.x86_64

Make  all   -f Makefile-Linux.x86_64

可以看到目录下生成了一个Dynamo可执行文件。

Dynamo命令

dynamo [-i iometer_computer_name -m manager_computer_name] [-n manager_name]

[-x excluded_fs_type] [-d extra_device] [-f extra_device_file] [-l]               [-c cpu_affinity] [-p login_port_number]

iometer_computer_name –运行iometer的计算机名。用于dynamo和iometer运行于不同计算机时

manager_name -在iometer端显示的运行dynamo的计算机名

manager_computer_name -运行dynamo的计算机名(或ip)

login_port_number -iometer的监听端口,默认是1066

excluded_fs_type

-不被iometer所认识的文件系统类型,默认是"proc shm swap devpts“.

extra_device

-不能被dynamo自动发现的块设备名,可以设置多个,如, -b dev1 -b dev2 -b dev3...

extra_device_file

-如果有大量的附加块设备,可以把设备名字写在一个文件里的一行里。文件要使用绝对路径。

-l –在系统日志记录log信息,默认是/var/log/messages.

cpu_affinity

- cpu关联是把dynamo和一个或几个进程绑定,用来得到更一致的时间。例如,如果想绑定到第3个cpu,应该设置值为4(00000100)。如果没有指定,系统默认是第一个cpu。

Iometer和dynamo的链接

Iometer端:

在iometer-2008-06-22-rc2\src\Release目录下执行iometer.exe

Dynamo端:

◦         Windows节点:在“运行”输入cmd进入控制台。然后一路cd到iometer的dynamo路径下:iometer-2008-06-22-rc2\src\Release,在此目录下执行:

◦         Dynamo –i $iometer_ip -m $dynamo_ip -n name

linux节点:在iometer-2008-06-22-rc2/src下执行

./Dynamo –i $iometer_ip -m $dynamo_ip -n name

准备测试

Iometer和dynamo连接成功后,在iometer控制台可以看到显示的dynamo端的信息:

在target选项页,黄色的设备表示的是文件系统,蓝色的设备表示是磁盘。

如果是测试磁盘,我们就可以直接开始了,如果是测试文件系统,

我们还有另一个工作:           表示不可进行测试,需要先往此文件系统

目录写一个名叫iobw.tst的文件才可以进行测试,通常这个文件通过iometer

顺序写入,大小是大于内存2倍以消除缓存影响。

当文件系统目录中写完iobw.tst时,重新连接厚红杠消失,即可进行测试

Iometer主界面

一个worker是一个负载发生器,一个客户端可以

由多个负载发生器。

Disk targets选项页

Maximum Disk Size是设置测试的最大磁盘扇区数

Starting Disk Sector是开始测试的磁盘扇区

(这两个选项通常在测试磁盘时选用)

Of Outstanding I/Os是指队列深度,就是并发连接的指令数(0-256)

(这个参数通常在模拟web服务时使用)

Access specifications

这里是添加访问规则,

在右边可以选择1个或多个访问方式添加到测试中,也可以在左边框调整不同访问方式的执行顺序。

当然,我们可以按照自己的测试需求来设计自己的访问规则

Test setup

Runtime:在这里可以设置每个访问规则的测试时间,一般为3-5分钟,如果设置为0则会一直执行。

Ramp up time:预热时间,一般设为60s。

Cyclins options:可以设置循环选项以不同的循环方式进行测试,大多数情况都是用normal

 开始测试了。。。。

以上配置完成,我们可以开始执行测试了

点击绿色的小旗帜,提示我们保存。测试结果以.csv文件格式保存。

测试执行时,可以在access页看到执行状态,蓝色表示还未执行,绿色表示正在执行,红色表示已经执行完,当全部执行完后,全部恢复蓝色。

也可以在result display选项页查看测试动态。

Result display

在测试执行过程中,实时查看测试情况,点击右边的“>”按钮,以图形方式查看

Iometer介绍与使用的更多相关文章

  1. RAID磁盘阵列介绍

    磁盘阵列 RAID介绍 一.简介: 磁盘阵列(Redundant Arrays of Independent Drives,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意. 最初是由加利福尼亚 ...

  2. CSS3 background-image背景图片相关介绍

    这里将会介绍如何通过background-image设置背景图片,以及背景图片的平铺.拉伸.偏移.设置大小等操作. 1. 背景图片样式分类 CSS中设置元素背景图片及其背景图片样式的属性主要以下几个: ...

  3. MySQL高级知识- MySQL的架构介绍

    [TOC] 1.MySQL 简介 概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而 ...

  4. Windows Server 2012 NIC Teaming介绍及注意事项

    Windows Server 2012 NIC Teaming介绍及注意事项 转载自:http://www.it165.net/os/html/201303/4799.html Windows Ser ...

  5. Linux下服务器端开发流程及相关工具介绍(C++)

    去年刚毕业来公司后,做为新人,发现很多东西都没有文档,各种工具和地址都是口口相传的,而且很多时候都是不知道有哪些工具可以使用,所以当时就想把自己接触到的这些东西记录下来,为后来者提供参考,相当于一个路 ...

  6. JavaScript var关键字、变量的状态、异常处理、命名规范等介绍

    本篇主要介绍var关键字.变量的undefined和null状态.异常处理.命名规范. 目录 1. var 关键字:介绍var关键字的使用. 2. 变量的状态:介绍变量的未定义.已定义未赋值.已定义已 ...

  7. HTML DOM 介绍

    本篇主要介绍DOM内容.DOM 节点.节点属性以及获取HTML元素的方法. 目录 1. 介绍 DOM:介绍DOM,以及对DOM分类和功能的说明. 2. DOM 节点:介绍DOM节点分类和节点层次. 3 ...

  8. HTML 事件(一) 事件的介绍

    本篇主要介绍HTML中的事件知识:事件相关术语.DOM事件规范.事件对象. 其他事件文章 1. HTML 事件(一) 事件的介绍 2. HTML 事件(二) 事件的注册与注销 3. HTML 事件(三 ...

  9. HTML5 介绍

    本篇主要介绍HTML5规范的内容和页面上的架构变动. 目录 1. HTML5介绍 1.1 介绍 1.2 内容 1.3 浏览器支持情况 2. 创建HTML5页面 2.1 <!DOCTYPE> ...

随机推荐

  1. JAVA设计模式之迭代子模式

    在阎宏博士的<JAVA与模式>一书中开头是这样描述迭代子(Iterator)模式的: 迭代子模式又叫游标(Cursor)模式,是对象的行为模式.迭代子模式可以顺序地访问一个聚集中的元素而不 ...

  2. C++——CString用法大全

    列表形式的如下: CString的构造函数CString( );例:CString csStr; CString( const CString& stringSrc );例:CString c ...

  3. margin:0 auto在IE中失效的解决方案

    转自:http://www.cnblogs.com/hongchenok/archive/2012/11/29/2795041.html 最近在开发项目的时候,发现在火狐浏览器中设置外容器margin ...

  4. vi的查找与替换

    0x01 查找 (在命令行模式下) /<要查找的字符>   向下查找要查找的字符 ?<要查找的字符>   向上查找要查找的字符 0x02 替换 (在底行模式下) :0,$s/s ...

  5. 登陆mysql时出现unknown variable 'character_set_client=UTF8' 的错误

    今天,登陆数据库服务器的时候,出现了下面的错误: [root@localhost app]# mysql -uroot -p mysql: unknown variable 'character-se ...

  6. COM的永久接口

    COM的永久接口

  7. Multipart to single part feature

    Multipart to single part feature Explode Link: http://edndoc.esri.com/arcobjects/8.3/?URL=/arcobject ...

  8. MFC中控制COMBOBOX控件的下拉框高度

    这是使用Visual Stiduo的小技巧哦.今天上网找来的.在界面设计面板上,点击ComboBox的下拉箭头,会另外出现一个虚边框.可以调整其大小.这个就是实现运行的时候下拉边框的默认值啦.

  9. LINUX内核分析期末总结

    韩玉琪 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.课程总结 1 ...

  10. struts2各个jar包的作用

    ---------------------------------------------------struts2核心jar包------------------------------------ ...