您好,登錄后才能下訂單哦!
Ceph包含在rados bench RADOS存儲集群上執行性能基準測試的命令。該命令將執行寫測試和兩種類型的讀測試。--no-cleanup在測試讀寫性能時,該選項很重要。默認情況下,該rados bench命令將刪除已寫入存儲池的對象。留在這些對象后面允許兩個讀取測試來測量順序和隨機讀取性能。
(1)準備工作,清除所有的文件系統緩存
[root@node141 mnt]# echo 3 > /proc/sys/vm/drop_caches
[root@node141 mnt]# sync
(2)創建一個新的存儲池
[root@node141 mnt]# ceph osd pool create rbd 128 128
(3)測試一下rbd的寫性能,添加 --no-cleanup參數
[root@node141 mnt]# rados bench -p rbd 10 write --no-cleanup
hints = 1
Maintaining 16 concurrent writes of 4194304 bytes to objects of size 4194304 for up to 10 seconds or 0 objects
Object prefix: benchmark_data_node141_28363
sec Cur ops started finished avg MB/s cur MB/s last lat(s) avg lat(s)
0 0 0 0 0 0 - 0
1 16 81 65 259.999 260 0.107901 0.200157
2 16 161 145 289.976 320 0.190659 0.215092
3 16 252 236 314.632 364 0.0807696 0.193549
4 16 351 335 334.958 396 0.191582 0.185652
5 16 445 429 343.157 376 0.158618 0.178393
6 16 548 532 354.621 412 0.162274 0.178178
7 16 652 636 363.378 416 0.190742 0.173784
8 16 753 737 368.448 404 0.15392 0.170866
9 16 863 847 376.391 440 0.103038 0.169129
10 16 964 948 379.144 404 0.138741 0.167306
Total time run: 10.1023
Total writes made: 965
Write size: 4194304
Object size: 4194304
Bandwidth (MB/sec): 382.09
Stddev Bandwidth: 53.3267
Max bandwidth (MB/sec): 440
Min bandwidth (MB/sec): 260
Average IOPS: 95
Stddev IOPS: 13.3317
Max IOPS: 110
Min IOPS: 65
Average Latency(s): 0.167422
Stddev Latency(s): 0.0765119
Max latency(s): 0.668499
Min latency(s): 0.0569634
(4)測試一下,10秒的順序讀取:
[root@node141 mnt]# rados bench -p rbd 10 seq
hints = 1
sec Cur ops started finished avg MB/s cur MB/s last lat(s) avg lat(s)
0 0 0 0 0 0 - 0
1 16 257 241 963.679 964 0.0607106 0.0623843
2 16 549 533 1065.73 1168 0.0450988 0.0583824
3 16 835 819 1091.76 1144 0.044447 0.057111
Total time run: 3.47417
Total reads made: 965
Read size: 4194304
Object size: 4194304
Bandwidth (MB/sec): 1111.06
Average IOPS: 277
Stddev IOPS: 27.8747
Max IOPS: 292
Min IOPS: 241
Average Latency(s): 0.056581
Max latency(s): 0.388605
Min latency(s): 0.015351
(5)測試10秒隨機讀寫性能
[root@node141 mnt]# rados bench -p rbd 10 rand
hints = 1
sec Cur ops started finished avg MB/s cur MB/s last lat(s) avg lat(s)
0 0 0 0 0 0 - 0
1 16 408 392 1566.56 1568 0.0715088 0.038812
2 16 794 778 1554.08 1544 0.0219942 0.0396005
3 16 1211 1195 1591.93 1668 0.125987 0.0389289
4 15 1604 1589 1587.9 1576 0.0497586 0.0392412
5 16 2013 1997 1596.67 1632 0.00512184 0.0388821
6 16 2415 2399 1598.52 1608 0.146983 0.0389842
7 16 2806 2790 1593.56 1564 0.110503 0.0391283
8 16 3186 3170 1584.34 1520 0.0226104 0.0393014
9 15 3598 3583 1591.83 1652 0.0117805 0.0392624
10 16 3965 3949 1579.03 1464 0.0752829 0.0395739
Total time run: 10.0536
Total reads made: 3965
Read size: 4194304
Object size: 4194304
Bandwidth (MB/sec): 1577.54
Average IOPS: 394
Stddev IOPS: 15.6308
Max IOPS: 417
Min IOPS: 366
Average Latency(s): 0.0397174
Max latency(s): 0.353027
Min latency(s): 0.00414538
(6)要增加并發讀取和寫入的數量,請使用-t 默認為16個現場的選項,-b參數可以調整正在寫入的對象的大小,默認對象大小為4MB。安全的最大對象為16MB.
添加 --run-name <label> 選項以控制在基準測試期間寫入的對象的名稱。多個rados bench命令可以同時通過改變跑出--run-name標簽每個運行命令的實例。這可以防止在多個客戶端嘗試訪問同一對象并允許不同客戶端訪問不同對象時可能發生的潛在I / O錯誤。--run-name在嘗試模擬真實世界的工作負載時,該選項也很有用。例如:
[root@node141 mnt]# rados bench -p rbd 10 write -t 4 --run-name zabbix71
hints = 1
Maintaining 4 concurrent writes of 4194304 bytes to objects of size 4194304 for up to 10 seconds or 0 objects
Object prefix: benchmark_data_node141_28450
sec Cur ops started finished avg MB/s cur MB/s last lat(s) avg lat(s)
0 0 0 0 0 0 - 0
1 4 40 36 143.992 144 0.065704 0.103059
2 4 86 82 163.981 184 0.0763531 0.0955013
3 4 126 122 162.641 160 0.106746 0.0953542
4 4 173 169 168.972 188 0.0872597 0.0934176
5 4 218 214 171.171 180 0.170851 0.0927783
6 4 255 251 167.305 148 0.0943133 0.093864
7 4 294 290 165.686 156 0.0976048 0.0959294
8 4 340 336 167.971 184 0.0882485 0.0946923
9 4 386 382 169.748 184 0.0703278 0.0933611
10 4 430 426 170.37 176 0.0623777 0.0933391
Total time run: 10.1109
Total writes made: 431
Write size: 4194304
Object size: 4194304
Bandwidth (MB/sec): 170.51
Stddev Bandwidth: 16.6747
Max bandwidth (MB/sec): 188
Min bandwidth (MB/sec): 144
Average IOPS: 42
Stddev IOPS: 4.16867
Max IOPS: 47
Min IOPS: 36
Average Latency(s): 0.0935851
Stddev Latency(s): 0.0433054
Max latency(s): 0.579434
Min latency(s): 0.0533891
Cleaning up (deleting benchmark objects)
Removed 431 objects
Clean up completed and total clean up time :1.62203
(7) 刪除rados bench 命令創建的數據
[root@node141 mnt]# rados -p rbd cleanup
Removed 965 objects
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。