ceph 读写测试 rados bench

2.1 RADOS 性能测试:使用 Ceph 自带的 rados bench 工具
该工具的语法为:rados bench -p <pool_name> <seconds> <write|seq|rand> -b <block size> -t --no-cleanup

pool_name:测试所针对的存储池
seconds:测试所持续的秒数
<write|seq|rand>:操作模式,write:写,seq:顺序读;rand:随机读
-b:block size,即块大小,默认为 4M
-t:读/写并行数,默认为 16
--no-cleanup 表示测试完成后不删除测试用数据。在做读测试之前,需要使用该参数来运行一遍写测试来产生测试数据,在全部测试结束后可以运行 rados -p <pool_name> cleanup 来清理所有测试数据。

测试实例:
写:
rados bench -p rbd 10 write --no-cleanup

顺序读:
rados bench -p rbd 10 seq

随机读:
rados bench -p rbd 10 rand

删除rados bench命令创建的数据:
rados -p rbd cleanup

查看磁盘io: 
`iotop -P`
rados bench 参数:
cur 是current的缩写 
cur MB/s 当前速度
avg MB/s 平均速度
Bandwidth (MB/sec): 吞吐量
Average IOPS: 平均iops
Stddev IOPS: 标准偏差
Average Latency(s): 平均延迟
磁盘性能指标--IOPS:

IOPS是指单位时间内系统能处理的I/O请求数量,一般以每秒处理的 I/O请求数量为单位,I/O请求通常为读或写数据操作请求。
IOPS和数据吞吐量适用于不同的场合:
读取10000个1KB文件,用时10秒 Throught(吞吐量)=1MB/s ,IOPS=1000 追 求IOPS;
读取1个10MB文件,用时0.2秒 Throught(吞吐量)=50MB/s, IOPS=5 追求吞吐量。

3个osd写测试:

[root@node61 /home/deploy]# ceph osd tree
ID WEIGHT  TYPE NAME       UP/DOWN REWEIGHT PRIMARY-AFFINITY 
-1 0.02939 root default                                      
-2 0.01959     host node61                                   
 0 0.00980         osd.0        up  1.00000          1.00000 
 1 0.00980         osd.1        up  1.00000          1.00000 
-3 0.00980     host node62                                   
 2 0.00980         osd.2        up  1.00000          1.00000 


[root@node61 /home/deploy]# rados bench -p rbd 10 write --no-cleanup
Maintaining 16 concurrent writes of 4194304 bytes to objects of size 4194304 for up to 10 seconds or 0 objects
Object prefix: benchmark_data_node61_6776
  sec Cur ops   started  finished  avg MB/s  cur MB/s last lat(s)  avg lat(s)
    0      16        16         0         0         0           -           0
    1      16        16         0         0         0           -           0
    2      16        16         0         0         0           -           0
    3      16        17         1   1.01002   1.33333     2.75919     2.75919
    4      16        18         2   1.61264         4     4.38175     3.57047
    5      16        20         4   2.67874         8     5.63184     4.60117
    6      16        21         5   2.77513         4     6.27716     4.93637
    7      16        24         8   3.69826        12     7.53663     5.36375
    8      16        27        11   4.54269        12     9.63521     6.43958
    9      16        27        11   4.11617         0           -     6.43958
   10      16        27        11   3.73256         0           -     6.43958
   11      16        27        11   3.43962         0           -     6.43958
   12      16        27        11   3.18896         0           -     6.43958
   13      16        28        12   3.18362       0.8      6.5024     6.44482
   14      16        28        12   2.97979         0           -     6.44482
   15      16        28        12   2.80256         0           -     6.44482
   16      15        28        13   2.81839   1.33333     10.0749     6.72405
   17      15        28        13   2.61604         0           -     6.72405
   18      15        28        13   2.49061         0           -     6.72405
   19      15        28        13   2.36454         0           -     6.72405
2018-08-13 17:52:08.477094 min lat: 2.75919 max lat: 10.0749 avg lat: 6.72405
  sec Cur ops   started  finished  avg MB/s  cur MB/s last lat(s)  avg lat(s)
   20      15        28        13    2.2382         0           -     6.72405
   21      15        28        13    2.1317         0           -     6.72405
   22      15        28        13    2.0433         0           -     6.72405
   23      15        28        13   1.96298         0           -     6.72405
   24      15        28        13   1.88156         0           -     6.72405
   25      15        28        13   1.79303         0           -     6.72405
Total time run:         29.895788
Total writes made:      28
Write size:             4194304
Object size:            4194304
Bandwidth (MB/sec):     3.74635
Stddev Bandwidth:       3.60914
Max bandwidth (MB/sec): 12
Min bandwidth (MB/sec): 0
Average IOPS:           0
Stddev IOPS:            1
Max IOPS:               3
Min IOPS:               0
Average Latency(s):     16.644
Stddev Latency(s):      10.1066
Max latency(s):         29.8954
Min latency(s):         2.75919

5个osd, 读写测试:

[root@node61 /home/deploy]# ceph osd tree
ID WEIGHT  TYPE NAME       UP/DOWN REWEIGHT PRIMARY-AFFINITY 
-1 0.04898 root default                                      
-2 0.01959     host node61                                   
 0 0.00980         osd.0        up  1.00000          1.00000 
 1 0.00980         osd.1        up  1.00000          1.00000 
-3 0.00980     host node62                                   
 2 0.00980         osd.2        up  1.00000          1.00000 
-4 0.01959     host node63                                   
 3 0.00980         osd.3        up  1.00000          1.00000 
 4 0.00980         osd.4        up  1.00000          1.00000 

写:

[root@node61 /home/deploy]# rados bench -p rbd 10 write --no-cleanup
Maintaining 16 concurrent writes of 4194304 bytes to objects of size 4194304 for up to 10 seconds or 0 objects
Object prefix: benchmark_data_node61_7275
  sec Cur ops   started  finished  avg MB/s  cur MB/s last lat(s)  avg lat(s)
    0      16        16         0         0         0           -           0
    1      16        16         0         0         0           -           0
    2      16        16         0         0         0           -           0
    3      16        18         2    2.2145   2.66667     2.95397     2.69119
    4      16        19         3   2.51211         4     3.92393     3.10211
    5      16        20         4   2.76959         4     4.98236     3.57217
    6      16        22         6   3.52704         8     3.18835     3.87848
    7      16        22         6    3.0701         0           -     3.87848
    8      16        23         7   3.00501         2     8.62433     4.55646
    9      16        24         8   2.92811         4     10.2561     5.26891
   10      16        24         8   2.68245         0           -     5.26891
   11      16        24         8   2.47489         0           -     5.26891
   12      16        24         8   2.29712         0           -     5.26891
   13      16        24         8   2.14324         0           -     5.26891
   14      16        24         8    2.0086         0           -     5.26891
   15      16        24         8    1.8899         0           -     5.26891
   16      16        24         8   1.77778         0           -     5.26891
   17      16        24         8   1.68369         0           -     5.26891
   18      11        24        13    2.5991   2.22222     15.0841     9.46222
   19      11        24        13    2.4753         0           -     9.46222
Total time run:         21.014547
Total writes made:      24
Write size:             4194304
Object size:            4194304
Bandwidth (MB/sec):     4.56826
Stddev Bandwidth:       2.23602
Max bandwidth (MB/sec): 8
Min bandwidth (MB/sec): 0
Average IOPS:           1
Stddev IOPS:            0
Max IOPS:               2
Min IOPS:               0
Average Latency(s):     13.5903
Stddev Latency(s):      6.88653
Max latency(s):         21.0134
Min latency(s):         2.42841

顺序读:

[root@node61 /home/deploy]# rados bench -p rbd 10 seq
  sec Cur ops   started  finished  avg MB/s  cur MB/s last lat(s)  avg lat(s)
    0      16        16         0         0         0           -           0
    1      16        28        12   47.9131        48    0.158482   0.0650715
    2      11        28        17   33.9516        20     1.70342    0.538642
Total time run:       2.556315
Total reads made:     28
Read size:            4194304
Object size:          4194304
Bandwidth (MB/sec):   43.8131
Average IOPS          10
Stddev IOPS:          5
Max IOPS:             12
Min IOPS:             5
Average Latency(s):   1.31447
Max latency(s):       2.55521
Min latency(s):       0.00834177

随机读:

[root@node61 /home/deploy]# rados bench -p rbd 10 rand
  sec Cur ops   started  finished  avg MB/s  cur MB/s last lat(s)  avg lat(s)
    0      16        16         0         0         0           -           0
    1      16        53        37   147.801       148   0.0163229   0.0764469
    2      16        63        47   93.9226        40   0.0147333    0.170013
    3      16        75        59   78.6154        48   0.0149613    0.231844
    4      16        86        70   69.9585        44  0.00634351    0.349399
    5      16        93        77   61.5661        28  0.00581248    0.437091
    6      16       110        94    62.636        68  0.00568122    0.485861
    7      16       118       102   58.2577        32  0.00595745    0.628554
    8      16       125       109   54.4737        28     6.38156    0.759248
    9      16       134       118    52.421        36  0.00767004    0.802165
   10      16       146       130   51.9749        48  0.00564792    0.851382
   11      15       146       131   47.6147         4     6.74079    0.896339
   12      15       146       131   43.6481         0           -    0.896339
   13      13       146       133   40.9062         4     7.43297    0.986619
   14      13       146       133   37.9836         0           -    0.986619
   15       9       146       137   36.5177         8      8.8351     1.15867
Total time run:       15.332471
Total reads made:     146
Read size:            4194304
Object size:          4194304
Bandwidth (MB/sec):   38.0891
Average IOPS:         9
Stddev IOPS:          9
Max IOPS:             37
Min IOPS:             0
Average Latency(s):   1.59156
Max latency(s):       10.9095
Min latency(s):       0.00537916

[root@node61 /home/crush_map]# rados bench -p ssd_pool2 10 write --no-cleanup
Maintaining 16 concurrent writes of 4194304 bytes to objects of size 4194304 for up to 10 seconds or 0 objects
Object prefix: benchmark_data_node61_16843
  sec Cur ops   started  finished  avg MB/s  cur MB/s last lat(s)  avg lat(s)
    0      16        16         0         0         0           -           0
    1      16        18         2   7.98697         8    0.929823     0.71896
    2      16        20         4   6.68635         8     1.58145     1.12577
    3      16        25         9   10.6069        20     3.25213     2.10989
    4      16        28        12   10.9237        12     4.33429     2.47111
    5      16        32        16   11.4436        16     2.35905     2.72101
    6      16        36        20   11.4628        16     1.28647     2.78175
    7      16        40        24   11.4596        16     7.67592     3.31162
    8      16        41        25   10.2458         4     1.53436     3.24053
    9      15        44        29   10.5692        16     4.59812     3.49656
   10      14        44        30   10.0204         4      8.4173     3.66058
   11      12        44        32   9.86333         8     2.50584     3.66558
   12      12        44        32   9.15691         0           -     3.66558
   13      12        44        32   8.54536         0           -     3.66558
   14      12        44        32   8.00719         0           -     3.66558
   15       3        44        41    9.6548         9     6.51124     5.17173
Total time run:         17.271009
Total writes made:      44
Write size:             4194304
Object size:            4194304
Bandwidth (MB/sec):     10.1905
Stddev Bandwidth:       6.66405
Max bandwidth (MB/sec): 20
Min bandwidth (MB/sec): 0
Average IOPS:           2
Stddev IOPS:            1
Max IOPS:               5
Min IOPS:               0
Average Latency(s):     5.58109
Stddev Latency(s):      3.95531
Max latency(s):         14.853
Min latency(s):         0.508098

======================================================================================

[root@node61 /home/crush_map]# rados bench -p hdd_pool2 10 write --no-cleanup
Maintaining 16 concurrent writes of 4194304 bytes to objects of size 4194304 for up to 10 seconds or 0 objects
Object prefix: benchmark_data_node61_16926
  sec Cur ops   started  finished  avg MB/s  cur MB/s last lat(s)  avg lat(s)
    0      16        16         0         0         0           -           0
    1      16        16         0         0         0           -           0
    2      16        16         0         0         0           -           0
    3      16        16         0         0         0           -           0
    4      16        17         1  0.973636         1     3.49244     3.49244
    5      16        18         2   1.56592         4      4.3859     3.93917
    6      16        18         2   1.30939         0           -     3.93917
    7      16        18         2   1.12515         0           -     3.93917
    8      16        22         6   2.94814   5.33333     7.80042       6.296
    9      16        23         7   3.06251         4     8.14554     6.56022
   10      16        23         7    2.7603         0           -     6.56022
   11      16        23         7   2.51239         0           -     6.56022
   12      16        23         7   2.30549         0           -     6.56022
   13      16        23         7   2.11749         0           -     6.56022
   14      16        23         7   1.96852         0           -     6.56022
   15      16        24         8   2.08867  0.666667     14.6477     7.57116
   16      16        24         8   1.96067         0           -     7.57116
   17      14        24        10   2.30219         4     9.67359     8.72441
   18      14        24        10   2.17686         0           -     8.72441
Total time run:         19.026622
Total writes made:      24
Write size:             4194304
Object size:            4194304
Bandwidth (MB/sec):     5.04556
Stddev Bandwidth:       1.84444
Max bandwidth (MB/sec): 5.33333
Min bandwidth (MB/sec): 0
Average IOPS:           1
Stddev IOPS:            0
Max IOPS:               1
Min IOPS:               0
Average Latency(s):     12.3805
Stddev Latency(s):      5.38723
Max latency(s):         19.0262
Min latency(s):         3.49244

[root@node61 /home/crush_map]# rados bench -p ssd_pool2 10 seq
  sec Cur ops   started  finished  avg MB/s  cur MB/s last lat(s)  avg lat(s)
    0      16        16         0         0         0           -           0
Total time run:       0.903322
Total reads made:     44
Read size:            4194304
Object size:          4194304
Bandwidth (MB/sec):   194.836
Average IOPS          48
Stddev IOPS:          0
Max IOPS:             0
Min IOPS:             2147483647
Average Latency(s):   0.32224
Max latency(s):       0.622408
Min latency(s):       0.145255

===========================================================

[root@node61 /home/crush_map]# rados bench -p hdd_pool2 10 seq
  sec Cur ops   started  finished  avg MB/s  cur MB/s last lat(s)  avg lat(s)
    0      16        16         0         0         0           -           0
    1      16        24         8   31.9511        32  0.00835768      0.1195
    2      16        24         8    15.985         0           -      0.1195
    3      16        24         8   10.6595         0           -      0.1195
    4      14        24        10   9.99459   2.66667     3.04412    0.704327
    5       9        24        15   11.9945        20     4.94445      2.1102
    6       6        24        18   11.9952        12     5.37769     2.63175
Total time run:       6.093922
Total reads made:     24
Read size:            4194304
Object size:          4194304
Bandwidth (MB/sec):   15.7534
Average IOPS          3
Stddev IOPS:          3
Max IOPS:             8
Min IOPS:             0
Average Latency(s):   3.46288
Max latency(s):       6.09259
Min latency(s):       0.00663387

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,080评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,422评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,630评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,554评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,662评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,856评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,014评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,752评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,212评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,541评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,687评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,347评论 4 331
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,973评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,777评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,006评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,406评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,576评论 2 349

推荐阅读更多精彩内容