对象存储的压测如何做?

我们公司对于对象存储的选型,基本上已经定了ceph,目前正在大力研究ceph ,对于后续的非结构化,及结构化数据今后将准备往ceph 分布式存储上批量应用,对于这方面有几个问题1: 因为用的14.2.10版的, 可参考的案列不是很多, 目前我们用bluestore 存储 ,压测效果 不是很理想, ...显示全部

我们公司对于对象存储的选型,基本上已经定了ceph,目前正在大力研究ceph ,对于后续的非结构化,及结构化数据今后将准备往ceph 分布式存储上批量应用,对于这方面有几个问题
1: 因为用的14.2.10版的, 可参考的案列不是很多, 目前我们用bluestore 存储 ,压测效果 不是很理想, 想准备采用分层缓存, 将ssd 做前端缓存池, sata 做后端存储池, 这种方案 较之前方法,在性能上会不会有很大提升,?因为之前  压测结果来看, 4k随机读iops 能达到 12w, 但随机写的iops 只能达到 5000多 ,这方面不知道为什么会差这么多?
2: 由于我 对于压测方面 也没什么经验, 对于块存储,文件存储,对象存储方面的压测能否在这方吗分享下经验,以下是我自己摸索的, 请指教:
1):块存储: 用fio 
随机读
fio --filename=./test -iodepth=64 -ioengine=libaio -direct=1 -rw=randread -bs=4k -size=2G -numjobs=64 -runtime=30 -group_reporting -name=test-rand-read
随机写
fio --filename=./test -iodepth=64 -ioengine=libaio -direct=1 -rw=randwrite -bs=4k -size=2G -numjobs=64 -runtime=30 -group_reporting -name=test-rand-write
2):文件存储:用的也是 fio  ,对于文件存储的压测,在引擎这块需要特殊选择吗?
3):对象存储: 用的是 cosbench , 这个压测 结果 ,我们重点关注什么参数结果了 ? 是Throughput(op/s )还是 bandwidth(B/s) ?

收起
参与10

查看其它 3 个回答zhongshi的回答

zhongshizhongshi产品总监XSKY

使用对象存储,先从自身业务出发,明确要存的数据类型和数据大小范围;海量小文件肯定是主要关注ops,而且要看平均时延,对小文件的性能,开源Ceph的优化肯定是不足的,另外现在的cache tier技术,所有数据都会过cache,很容易就会把cache层冲爆;对于比较大的文件类型,关注throughput就好;对象存储底层数据落盘会落大块,所以如果小文件肯定会有实际存储空间的浪费。

对于硬件的配置,比如cpu内存SSD,都是影响测试数值的关键因素,感觉性能不足,还要检查测试用例和测试模型,跟实际硬件配置综合考量。

软件开发 · 2020-07-24
浏览4676

回答者

zhongshi
产品总监XSKY
擅长领域: 存储灾备分布式架构

zhongshi 最近回答过的问题

回答状态

  • 发布时间:2020-07-24
  • 关注会员:5 人
  • 回答浏览:4676
  • X社区推广