您好,欢迎来到叨叨游戏网。
搜索
您的当前位置:首页性能测试方案

性能测试方案

来源:叨叨游戏网
性能测试方案初稿

总体测试方法

根据测试需求,客户端利用iSCSI协议向IPSHOT服务器读写数据,来获得服务器接收处理数据的能力。

通过多客户端对服务器做快照查询/恢复操作,获取服务器业务交互处理能力。

测试环境

根据 测试环境评估for IPSHOT性能测试 的结果,要获得准确的性能数据,需要搭建这样的测试环境:

硬件:XXXX被测服务器 1台,配置4、6、8块SATA II 硬盘 注:单盘处理能力22MB/s 千兆交换机1台 提供千兆局域网环境

PC机,Windows2003 X86/X OS, 1Gbit 网卡 10台

软件:IOmeter 按要求写数据到服务器上的卷,并获得读写数据的速度 HD Tach 通过iSCSI获得卷的读写能力曲线

IOzone IPSHOT服务器上linux环境下获得磁盘的读写能力 Sar 对网卡流量,CPU使用,内存使用取样分析

Iostat 监控磁盘的IO性能,通过输出可以分析IO性能瓶颈 Vmstat 对内存进行统计

TOP组网图

具体测试方法:

一、客户端向服务器发送数据,获取服务器最大接收和处理数据能力,并记录系统资源使用

状态。

单用户单卷时的测试步骤

1、 在IPSHOT Server 上创建存储池,建立卷,创建用户并与卷进行关联; 2、 使用IPSHOT client 登陆,iSCSI Initiator 与Target建立连接,客户机扫盘; 3、 客户机上使用IOmeter对卷进行读写操作

① IOmeter 数据块大小16M,随机值0,读0%,写100%; ② IOmeter 数据块大小16M,随机率值0%,读33%,写67%; ③ IOmeter 数据块大小16M,随机率值0%,读67%,写33%. ④ IOmeter 数据块大小16M,随机率值0%,读100%,写0%. ⑤ IOmeter 数据块大小16M,随机率值0%,读80%,写20%. ⑥ IOmeter 数据块大小16M,随机率值0%,读100%,写0%. 4、 服务器上执行 Iostat –x –m 5 10 >> Iostat.txt对IO写数据状态查询,CPU利用率进行

监控。

5、 服务器上执行 Sar –n dev 5 10 >>sar.txt对网卡流量进行监控。 6、Vmstat对内存资源进行监控。

注:iostat 命令用来监视系统输入/输出设备负载 CPU 使用率

% user 显示了在用户级(应用程序)执行时产生的 CPU 使用率百分比。 % system 显示了在系统级(内核)执行时产生的 CPU 使用率百分比。

% idle 显示了在 CPU 空闲并且系统没有未完成的磁盘 I/O 请求时的时间百分比。 % iowait 显示了 CPU 空闲期间系统有未完成的磁盘 I/O 请求时的时间百分比。 磁盘使用率

-m Mbps 表示以 KB 每秒为单位的传输(读或写)到驱动器的数据量。

记录测试结果

1、记录IOmeter上Total MBs per second的数据。

2、打开 Iostat.txt 和sar.txt文件查看测试数据

多用户多卷时的测试步骤

1、 多台客户端向服务器写数据,步骤同单用户单卷

记录测试结果

1、记录IOmeter上Total MBs per second的数据,见各客户端数据相加。 2、记录Iostat 和sar采样输出,IO读写是个各卷之和。

二、

测试IPSHOT服务器端的单个磁盘的读写速度

测试步骤:

1、 IPSHOT服务器工作正常,并以ROOT用户登录; 2、 下载安装Iozone;

# tar -xvf iozone3_326.tar # cd iozone3_326/src/current # make linux

3、 执行Iozone,输入 ./iozone –r 16m –I 0 –I 1 –I 2 –g 8G –b iozone_test.xls

注:iozone参数

-i N 用来选择测试项, 比如Read/Write/Random 比较常用的是0 1 2,可以指定成-i 0 -i 1 -i2.这些别的详细内容请查man

-r block size 指定一次写入/读出的块大小 -g -n 指定测试文件大小范围 -b 指定输出到指定文件上

记录测试结果

按照执行命令时制定的路径,读取excel文件,记录读 写 随机读写值。

三、测试IPSHOT服务器快照创建/克隆能力

测试步骤

使用脚本批量创建卷

脚本内容如下,执行时输入 sh Crtluns.sh 1 100

#!/usr/bin

echo \"create LUN by batch\" #Author:wangzhengbing #Date:2011-2-17

echo \"=============================\" #Input taget_id and LUN Number to create targetid=$1 LUNs=$2

#create a target

ietadm --op new --tid=$1 --params\\

Name=iqn.2011-02.com.php-oa.iscsi:wangzhengbing

#creat LUNs by batch

#Command running start time t0=$(date +%s) i=0

while [ $i -le $LUNs ] do

ietadm --op new --tid=$targetid --lun=$LUNs --params Path=/opt/boris

let \"i++\" done

t1=$(date +%s) let \"t=($t1-$t0)\" let \"Crt_eff=$2/$t\"

echo \"Create $LUNs LUNs in $t seconds, Averay creat $Crt_eff LUNs per Second!\"

备注:执行时输入要创建的Target id, 卷个数,批量创建前脚本会记录时间,最后输出创建个数与时间比,即没秒创建卷个数

批量创建

四、服务器创建快照时,数据的读写能力

测试步骤

1、 使用HD Tach 做磁盘读写测试 2、 打开Iostat 磁盘IO性能监控进程 3、 使用脚本批量创建快照/克隆

4、 查看HD Tach 读写能力曲线是否有明显下降,记录数据

注:也可以使用IOmeter写数据测试

五、交互的性能/可靠性测试

找于晓松,做一个性能测试界面。责任人 何毅

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- gamedaodao.net 版权所有 湘ICP备2024080961号-6

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务