转载:ceph性能测试工具总结
摘要:
Cosbench(对象存储测试)下载地址:https://github.com/intel-cloud/cosbench/tree/master
Ceph 官方 cosbench 使用方法
内容:
一、Cosbench用户手册:
0、安装cosbench
#unzip 0.4.2.zip
#apt-get install openjdk-7-jre curl
1、 配置Controller和Driver
Controller:负责管理Driver和添加工作负载
Driver:负责实际的性能测试
Cosbench目录结构如下(版本0.4.2)
Controller和Driver对应配置在conf下,对应controller.conf、driver.conf
在./conf/controller.conf里添加如下配置:
[controller] drivers = 3 log_level = INFO log_file = log/system.log archive_dir = archive
[driver1] name = driver1 url = http://172.93.21.14:18088/driver
[driver2] name = driver2 url = http://172.93.21.15:18088/driver
[driver3] name = driver3 url = http://172.93.21.16:18088/driver |
cosbench的配置文件结构
- 一个workload 可以定义一个或者多个work stages
- 执行多个work stages是顺序的,执行同一个work stage里面的work是可以并行执行的
- 每个work里面,worker是来调整负载的
- 认证可以多个级别的定义,低级别的认证会覆盖高级别的配置
可以通过配置多个work的方式来实现并发,而在work内通过增加worker的方式增加并发,从而实现多对多的访问,worker的分摊是分到了driver上面,注意多work的时候的containers不要重名,划分好bucker的空间。
work相关的说明
- 可以通过写入时间,写入容量,写入iops来控制什么时候结束
- interval默认是5s是用来对性能快照的间隔,可以理解为采样点
- division 控制workers之间的分配工作的方式是bucket还是对象还是none
- 默认全部的driver参与工作,也可以通过参数控制部分driver参与
- 时间会控制执行,如果时间没到,但是指定的对象已经写完了的话就会去进行重复写的操作,这里要注意是进行对象的控制还是时间的控制进行的测试
启动controller
./start-controller.sh
启动Driver:
./start-driver.sh 1172.93.21.14 18088
./start-driver.sh 1172.93.21.15 18088
./start-driver.sh 1172.93.21.16 18088
页面登录地址:
Controller:http://172.93.21.15:19088/controller/index.html
Driver:http://172.93.21.14:18088/driver/index.html
2 、添加工作负载
Contoller页面:
点击config workloads进入配置页面
选择swift测试,认证方式使用swauth,对应的配置信息使用radosgw-admin创建的用户信息,如下:
l swauth配置:
username=testuser:swift;password=ZHPP0EOqd1NVMy7CHjDX6b4DeBHTnK73HN0RnE3M;
url=http://172.93.21.16:7480/auth/1.0
l swift配置:
storage_url=http://172.93.21.16:7480/auth/1.0
l 配置读写选项:
l 点击保存generateconfiguration file,保存为xml格式:
返回主页面,点击 submit new workloads 加载工作负载,开始测试
更多cosbench如何配置请参考下文:
Ceph测试系列(二):ceph性能测试Cosbench工具详细配置(4 of 4)