2023年7月26日发(作者:)
【存储测试】vdbench存储性能测试⼯具⼀、前⾔1、介绍 vdbench是⼀个I/O⼯作负载⽣成器,通常⽤于验证数据完整性和度量直接附加(或⽹络连接)存储性能。它可以运⾏在windows、linux环境,可⽤于测试⽂件系统或块设备基准性能。2、版本包获取vdbench版本包jdk版本包⼆、安装部署1、Linux客户端部署jdk环境 解压缩jdk安装包⾄/opt⽬录tar -zxvf -C /opt/ 配置jdk环境变量echo 'JAVA_HOME=/opt/jdk1.8.0_251' >> /root/.bashrcecho 'PATH=$JAVA_HOME/bin:$PATH' >> /root/.bashrcecho 'CLASSPATH=.:$JAVA_HOME/lib/:$JAVA_HOME/lib/' >> /root/.bashrcsource /root/.bashrc配置免秘钥⾮必选项,如需要联机测试,则需要配置此项 ⽰例使⽤三个客户端联机测试,使⽤客户端node241作为主节点客户端主机名node241node242node243客户端IP66.66.66.24166.66.66.24266.66.66.243 将每个节点IP和主机名的映射关系写⼊到/etc/hosts配置⽂件内echo '66.66.66.241 node241' >> /etc/hostsecho '66.66.66.242 node242' >> /etc/hostsecho '66.66.66.243 node243' >> /etc/hosts 主节点⽣成公钥⽂件,并拷贝到其他从节点(配置主节点到从节点免秘钥登录)ssh-keygenssh-copy-id node242ssh-copy-id node243vdbench使⽤ 解压缩vdbench安装包⾄/root/vdbench50406⽬录内,切换到vdbench解压缩⽬录执⾏对应参数⽂件即可unzip -d /root/vdbench504062、Windows客户端部署jdk环境直接安装jdk软件即可(环境变量在安装完成后会⾃动添加)vdbench使⽤解压缩vdbench软件包,切换到vdbench解压缩⽬录执⾏对应参数⽂件即可3、注意事项在联机测试时,客户端的系统时间需保持⼀致,否则会出现时钟同步告警(this can lead to heartbeat issues)客户端的防⽕墙要关闭(或者设置开放程序指定端⼝5570、5560访问)关闭系统⽇志服务rsyslog,避免运⾏时出现其他⽇志⽂件打印信息参数⽂件添加messagescan=no可以过滤掉多余的系统⽇志三、常⽤操作1、常⽤操作命令 检查vdbench环境./vdbench -t 运⾏测试模型注:-f后接测试参数⽂件名,-o后接导出测试结果路径./vdbench -f {filename} -o {exportpath} 建⽴rsh通信注:此命令是⽤于windows系统多主机联机跑vdbench时使⽤,因为windows操作系统不⽀持ssh,因此,vdbench提供了rsh的通信⽅式。在⽬标主机上执⾏此⼯具后,vdbench将会启动⼀个java socket⽤于vdbench slave与master之间通信./vdbench rsh四、参数说明vdbench可⽤于⽂件系统及块设备基准性能测试,以下主要介绍⽂件系统及块存储的常⽤测试参数vdbench所有测试参数都定义到⼀个参数⽂件内,在运⾏时按照顺序被读取执⾏相应操作,在参数⽂件定义时需要执⾏顺序进⾏定义1、⽂件系统 ⽂件系统参数⽂件定义顺序为:HD、FSD、FWD、RD1.1、HD(Host Define)⾮必选项,单机运⾏时不需要配置HD参数,⼀般只有在多主机联机测试时才需要配置hd=default,vdbench=/root/vdbench50406,user=root,shell=sshhd=hd1,system=node241hd=hd2,system=node242hd=hd3,system=node243hd= 标识主机定义的名称,多主机运⾏时,可以使⽤hd1、hd2、区分system= 主机IP地址或主机名vdbench= vdbench执⾏⽂件存放路径,当多主机存放路径不同时,可在hd定义时单独指定user= slave和master通信使⽤⽤户shell= 可选值为rsh、ssh或vdbench,默认值为rsh,多主机联机测试时,mater和slave主机间通信⽅式当参数值为rsh时,需要配置master和slave主机rsh互信,考虑到rsh使⽤明⽂传输,安全级别不够,通常情况下不建议使⽤这种通信⽅式当参数值为ssh时,需要配置master和slave主机ssh互信,通常Linux主机联机时使⽤此通信⽅式当参数值为vdbench,需要在所有slave主机运⾏vdbench rsh启⽤vdbench本⾝的rsh守护进程,通常Window主机联机时使⽤此通信⽅式1.2、FSD(File System Define)fsd=default,depth=2,width=3,files=2,size=128kfsd=fsd1,anchor=/mnt/client1fsd=fsd2,anchor=/mnt/client2fsd=fsd3,anchor=/mnt/client3fsd= 标识⽂件系统定义的名称,多⽂件系统时(fsd1、fsd2、),可以指定default(将相同的参数作为所有fsd的默认值)anchor= ⽂件写⼊根⽬录depth= 创建⽬录层级数(即⽬录深度)width= 每层⽂件夹的⼦⽂件夹数files= 测试⽂件个数(vdbench测试过程中会⽣成多层级⽬录结构,实际只有最后⼀层⽬录会⽣成测试⽂件)size= 每个测试⽂件⼤⼩**distribution= ** 可选值为bottom或all,默认为bottom--当参数值为bottom时,程序只在最后⼀层⽬录写⼊测试⽂件--当参数值为all时,程序在每⼀层⽬录都写⼊测试⽂件shared= 可选值为yes或no,默认值为no,⼀般只有在多主机联机测试时指定vdbench不允许不同的slave之间共享同⼀个⽬录结构下的所有⽂件,因为这样会带来很⼤的开销,但是它们允许共享同⼀个⽬录结构。加⼊设置了shared=yes,那么不同的slave可以平分⼀个⽬录下所有的⽂件来进⾏访问,相当于每个slave有各⾃等分的访问区域,因此不能测试多个客户的对同⼀个⽂件的读写--当多主机联机测试时,写⼊的根⽬录anchor为同⼀个路径时,需要指定参数值为yeshd=default,vdbench=/root/vdbench50406,user=root,shell=sshhd=hd1,system=node1hd=hd2,system=node2hd=hd3,system=node3fsd=fsd1,anchor=/client/,depth=2,width=100,files=100,size=4k,shared=yes 计算公式如下: 最后⼀层⽣成⽂件夹个数=width^depth 测试⽂件个数=(width^depth)*filesfsd=fsd1,anchor=/dir1,depth=2,width=3,files=2,size=128k以上述参数为例,⽣成⽬录结构及测试⽂件如下:最后⼀层⽂件夹数=3^2=9 最后⼀层⽂件数=9*2=18/dir1/├── no_├── vdb.1_│ ├── vdb.2_│ │ ├── vdb_│ │ └── vdb_│ ├── vdb.2_│ │ ├── vdb_│ │ └── vdb_│ └── vdb.2_│ ├── vdb_│ └── vdb_├── vdb.1_│ ├── vdb.2_│ │ ├── vdb_│ │ └── vdb_│ ├── vdb.2_│ │ ├── vdb_│ │ └── vdb_│ └── vdb.2_│ ├── vdb_│ └── vdb_├── vdb.1_│ ├── vdb.2_│ │ ├── vdb_│ │ └── vdb_│ ├── vdb.2_│ │ ├── vdb_│ │ └── vdb_│ └── vdb.2_│ ├── vdb_│ └── vdb_└── vdb_12 directories, 20 files1.3、FWD(FileSystem Workload Defile)fwd=default,operation=read,xfersize=4k,fileio=sequential,fileselect=random,threads=2fwd=fwd1,fsd=fsd1,host=hd1fwd=fwd2,fsd=fsd2,host=hd2fwd=fwd3,fsd=fsd3,host=hd3fwd= 标识⽂件系统⼯作负载定义的名称,多⽂件系统⼯作负载定义时,可以使⽤fwd1、fwd2、区分fsd= 标识此⼯作负载使⽤⽂件存储定义的名称host= 标识此⼯作负载使⽤主机operation= 可选值为read或write,⽂件操作⽅式rdpct= 可选值为0~100,读操作占⽐百分⽐,⼀般混合读写时需要指定,当值为60时,则混合读写⽐为6:4fileio= 可选值为random或sequential,标识⽂件 I/O 将执⾏的⽅式fileselect= random或sequential,标识选择⽂件或⽬录的⽅式xfersizes= 数据传输(读取和写⼊操作)处理的数据⼤⼩(即单次IO⼤⼩)threads= 此⼯作负载的并发线程数量1.4、RD(Run Define)rd=rd1,fwd=(fwd1-fwd3),fwdrate=max,format=restart,elapsed=604800,interval=10rd= 标识⽂件系统运⾏定义的名称。fwd= 标识⽂件系统⼯作负载定义的名称。fwdrate= 每秒执⾏的⽂件系统操作数量。设置为max,表⽰不做任何限制,按照最⼤强度⾃适应format= 可选值为yes、no或restart,标识预处理⽬录和⽂件结构的⽅式--yes表⽰删除⽬录和⽂件结构再重新创建--no表⽰不删除⽬录和⽂件结构--restart表⽰只创建未⽣成的⽬录或⽂件,并且增⼤未达到实际⼤⼩的⽂件elapsed= 默认值为30,测试运⾏持续时间(单位为秒)interval= 结果输出打印时间间隔(单位为秒)2、块设备 块设备参数⽂件定义顺序为:HD、SD、WD、RD1.1、HD(Host Define)⾮必选项,单机运⾏时不需要配置HD参数,⼀般只有在多主机联机测试时才需要配置hd=default,vdbench=/root/vdbench50406,user=root,shell=sshhd=hd1,system=node241hd=hd2,system=node242hd=hd3,system=node243hd= 标识主机定义的名称,多主机运⾏时,可以使⽤hd1、hd2、区分system= 主机IP地址或主机名vdbench= vdbench执⾏⽂件存放路径,当多主机存放路径不同时,可在hd定义时单独指定user= slave和master通信使⽤⽤户shell= 可选值为rsh、ssh或vdbench,默认值为rsh,多主机联机测试时,mater和slave主机间通信⽅式当参数值为rsh时,需要配置master和slave主机rsh互信,考虑到rsh使⽤明⽂传输,安全级别不够,通常情况下不建议使⽤这种通信⽅式当参数值为ssh时,需要配置master和slave主机ssh互信,通常Linux主机联机时使⽤此通信⽅式当参数值为vdbench,需要在所有slave主机运⾏vdbench rsh启⽤vdbench本⾝的rsh守护进程,通常Window主机联机时使⽤此通信⽅式1.2、SD(Storage Define)sd=sd1,hd=hd1,lun=/dev/sdb,openflags=o_direct,threads=6sd=sd3,hd=hd2,lun=/dev/sdb,openflags=o_direct,threads=6sd=sd6,hd=hd3,lun=/dev/sdb,openflags=o_direct,threads=6sd= 标识存储定义的名称hd= 标识主机定义的名称lun= 写⼊块设备,如:/dev/sdb, /penflags= 通过设置为o_direct,以⽆缓冲缓存的⽅式进⾏读写操作threads= 对SD的最⼤并发I/O请求数量1.3、WD(Workload Define)wd=wd1,sd=sd*,seekpct=100,rdpct=100,xfersize=8k,skew=40wd=wd2,sd=sd*,seekpct=100,rdpct=0,xfersize=8k,skew=10wd=wd3,sd=sd*,seekpct=100,rdpct=100,xfersize=1024k,skew=40wd=wd4,sd=sd*,seekpct=100,rdpct=0,xfersize=1024k,skew=10wd= 标识⼯作负载定义的名称sd= 标识存储定义的名称seekpct= 可选值为0或100(也可使⽤sequential或random表⽰),默认值为100,随机寻道的百分⽐,设置为0时表⽰顺序,设置为100时表⽰随机。rdpct= 读取请求占请求总数的百分⽐,设置为0时表⽰写,设置为100时表⽰读xfersize= 要传输的数据⼤⼩。默认设置为4kskew= ⾮必选项,⼀般在多个⼯作负载时需要指定,表⽰该⼯作负载占总⼯作量百分⽐(skew总和为100)1.4、RD(Run Define)rd=rd1,wd=wd*,iorate=max,maxdata=400GB,warmup=30,elapse=604800,interval=5rd= 标识运⾏定义的名称wd= 标识⼯作负载定义的名称iorate= 常⽤可选值为100、max,此⼯作负载的固定I/O速率--当参数值为100时,以每秒100个I/Os的速度运⾏⼯作负载,当参数值设置为⼀个低于最⼤速率的值时,可以达到限制读写速度的效果--当参数值为max时,以最⼤的I/O速率运⾏⼯作负载,⼀般测试读写最⼤性能时,该参数值均为maxwarmup= 预热时间(单位为秒),默认情况下vdbench会将第⼀个时间间隔输出数据排除在外,程序在预热时间内的测试不纳⼊最终测试结果中(即预热结束后,才开始正式测试)--当interval为5、elapsed为600时,测试性能为2~elapsed/interval(avg_2-120)时间间隔内的平均性能--当interval为5、warmup为60、elapsed为600时,测试性能为1+(warmup/interval)~(warmup+elapsed)/interval(avg_13-132)时间间隔内的平均性能maxdata= 读写数据⼤⼩,通常情况下,当运⾏elapsed时间后测试结束;当同时指定elapsed和maxdata参数值时,以最快运⾏完的参数为准(即maxdata测试时间⼩于elapsed时,程序写完elapsed数据量后结束)--当参数值为100以下时,表⽰读写数据量为总存储定义⼤⼩的倍数(如maxdata=2,2个存储定义(每个存储定义数据量为100G),则实际读写数据⼤⼩为400G)--当参数值为100以上时,表⽰数据量为实际读写数据量(可以使⽤单位M、G、T等)elapsed= 默认值为30,测试运⾏持续时间(单位为秒)interval= 报告时间间隔(单位为秒)五、运⾏使⽤1、单机运⾏Linux ⽰例如下,单节点针对裸盘测试,1M顺序写,测试时间600s,预热时间60s,报告时间间隔2s[root@node241 vdbench50406]# cat
sd=sd1,lun=/dev/sdb,openflag=o_directwd=wd1,sd=sd1,seekpct=0,rdpct=0,xfersize=1Mrd=rd1,wd=wd1,iorate=max,warmup=60,elapsed=600,interval=2[root@node241 vdbench50406]#
[root@node241 vdbench50406]# ./vdbench -f ndow ⽰例如下,单节点针对⽂件系统测试,1M顺序写,⽬录深度为2,每层⽬录数为3,每个⽬录⽂件数为10,每个⽂件⼤⼩为200M,测试时间为600s,报告时间时间2sE:vdbench50406>more "Single "fsd=fsd1,anchor=E:Sigle-FileSystem,depth=2,width=3,files=10,size=200Mfwd=fwd1,fsd=fsd1,operation=write,xfersize=1M,fileio=sequential,fileselect=random,threads=2rd=rd1,fwd=fwd1,fwdrate=max,format=yes,elapsed=600,interval=5E:vdbench50406>E:vdbench50406>vdbench -f "Single "2、联机运⾏Linux1、按照⼆、安装部署,配置多主机ssh互信2、master主机运⾏测试参数⽂件即可⽰例如下,三节点针对裸盘联机测试,1M顺序写,测试数据量为400G,预热时间30s,报告间隔5s[root@node241 vdbench50406]# cat Multi-RawDiskhd=default,vdbench=/root/vdbench50406,user=root,shell=sshhd=hd1,system=node241hd=hd2,system=node242hd=hd3,system=node243sd=sd1,hd=hd1,lun=/dev/sdb,openflag=o_directsd=sd2,hd=hd2,lun=/dev/sdb,openflag=o_directsd=sd3,hd=hd3,lun=/dev/sdb,openflag=o_directwd=wd1,sd=sd*,seekpct=0,rdpct=0,xfersize=1Mrd=rd1,wd=wd1,iorate=max,maxdata=100M,elapsed=64800,warmup=30,interval=5[root@node241 vdbench50406]#
[root@node241 vdbench50406]# ./vdbench -f Multi-RawDiskWindow1、所有slave主机运⾏vdbench本⾝rsh守护进程E:vdbench50406>vdbench rsh2、master主机运⾏测试参数⽂件即可⽰例如下,三节点针对⽂件系统联机测试,1M顺序写,⽬录深度为2,每层⽬录数为3,每个⽬录⽂件数为10000,每个⽂件⼤⼩为200M,测试时间为600s,报告间隔1sE:vdbench50406>more "Multi "hd=default,vdbench=E:vdbench50406,user=Micah,shell=vdbenchhd=hd1,system=66.66.66.250hd=hd2,system=66.66.66.252fsd=fsd1,anchor=Z:Sigle-FileSystem-01,depth=2,width=3,files=10000,size=200Mfsd=fsd2,anchor=Z:Sigle-FileSystem-02,depth=2,width=3,files=10000,size=200Mfwd=default,operation=write,xfersize=1M,fileio=sequential,fileselect=random,threads=16fwd=fwd1,fsd=fsd1,host=hd1fwd=fwd2,fsd=fsd2,host=hd2rd=rd1,fwd=fwd*,fwdrate=max,format=yes,elapsed=600,interval=1E:vdbench50406>E:vdbench50406>vdbench -f "Multi "六、结果分析当vdbench运⾏完负载测试后,会在安装⽬录下⽣成output⽂件夹,⾥边包含测试结果⽂件1、输出⽂件当运⾏测试启⽤数据校验时,它可能会包含⼀些错误信息,如:⽆效的密钥读取⽆效的 lba 读取(⼀个扇区的逻辑字节地址)⽆效的 SD 或 FSD 名称读取数据损坏坏扇区bench ⽣成的⼀种逐列的 ASCII 格式的信息,可以使⽤parseflat参数解析结果 ./vdbench parseflat -i <> -o [-c col1 col2 ..] [-a] [-f col1 value1 col2 value2..] -i input flatfile, e.g. output/ -o output CSV file name (default stdout) -c which column to write to CSV. Columns are written in the order specified -f filters: 'if (colX == valueX) ... ...' (Alphabetic compare) -a include only the 'avg' data. Default: include only non-avg data. -i是表⽰待分析的⽂件,这⾥写vdbench输出⽬录⾥的这个⽂件,写其它⽂件不能正常解析; -o是解析后的输出⽂件,可以⼿动指定存放⽬录。⽂件格式为CSV,此⽂件的列由-c参数指定,列的顺序为-c参数的顺序 -a是表⽰csv⽂件中只记录测试过程中的avg值 ⽰例如下: . parseflat -i D: -c run rate MB/sec seekpct rdpct bytes/io threads resp -o d: -avdbench parseflat arguments:Argument 0: -iArgument 1: D:gument 2: -cArgument 3: runArgument 4: rateArgument 5: MB/secArgument 6: seekpctArgument 7: rdpctArgument 8: bytes/ioArgument 9: threadsArgument 10: respArgument 11: -oArgument 12: D:ument 13: -a14:12:49.265 ParseFlat completed ⼀种包含报告柱状图的响应时间、⽂本格式的⽂件包含 Java 代码写⼊控制台窗⼝的每⾏信息的副本。 主要⽤于调试⽤途包含测试运⾏配置参数信息记录全部数据信息,显⽰每个报告间隔内总体性能情况及⼯作负载情况,以及除第⼀个间隔外的所有间隔的加权平均值记录全部数据计算之后的平均值,⼀般测试结果从该⽂件取值,除第⼀个间隔外所有间隔的加权平均值2、结果分析2.1、⽂件系统#测试参数如下:hd=default,vdbench=E:vdbench50406,user=Micah,shell=vdbenchhd=hd1,system=66.66.66.250hd=hd2,system=66.66.66.252fsd=fsd1,anchor=Z:Sigle-FileSystem-01,depth=2,width=3,files=10,size=4Mfsd=fsd2,anchor=Z:Sigle-FileSystem-02,depth=2,width=3,files=10,size=4Mfwd=default,operation=write,xfersize=1M,fileio=sequential,fileselect=random,threads=2fwd=fwd1,fsd=fsd1,host=hd1fwd=fwd2,fsd=fsd2,host=hd2rd=rd1,fwd=fwd*,fwdrate=max,format=yes,elapsed=600,interval=5#测试结果如下:18:47:03.001 Starting RD=format_for_rd1六⽉ 04, 2020 .Interval. . ...cpu%... read .... .... .. mb/sec .xfer.. ... ... ... .... ... ... rate resp total sys pct rate resp rate resp read write total size rate resp rate resp rate resp rate resp rate resp rate resp18:48:40.218 avg_2-20 57.6 6.244 13.4 2.99 0.0 0.0 0.000 57.6 6.244 0.00 7.20 7.20 131072 0.2 104.49 0.2 41.526 1.8 7527.0 1.8 192.01 1.8 7134.3 1.8 21.98418:48:42.000 Starting RD=rd1; elapsed=600; fwdrate=max. For loops: None18:58:42.205 avg_2-120 6.2 1.063 13.0 2.80 0.0 0.0 0.000 6.2 1.063 0.00 6.24 6.24 1048576 0.0 0.000 0.0 0.000 0.0 0.000 1.6 47.864 1.6 2401.1 0.0 0.000 ⼀般包括两个部分,第⼀部分为⽂件存储⽬录结构及数据填充的平均性能值,第⼆部分为执⾏测试过程中除第⼀个时间间隔外所有时间间隔平均性能值,主要看第⼆部分的内容Interval报告间隔序号,测试结果⼀般为除第⼀个时间间隔外所有时间间隔加权平均值如elapsed=600,interval=5,则性能结果为第2个间隔到第120个间隔的平均值(avg_2-120)ReqstdOpsrate每秒读写I/O个数(读写IOPS),可以通过rd运⾏定义参数fwdrate控制当fwdrate为max时,以最⼤I/O速率运⾏⼯作负载当fwdrate为低于最⼤I/0速率的⼀个数值时,可以限制读写速度,以固定I/O速率运⾏⼯作负载resp读写请求响应时间(读写时延),单位为mscpu%tatol总的cpu占⽤率sys系统cpu占⽤率read pct读取请求占总请求数百分⽐占⽐,当为0时表⽰写,当为100时表⽰读readrate每秒读I/O个数(读IOPS)resp读请求响应时间(读时延),单位为mswriterate每秒写I/O个数(写IOPS)resp写请求响应时间(写时延),单位为msmb/secread每秒读取速度write每秒写⼊速度total每秒读写速度总和xfersize每个读写I/O传输数据量(即单个读写I/O⼤⼩),单位为字节B2.2、块设备#测试参数如下:messagescan=nohd=default,vdbench=/root/vdbench50406,user=root,shell=sshhd=hd1,system=node241hd=hd2,system=node242hd=hd3,system=node243sd=sd1,hd=hd1,lun=/dev/sdb,openflag=o_directsd=sd2,hd=hd2,lun=/dev/sdb,openflag=o_directsd=sd3,hd=hd3,lun=/dev/sdb,openflag=o_directwd=wd1,sd=sd*,seekpct=0,rdpct=0,xfersize=1Mrd=rd1,wd=wd1,iorate=max,elapsed=600,warmup=30,interval=5#测试结果如下:19:02:15.001 Starting RD=rd1; I/O rate: Uncontrolled MAX; elapsed=600 warmup=30; For loops: NoneJun 04, 2020 interval i/o MB/sec bytes read resp read write resp resp queue cpu% cpu% rate 1024**2 i/o pct time resp resp max stddev depth sys+u sys19:12:46.068 avg_7-126 82.74 82.74 1048576 0.00 289.158 0.000 289.158 2092.803 155.103 23.9 16.3 14.2interval报告间隔序号,测试结果⼀般为除第⼀个时间时间外所有时间间隔加权平均值,如有设置预热时间,则这部分测试数据也需要排除在外如elapsed=600,warmup=30,interval=5,则性能测试结果为第7个间隔到第126个间隔的平均值(avg_7-126)i/o rate每秒读写I/O个数(读写IOPS),可以通过rd运⾏定义参数iorate控制当iorate为max时,以最⼤I/O速率运⾏⼯作负载当iorate为低于最⼤I/0速率的⼀个数值时,可以限制读写速度,以固定I/O速率运⾏⼯作负载MB/sec每秒读写速度(读写带宽)注:按官⽅⼿册说明,bytes i/0每个读写I/O传输数据量(即单个读写I/O⼤⼩),单位为字节B,可以通过wd⼯作负载定义参数xfersize控制read pct读取请求占请求总数的百分⽐,可以通过wd⼯作负载定义参数rdpct控制当rdpct为0时,表⽰测试模型为写当rdpct为100时,表⽰测试模型为读resp time请求响应时间(读写时延),单位为毫秒msread resp读取请求响应时间,单位为毫秒mswrite resp写⼊请求响应时间,单位为毫秒msresp max最⼤请求响应时间,单位为毫秒msresp stddev请求响应时间标准偏差,单位为毫秒msqueue depth读写I/0队列深度cpu% sys+u内核态空间及⽤户态空间CPU占⽤率cpu% sys内核态空间CPU占⽤率 2020年05⽉29⽇ 16:00:16 Clear七、测试说明1、测试总结线程数(thread)⼀般设置为客户端CPU线程数总⼤⼩ grep 'processor' /proc/cpuinfo | sort -u | wc -l测试总数据量需要为客户端内存⼤⼩两倍测试读模型时需要清理客户端缓存信息 sync;echo 3 > /proc/sys/vm/drop2、常见测试参数4M顺序写⽬录深度2、单级⽬录数100、单个⽬录⽂件数100、单⽂件⼤⼩4M、IO块⼤⼩1M、顺序写hd=default,vdbench=/root/vdbench50406,user=root,shell=sshhd=hd1,system=node21hd=hd2,system=node22hd=hd3,system=node23hd=hd4,system=node24hd=hd5,system=node25hd=hd6,system=node26fsd=fsd1,anchor=/client/test01,depth=2,width=100,files=100,size=4M,shared=yesfwd=format,threads=24,xfersize=1mfwd=default,xfersize=1m,fileio=sequential,fileselect=sequential,operation=write,threads=24fwd=fwd1,fsd=fsd1,host=hd1fwd=fwd2,fsd=fsd1,host=hd2fwd=fwd3,fsd=fsd1,host=hd3fwd=fwd4,fsd=fsd1,host=hd4fwd=fwd5,fsd=fsd1,host=hd5fwd=fwd6,fsd=fsd1,host=hd6rd=rd1,fwd=fwd*,fwdrate=max,format=restart,elapsed=600,interval=14M顺序读⽬录深度2、单级⽬录数100、单个⽬录⽂件数100、单⽂件⼤⼩4M、IO块⼤⼩1M、顺序读hd=default,vdbench=/root/vdbench50406,user=root,shell=sshhd=hd1,system=node21hd=hd2,system=node22hd=hd3,system=node23hd=hd4,system=node24hd=hd5,system=node25hd=hd6,system=node26fsd=fsd1,anchor=/client/test02,depth=2,width=100,files=100,size=4M,shared=yesfwd=format,threads=24,xfersize=1mfwd=default,xfersize=1m,fileio=sequential,fileselect=sequential,operation=read,threads=24fwd=fwd1,fsd=fsd1,host=hd1fwd=fwd2,fsd=fsd1,host=hd2fwd=fwd3,fsd=fsd1,host=hd3fwd=fwd4,fsd=fsd1,host=hd4fwd=fwd5,fsd=fsd1,host=hd5fwd=fwd6,fsd=fsd1,host=hd6rd=rd1,fwd=fwd*,fwdrate=max,format=restart,elapsed=600,interval=18M混合读写⽬录深度2、单级⽬录数100、单个⽬录⽂件数100、单⽂件⼤⼩8M、IO块⼤⼩1M、混合读写(读写⽐为6:4)hd=default,vdbench=/root/vdbench50406,user=root,shell=sshhd=hd1,system=node21hd=hd2,system=node22hd=hd3,system=node23hd=hd4,system=node24hd=hd5,system=node25hd=hd6,system=node26fsd=fsd1,anchor=/client/test03,depth=2,width=100,files=100,size=8M,shared=yesfwd=format,threads=24,xfersize=1mfwd=default,xfersize=1m,fileio=random,fileselect=random,rdpct=60,threads=24fwd=fwd1,fsd=fsd1,host=hd1fwd=fwd2,fsd=fsd1,host=hd2fwd=fwd3,fsd=fsd1,host=hd3fwd=fwd4,fsd=fsd1,host=hd4fwd=fwd5,fsd=fsd1,host=hd5fwd=fwd6,fsd=fsd1,host=hd6rd=rd1,fwd=fwd*,fwdrate=max,format=restart,elapsed=600,interval=1
发布者:admin,转转请注明出处:http://www.yc00.com/web/1690377826a340453.html
评论列表(0条)