cosbench使用文档

描述

COSBench是Intel团队基于java开发,用于存储的测试工具,全称是Cloud object Storage Bench;

COSBench分控制台和发起请求的driver,driver可以分布式部署,可以支持swift、s3、Openstack等接口;

安装

下载:https://github.com/intel-cloud/cosbench

解压到任意目录,然后进入到对应目录0.4.2.c4,有COSBenchUserGuide.pdf使用手册;

使用

启动

压测时,需要一个controller、一个或者多个driver。

(1)启动controller

下面以启动两个driver为例,看controller的配置文件如下:

[root@node2 0.4.2.c4]# vim conf/controller.conf 

[controller]
drivers = 2
log_level = INFO
log_file = log/system.log
archive_dir = archive

[driver1]
name = driver1
url = http://192.168.231.212:18088/driver

[driver2]
name = driver2
url = http://192.168.231.213:18088/driver

如果要增加driver,就按照上述格式补充,上图表示该controller管理两个driver;

然后执行 sh start-controller.sh 启动controller即可。

(2)启动driver

在上述controller指定的driver对应的机器上,执行sh start-driver.sh即可,其他不需要改变;

 

# 登录控制界面:

在浏览器输入:

http://127.0.0.1:19088/controller/index.html

注意127.0.0.1替换成所在的controller ip;

 

xml测试配置

按照上述步骤启动controller和driver之后,只是开启了客户端服务,还没有往存储系统中做读写数据等操作;

点击“submit new workloads”,从本地选择xml测试配置文件之后,才开始测试;下面主要简要描述配置文件的格式和写法(更多细节请参考用户手册),如下是一份xml模板:

<?xml version="1.0" encoding="UTF-8"?>
<workload name="write-730KB" description="730KB pure writes">
<storage type="s3" config="accesskey=LK8OVJTCFHXPT9LZDX53;secretkey=TyRbgZKBFqTGlu2bo8Me2AXgT9Bl3PGfBxgekPbH;endpoint=http://192.168.242.211:7480" />

  <workflow>
  
<!--注释内容######################## 
    <workstage name="init">
          <work name="init" type="init" workers="1" interval="10"
                division="container" runtime="0" rampup="0" rampdown="0"
                config="cprefix=fxl2;containers=r(1,1)">
                <auth type="none" config=""/>
                <storage type="s3" config="accesskey=LK8OVJTCFHXPT9LZDX53;secretkey=TyRbgZKBFqTGlu2bo8Me2AXgT9Bl3PGfBxgekPbH;endpoint=http://192.168.242.211:7480"/>
                <operation type="init" ratio="100" division="container"
                    config="cprefix=fxl2;containers=r(1,1);objects=r(0,0);sizes=c(0)B;" id="none"/>
		  </work>
    </workstage>
########################-->

    <workstage name="WriteJob">
          <work name="211" type="write" workers="50" interval="10"
          		division="object" runtime="1800" rampup="0" rampdown="0"
          		config="cprefix=fxl3;oprefix=bb;containers=r(1,1);objects=r(1,1000000);sizes=c(730)KB">
                <auth type="none" config=""/>
                  <storage type="s3" config="accesskey=LK8OVJTCFHXPT9LZDX53;secretkey=TyRbgZKBFqTGlu2bo8Me2AXgT9Bl3PGfBxgekPbH;endpoint=http://192.168.242.211:7480"/>
                  <operation type="write" ratio="100" division="object"
                    config="cprefix=fxl3;oprefix=bb;containers=r(1,1);objects=r(1,1000000);sizes=c(730)KB;createContainer=false;" 
                    	id="none" />
          </work>
		  <work name="212" type="write" workers="50" interval="10"
          		division="object" runtime="1800" rampup="0" rampdown="0"
          		config="cprefix=fxl3;oprefix=bb;containers=r(1,1);objects=r(1000001,2000000);sizes=c(730)KB">
                <auth type="none" config=""/>
                  <storage type="s3" config="accesskey=LK8OVJTCFHXPT9LZDX53;secretkey=TyRbgZKBFqTGlu2bo8Me2AXgT9Bl3PGfBxgekPbH;endpoint=http://192.168.242.212:7480"/>
                  <operation type="write" ratio="100" division="object"
                    config="cprefix=fxl3;oprefix=bb;containers=r(1,1);objects=r(1000001,2000000);sizes=c(730)KB;createContainer=false;" 
                    	id="none" />
          </work>
    </workstage>

	
<!--注释内容######################## 
	 <workstage name="cleanup" closuredelay="0" config="">
		<work name="cleanup" type="cleanup" workers="2" interval="10"
			division="object" runtime="0" rampup="0" rampdown="0"
			config="cprefix=fxl;containers=r(1,200);objects=r(1,1000);">
			<auth type="none" config=""/>
			<storage type="s3" config="accesskey=LK8OVJTCFHXPT9LZDX53;secretkey=TyRbgZKBFqTGlu2bo8Me2AXgT9Bl3PGfBxgekPbH;endpoint=http://192.168.242.211:7480"/>
			<operation type="cleanup" ratio="100" division="object"
				config="cprefix=fxl;containers=r(1,200);objects=r(1,1000);deleteContainer=false;" id="none"/>
		</work>
	</workstage>
	
	<workstage name="dispose" closuredelay="0" config="">
		<work name="dispose" type="dispose" workers="2" interval="10"
			division="container" runtime="0" rampup="0" rampdown="0"
			config="cprefix=mycontainers;containers=r(1,200);">
			<auth type="none" config=""/>
			<storage type="s3" config="accesskey=LK8OVJTCFHXPT9LZDX53;secretkey=TyRbgZKBFqTGlu2bo8Me2AXgT9Bl3PGfBxgekPbH;endpoint=http://192.168.242.211:7480"/>
			<operation type="dispose" ratio="100"
				division="container"
				config="cprefix=mycontainers;containers=r(1,200);objects=r(0,0);sizes=c(0)B;" id="none"/>
		</work>
	</workstage>
########################-->

  </workflow>
</workload>

基本格式如下:

每个workflow可以多个workstage,每个workstage下可以有多个work;

每钟workstage对应一个工作类别,有work下的type字段标识,总共有init(创建bucket),write(创建object写数据)、cleanup(删除object)、dispose(删除bucket)。

work下有很多其他配置,具体可以参考用户手册;

<workflow>
	<workstage name="init">
	  <work>name="cleanup" type="cleanup"</work>
	  <work>name="cleanup" type="cleanup"</work>
    </workstage>
	
	<workstage name="WriteJob">
	  <work>name="write" type="write"</work>
    </workstage>
	
	<workstage name="cleanup">
	  <work>name="cleanup" type="cleanup"</work>
    </workstage>
	
	<workstage name="dispose">
	  <work>name="dispose" type="dispose"</work>
    </workstage>
</workflow>

 

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值