Software Defined Storage

Ceph Storage Block Device 성능 테스트 방법 (RBD Benchmark)

DaehanCNI 2024. 4. 29. 09:00

 Ceph Storage의 Block Device (RBD) 에 대한 성능 테스트 방법입니다. 

 

1. pool 생성

rbd을 지원하는 pool 생성 또는 기존 pool에 rbd 타입을 추가한다. 

 

2. pool 에 image 생성

 

3. image 쓰기 성능 테스트 

[ceph: root@cnode1 /]# rbd bench --io-type write image01 --pool=testbench
bench  type write io_size 4096 io_threads 16 bytes 1073741824 pattern sequential
  SEC       OPS   OPS/SEC   BYTES/SEC
    1      6256   4850.97    19 MiB/s
    2      6448   3178.13    12 MiB/s
    3      6640   2216.56   8.7 MiB/s
    4      6944   1678.81   6.6 MiB/s
    5      7232   1402.82   5.5 MiB/s
    6      7744   310.144   1.2 MiB/s
    7      8176   329.284   1.3 MiB/s
    8      8480   347.975   1.4 MiB/s
    9      8784   363.295   1.4 MiB/s
   10      9328   424.914   1.7 MiB/s
   11      9920   438.025   1.7 MiB/s
   12     10352   444.648   1.7 MiB/s
   13     10720   465.236   1.8 MiB/s
   14     11120   481.474   1.9 MiB/s
   15     11440   422.252   1.6 MiB/s
   16     11888   397.595   1.6 MiB/s
   17     12400   398.076   1.6 MiB/s
   18     12880   428.933   1.7 MiB/s
   19     13312   431.517   1.7 MiB/s

   ... ... ... ...

  168    256576   1237.57   4.8 MiB/s
  169    257616   1088.11   4.3 MiB/s
  170    259456   1293.32   5.1 MiB/s
  171    261200   1393.04   5.4 MiB/s
elapsed: 173   ops: 262144   ops/sec: 1510.07   bytes/sec: 5.9 MiB/s

 

동일한 기능으로 다음과 같은 command 사용이 가능하다.

[ceph: root@cnode1 /]# rbd bench-write image02 --pool=testbench
rbd: bench-write is deprecated, use rbd bench --io-type write ...
bench  type write io_size 4096 io_threads 16 bytes 1073741824 pattern sequential
  SEC       OPS   OPS/SEC   BYTES/SEC
    1      6352   5475.76    21 MiB/s
    2      6608    2883.9    11 MiB/s
    3      6880   2290.38   8.9 MiB/s
    
    ... ... ... ...

 

쓰기 성능 테스트를 완료하고 image에 대한 상태를 확인할 수 있다. 

 

4. image 읽기 성능 테스트 

[ceph: root@cnode1 /]# rbd bench --io-type read image01 --pool=testbench       
bench  type read io_size 4096 io_threads 16 bytes 1073741824 pattern sequential
  SEC       OPS   OPS/SEC   BYTES/SEC
    1       144   149.821   599 KiB/s
    2       832   419.618   1.6 MiB/s
    3      1888   634.914   2.5 MiB/s
    4      2448   614.652   2.4 MiB/s
    5      3728   747.198   2.9 MiB/s
    6      4448   867.616   3.4 MiB/s
    7      4736   768.245   3.0 MiB/s
    8      4976   614.195   2.4 MiB/s
    9      5280   559.826   2.2 MiB/s
   10      5504   355.718   1.4 MiB/s
   11      5696    251.07  1004 KiB/s
   12      5904   238.381   954 KiB/s
   13      6176   239.248   957 KiB/s
   14      6624   272.245   1.1 MiB/s
   15      7376   374.346   1.5 MiB/s
   16      7904   437.946   1.7 MiB/s

  ... ... ... ...

  313    258464    991.83   3.9 MiB/s
  314    259488   924.239   3.6 MiB/s
  315    260768   1033.04   4.0 MiB/s
  316    261280   1075.02   4.2 MiB/s
elapsed: 316   ops: 262144   ops/sec: 827.236   bytes/sec: 3.2 MiB/s

 

5. image 삭제

[ceph: root@cnode1 /]# rbd list -p testbench
image01
image02
[ceph: root@cnode1 /]# rbd -p testbench rm image02
Removing image: 100% complete...done.
[ceph: root@cnode1 /]# rbd list -p testbench
image01

 

 

Original

https://www.ibm.com/docs/en/storage-ceph/7?topic=benchmark-benchmarking-ceph-block-performance

 

Benchmarking Ceph block performance

Ceph includes the rbd bench-write command to test sequential writes to the block device measuring throughput and latency. The default byte size is 4096, the default number of I/O threads is 16, and the default total number of bytes to write is 1 GB. These

www.ibm.com