一、IOmeter介绍
Iometer是一款用于单系统和集群系统的I/O子系统度量(measurement)和特征化(characterization)工具,它是一个负载生成器(workloadgenerator),也是一个度量工具(measurement tool),可用于模拟任何程序或benchmark的磁盘或网络I/O操作,在单个或多个(联网)系统上生成并度量负载。
1.1 IOmeter组成
Iometer由两个程序组成,Iometer和Dynamo。Iomter是控制程序/GUI,它告诉Dynamo需要做什么,收集数据结果并总结到一个输出文件。一次只应该运行一个Iometer,通常运行在服务器上。Dynamo是一个负载生成器,它没有GUI,在Iometer的命令下执行I/O操作并记录性能信息,然后返回数据给Iometer。一次可以运行多个Dynamo,通常是一个副本运行在服务器上,另一个副本运行在每一台客户端上。Dynamo是多线程的,每一个副本可以模拟多个客户端程序的工作(workload),每一个正在运行的Dynamo副本被称为是一个Manager,Dynamo中的每一个线程被称为worker。
1.2 IOmeter启动说明
双击Iometer.exe运行Iometer,出现Iometer GUI(如下图所示),同时会在本地系统上启动Dynamo的一个副本。双击一个.icf设置文件、将icf或.txt文件拖拽到Iometer.exe也能启动Iometer,并且加载配置信息。命令行启动方式形如:c:\iometer myconfig.icf。如果需要在其他机器上启动Dynamo,将机器名作为Iometer的命令行参数,例如c:\dynamo IOServer。
如果Iometer和Dynamo在单个系统上运行,那么是不需要网络支持的,否则就需要配置TCP/IP网络。不需要在任何一台机器上启动多于一个的Dynamo的副本,要增加worker的数量,使用Iometer启动其他worker线程即可。
蓝色图标的Targets代表物理驱动器(图中并没有物理驱动器),只有当物理驱动器上没有任何逻辑分区时才会被显示出来。黄色图标代表逻辑(已挂载,mounted)驱动器,只有当它们为可写(writable)时会被显示出来。黄色图标带有红色斜杠代表该驱动器在测试开始之前,需要先做准备(prepare)。单击选中一个或多个(shift)磁盘来做测试,被选中的磁盘将自动分发给Manager的worker。
对逻辑驱动器的访问是通过对文件\iobw.tst的写入来完成的,如果该文件不存在,驱动器图标上会有一条红色斜杠,在测试开始之前,该文件会被创建并占满整个磁盘空间。
二、快速开始测试磁盘性能
1、双击Iometer.exe,Iometer主窗口出现并自动运行一个Dynamo负载生成器。
2、在Iometer窗口的左侧的拓扑面板点击一个Manager,你会在DiskTargets tab中看到可用的磁盘驱动器。
3、在DiskTargets tab中,选择一个或多个磁盘
4、切换到Access Specifications tab,在Global AccessSpecifications列表中双击"Default",出现"Edit Access Specification"对话框。
5、EditAccess Specification对话框告诉你磁盘将如何被访问,默认是2KB随机I/O,67%读+33%写,代表典型的数据库负载。你可以就使用默认设置或对其进行更改。点击OK关闭对话框。
6、为了获得最大吞吐量(MB/s),尝试更改Transfer Request Size = 64KB,Percent Read/Write Distribution = 100% Read,PercentRandom/Sequential Distribution = 100% Sequential.
7、为了获得最大的I/O速率(IOPS),尝试更改TransferRequest Size = 512Bytes,Percent Read/Write Distribution= 100% Read,Percent Random/Sequential Distribution =100% Sequential。
8、切换到Results Display tab,设置Update Frequency = 10秒。
9、点击StartTests按钮(绿色旗帜),一个标准的文件保存对话框出现,选择一个文件用以保存测试结果(默认是result.csv)
10、10秒钟之后,第一个测试结果显示在Results Display tab并每隔10秒更新一次。点击每个bar左侧的chart可以选择你想要的显示结果,你也可以将一个worker或manager拖拽到一个barchart上来查看某一个worker或manager的结果。
11、点击StopTest按钮(Stop标志),测试将停止,结果会被保存在results.csv文件中,这是一个逗号分隔的文本文件,可以用任何文本编辑器查看或导入电子表格。
三、测试计算机之间的网络性能
1、在computer-a上,双击Iometer.exe
2、在computer-b上,打开一个cmd并执行C:\dynamo computer-a
3、在computer-a上,你将看到computer-b作为一个新的manager出现在Topology面板,点击它可以观察到其磁盘驱动器将出现在Disk Targetstab
4、选中computer-b,点击Start Network Worker按钮(网线图示)早computer-b上创建一个网络服务器。
5、切换到Network Targets tab,从列表中选择computer-a的一个接口,这将在computer-a上创建一个客户端并将客户端和服务器连接在一起。
6、切换到Access Specifications tab,在Global AccessSpecifications列表中双击"Default",出现"Edit Access Specification"对话框,指定TransferRequest Size = 512Bytes,点击OK。
7、切换到Results Display tab,设置Update Frequency = 10秒。
8、点击StartTests按钮(绿色旗帜)并选择一个文件用于保存结果。如果指定一个现有的文件,新的结果会被附加在已有结果后面。
9、观察结果后,点击Stop Test按钮停止测试并将结果保存到文件。
四、IOmeter界面说明
4.1拓扑面板的"Disk Target tab"
拓扑面板显示当前活动Manager(Dynamos)和Worker(线程)的一个层级列表。点击一个worker、manager、或AllManager可以在Disk Targets,NetworkTargets和Access Specification tab中查看并修改其设置。默认,manager的名称和其所在机器的名字是一样的,Worker的名字是"Worker n",可以通过单击选中的manager或worker来修改名字。"All Manager"的名字是不可更改的。
点击某个worker,被选中的targets(磁盘或网络接口)将由该worker使用,其他的设置显示了当前该worker的设置,任何更改仅针对该worker。
点击某个manager,被选中的targets将以轮询的方式分发给该manager下的所有worker。Disk Targets,NetworkTargets和Access Specification tab显示了该manager下所有worker的公共设置。如果所有worker的设置参数都相等,那么设置项会显示某一个值,否则将是空白的(说明该manager下的worker对该参数的设置不同),任何参数的更改会被应用到该manager下的所有worker。
点击All Manager不会显示任何target,因为manager的target列表可能是不同的。其他设置显示了所有worker的公共参数,任何更改都会被应用到所有worker。
Disk Targets tab允许查看并控制当前选中的worker所使用的磁盘。单击或shift-单击选择任意数量的驱动器供已选worker在测试时使用。Physical驱动器以蓝色图标显示,名称是"PHYSICALDRIVEn"(仅当它们不包含任何信息,除了空闲空间)。Worker直接读写raw disk来访问物理驱动器,而非使用iobw.tst文件。推荐用Physical驱动器进行测试。
Worker通过读写\iobw.tst文件来访问逻辑驱动器,如果该文件不存在,驱动器的图标会有一条红色的斜线。在测试开始的时候,系统会被创建该文件并扩容直至磁盘空间撑满(该过程会在状态栏显示"Preparing Drives")。当然,可以通过设置 Maximum DiskSize来设置该文件的大小,从而控制Iometer使用的磁盘空间。如果该文件存在但是不可写,那么该驱动器被认为是只读的,而且根本不会被显示出来。
Maximum Disk 一、简述 二、对httpd做高可用集群 1.环境说明 我们通过192.168.1.210对外提供web服务,两个客户端的ip地址分别为192.168.1.200和192.168.1.201,在192.168.1.202上提供了nfs服务为两台web服务器提供共享存储 2.前期准备工作 由于heartbeat是基于主机名通信的,需要对两台服务器配置主机名,并能够对实现主机名的解析 为了实验的方便性,本处我们基于ssh的密钥认证,实现两台主机登陆不需要密码 3.在node1和node2上分别准备httpd,本处可以通过yum安装也可以通过编译源码安装,关于安装过程,本处不在累赘,如想了解过程,其移步至本人的博客http://wangfeng7399.blog.51cto.com/3518031/1379373 4.时间同步,本处使用的互联网的时间服务器,也可以自建时间服务器,关于如何自建时间服务器,将会在后续推出,敬请期待 查看两边的服务器时间是否同步 5.安装heartbeat ①.解决依赖关系,由于centos6.5提供的为heartbeatV3版本,本处不能直接通过yum安装 说明:libnet包在eprl源中,请确保安装epel源 ②.安装heartbeatV2版本的rpm包 6.配置heartbeat ①.准备配置文件 在/etc/hosts文件中添加如下行
192.168
.
1
.201node2.wangfeng7399.com node2
192.168
.
1
.200node1.wangfeng7399.com node1
[root@node1 ~]# ssh-keygen
[root@node1 ~]# ssh-copy-id root@node2
在node2上同样使用以上命令生成sshkey
[root@node1 ha]# ntpdate time.windows.com
[root@node1 ha]# ssh node2
'date'
;date
Thu Apr
1722
:
05
:42CST
2014
Thu Apr
1722
:
05
:42CST
2014
yum install perl-TimeDate PyXML libnet net-snmp-libs -y
[root@node1 ha]# rpm -ivh heartbeat-
2.1
.
4
-
12
.el6.x86_64.rpm heartbeat-pils-
2.1
.
4
-
12
.el6.x86_64.rpm heartbeat-stonith-
2.1
.
4
-
12
.el6.x86_64.rpm heartbeat-gui-
2.1
.
4
-
12
.el6.x86_64.rpm
没有评论:
发表评论