linux下如何使用IOMETER来测试网络磁盘的性能。

在linux上,iometer包括两部分:IOmeter主程序和执行代理,你可以在windows上安装运行iometer主程序,在linux上安装运行iometer执行代理,主程序就会把读写配置传递给执行代理来执行。

1.首先:在linux下安装iomter,以我的centos6.4 64位的操作系统为例,到iometer主页上下载版本:iometer-2008-06-22-rc2.src.tgz上传到linux中进行如下操作:

#tar zxvf iometer-2008-06-22-rc2.src.tgz   //解压   #cd iometer-2008-06-22-rc2/src  //进入iometer src文件下有多个Makefile文件找到自己需要的文件版本   #make -f Makefile-Linux.x86_64 dynamo   //我的系统是64位所以选择这个文件安装编译

在编译时候可能报下面的错误:

/usr/bin/g++ -O -Wall -D_GNU_SOURCE -DIOMTR_OSFAMILY_UNIX -DIOMTR_OS_LINUX -DIOMTR_CPU_X86_64 -DIOMTR_SETTING_GCC_M64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DNOMINMAX -DUSE_NEW_DISCOVERY_MECHANISM -DFORCE_STRUCT_ALIGN -DIOMTR_SETTING_CPU_AFFINITY -c IOGlobals.cpp   /usr/bin/g++ -O -Wall -D_GNU_SOURCE -DIOMTR_OSFAMILY_UNIX -DIOMTR_OS_LINUX -DIOMTR_CPU_X86_64 -DIOMTR_SETTING_GCC_M64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DNOMINMAX -DUSE_NEW_DISCOVERY_MECHANISM -DFORCE_STRUCT_ALIGN -DIOMTR_SETTING_CPU_AFFINITY -c Pulsar.cpp   In file included from IOManager.h:94,                    from Pulsar.cpp:135:   IOPerformance.h:101:21: error: stropts.h: No such file or directory   make: *** [Pulsar.o] Error 1

解决方法如下:

在需要在安装路径:iometer-2008-06-22-rc2/src中找到IOPerformance.h 这个文件在100行处修改如下:
将如下代码:

#if defined(IOMTR_OS_LINUX) || defined(IOMTR_OSFAMILY_NETWARE) || defined(IOMTR_OS_SOLARIS)

修改为

#if defined(IOMTR_OSFAMILY_NETWARE) || defined(IOMTR_OS_SOLARIS)

保存配置,重新编译一切OK。

2.其次:在windows下安装IONETER主程序,注意版本要和linux下的一样,我用的是:iometer-2008-06-22-rc2.win.x86_64.zip

3.最后:如何在linux运行iometer?
先在windows打开iometer主程序,再在linux下进入刚才的安装目录:cd /tmp/iometer-2008-06-22-rc2/src/运行如下命令:

[root@DELL-1 src]#  ./dynamo -i 172.172.172.100 -m 172.172.172.202

说明:-i后面用的是windows端的ip, -m后面使用的是linux的IP。
运行如上命令可以出现以下错误:

===> ERROR: Getting host name for "DELL-1" failed.        [PortTCP::Create() in IOPortTCP.cpp line 238]        errno = 11  *** Could not create a TCP/IP Port. exiting.....

原因:当网络环境没有使用DNS会造成hostname和IP无法对应上。
解决方法:在linux下进入/etc配置hosts文件下的hostname如下:我的linux命名为DELL-1所以在hosts文件的127.0.0.1后添加DELL-1。

[root@DELL-1 etc]# cat hosts   127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 DELL-1

一切问题都解决了,正常情况如下:

[root@DELL-1 src]#  ./dynamo -i 172.172.172.100 -m 172.172.172.202

报下面错误

error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

解决方法: yum -y install libaio

[root@DELL-1 src]#  ./dynamo -i 172.172.172.100 -m 172.172.172.202

报下面错误:

提示"libc.so.6: version `GLIBC_2.14' not found",系统的glibc版本太低

解决方法:

查看系统glibc支持的版本:

strings /lib64/libc.so.6 |grep GLIBC_

rpm -qa |grep glibc  

看到最高只支持2.12版本,所以考虑编译解决这个问题:

 到http://www.gnu.org/software/libc/下载最新版本,我下载了glibc-2.14.tar.xz 这个版本,解压到任意目录准备编译

wget http://ftp.gnu.org/gnu/libc/glibc-2.14.tar.xztar xf glibc-2.14.tar.xz cd glibc-2.14mkdir buildcd build/../configure --prefix=/usr/local/glibc-2.14make -j4make install临时修改环境变量export LD_LIBRARY_PATH=/usr/local/glibc-2.14/lib:$LD_LIBRARY_PATH

再次进行测试

[root@DELL-1 src]#  ./dynamo -i 172.172.172.100 -m 172.172.172.202

还有一个问题要注意的是先要在windows下打开iometer主程序,再在linux下运行上面的命令,否则可能出现问题。最后可以在windows上的iometer看到DELL-1的所有磁盘映射如下图:

详解linux下使用IOMETER测试磁盘IO性能

这样就可以直接在windows下对linux磁盘进行测试,测试方法和windows方法一致。

windows下使用IOMETER测试工具

可以参考:

             

1 软件介绍

Iometer 是对存储子系统的读写性能进行测试的软件。可以显示磁盘系统的最大 IO 能力、磁盘系统的最大吞吐量、CPU使用率、错误信息等。用户可以通过设置不同的测试的参数,有存取类型(如sequential ,random)、读写块大小(如64K、256K),队列深度等,来模拟实际应用的读写环境进行测试。Iometer操作简单,可以录制测试脚本,可以准确有效的反映存储系统的读写性能,为各大服务器和存储厂商所广泛采用。

Iometer主要有两个版本:
iometer-1.1.0-linux.x86_64-bin.tar.bz2         dynamo主要是安裝在 Linux下的,也是iometer 主要在跑的程序.
iometer-1.1.0-win64.x86_64-bin.zip    iometer只安裝在 windows下的,不负责运行只提供操作介面和显示执行结果。

2 安装软件dynamo:
基本上将iometer-1.1.0-linux.x86_64-bin.tar.bz2  解压缩就可以使用。

安装iometer:
在windows机器上双击iometer-1.1.0-win64.x86_64-bin.zip中安装程序,按照提示默认安装。

3 使用Iometer
首先在 Windows 机器上运行程序:开始->所有程序->iometer,然后在 Linux 机器上运行命令:./dynamo –i 10.40.179.65 –m 10.40.179.113。这样在windows上的管理界面中就可以看到 Linux机器上的运行代理。

这里说明:-i后面用的是windows端的ip, -m后面使用的是linux的IP。

邮件服务器端口号讲解

   25端口为SMTP是用于发送邮件。如今绝大多数邮件服务器都使用该协议。当你给别人发送邮件时,你的机器的某个动态端口(大于1024)就会与邮件服务器的25号端口建立一个连接,你发送的邮件就会通过这个连接传送到邮件服务器上,保存起来。

  109端口(POP2):109端口是为POP2(Post Office Protocol Version 2,邮局协议2)服务开放的,是用于接收邮件的。

  110端口(POP3):110端口是为POP3(Post Office Protocol Version 3,邮局协议3)服务开放的,是用于接收邮件的。

  143端口(IMAP):143端口是为IMAP(INTERNET MESSAGE ACCESS PROTOCOL)服务开放的,是用于接收邮件的。

   客户端可以使用POP3协议来访问服务端的邮件服务,如今ISP的绝大多数邮件服务器都是使用POP3协议(极少用POP2协议)。在使用邮件客户端程序的时候,会要求输入POP3服务器地址,默认情况下使用的就是110端口。当你用邮件客户端(比如、Thunderbird、foxmail、MS Outlook Express以及各类邮件精灵)登录时,你的机器就会自动用机器的某一个动态端口(大于1024)连接邮件服务器的110端口,服务器就把别人给你发的邮件(之前保存在邮件服务器上),发送到你机器,这样你就可以看到你客户端工具上的收件箱里的新邮件了。

     IMAP协议,和POP3协议一样是用来接收邮件的,但是它有它的特别和新颖之处,它是面向用户的,它和POP3协议的主要区别是:用户可以不用把所有的邮件内容全部下载,而是只下载邮件标题和发件人等基本信息,用户可以由标题等基本信息,去决定是否下载邮件全文,用户可以通过客户端的浏览器直接对服务器上的邮件进行操作(比如:打开阅读全文、丢进垃圾箱、永久删除、整理到某文件夹下、归档、)。再简单来说就是:浏览器用的IMAP协议(143端口)来为你接收邮件以及让你很方便的操作服务器上的邮件。邮件客户端用的POP3协议(110端口)来为你接收邮件的全部信息和全文内容保存到你的本地机器成为一个副本,你对邮件客户端上的副本邮件的任何操作都是在副本上,不干涉邮件服务器上为你保存的邮件原本。

     上面介绍的SMTP协议、POP2协议、POP3协议、IMAP协议都是不安全的协议。因考虑到网络安全的因素,下面给你介绍基于SSL(Secure Sockets Layer 安全套接层)协议的安全的邮件收发协议。你的邮件在传输过程中可能被网络***截取邮件内容,如果你的邮件机密性非常强,不想被收件人以外的任何人和任何***截取,或者是涉及国家机密安全的,等等。那么你的邮件就不该使用上述的三种协议进行收发。

若你采用SMTP协议发邮件,那么你发出的邮件从你的机器传到服务器的过程中,可能被***截取从而泄露。若你采用POP2或者POP3协议收取邮件,那么你的邮件从服务器传至你当前机器的过程可能被***截取从而泄露。

  465端口(SMTPS):465端口是为SMTPS(SMTP-over-SSL)协议服务开放的,这是SMTP协议基于SSL安全协议之上的一种变种协议,它继承了SSL安全协议的非对称加密的高度安全可靠性,可防止邮件泄露。SMTPS和SMTP协议一样,也是用来发送邮件的,只是更安全些,防止邮件被***截取泄露,还可实现邮件发送者抗抵赖功能。防止发送者发送之后删除已发邮件,拒不承认发送过这样一份邮件。

  995端口(POP3S):995端口是为POP3S(POP3-over-SSL)协议服务开放的,这是POP3协议基于SSL安全协议之上的一种变种协议,它继承了SSL安全协议的非对称加密的高度安全可靠性,可防止邮件泄露。POP3S和POP3协议一样,也是用来接收邮件的,只是更安全些,防止邮件被***截取泄露,还可实现邮件接收方抗抵赖功能。防止收件者收件之后删除已收邮件,拒不承认收到过这样一封邮件。

  993端口(IMAPS):993端口是为IMAPS(IMAP-over-SSL)协议服务开放的,这是IMAP协议基于SSL安全协议之上的一种变种协议,它继承了SSL安全协议的非对称加密的高度安全可靠性,可防止邮件泄露。IMAPS和IMAP协议一样,也是用来接收邮件的,只是更安全些,防止邮件被***截取泄露,还可实现邮件接收方抗抵赖功能。防止收件者收件之后删除已收邮件,拒不承认收到过这样一封邮件。