Menu Close

Red Hat Training

A Red Hat training course is available for Red Hat Ceph Storage

7.3. 块设备

Ceph 包含 rbd bench-write 命令,用于测试后续写入到块设备的吞吐量和延迟。默认字节大小为 4096,默认 I/O 线程数为 16,写入的默认字节总数为 1 GB。这些默认值可分别通过 --io-size--io-threads--io-total 选项进行修改。有关 rbd 命令的更多信息,请参阅 Red Hat Ceph Storage 3 Ceph 块设备指南中的块设备 命令 部分。

创建 Ceph 块设备

  1. 作为 root,加载 rbd 内核模块(如果还没有载入):

    # modprobe rbd
  2. 作为 root,在 testbench 池中创建一个 1 GB rbd 镜像文件:

    # rbd create image01 --size 1024 --pool testbench
    注意

    在创建块设备镜像时,这些功能会被默认启用: layeringobject-mapdeep-flattenjournalingexclusive-lockfast-diff

    在红帽企业 Linux 7.2 和 Ubuntu 16.04 上,利用内核 RBD 客户端的用户将无法映射块设备映像。您必须首先禁用所有这些功能,但 layering 除外。

    语法

    # rbd feature disable <image_name> <feature_name>

    示例

    # rbd feature disable image1 journaling deep-flatten exclusive-lock fast-diff object-map

    rbd create 命令中使用 --image-feature layering 选项只会在新创建的块设备镜像中启用 layering

    这是一个已知问题,请参阅 Red Hat Ceph Storage 3.3 发行注记. 以了解更多详细信息。

    所有这些功能适用于利用用户空间 RBD 客户端访问块设备镜像的用户。

  3. 作为 root,将镜像文件映射到设备文件:

    # rbd map image01 --pool testbench --name client.admin
  4. 作为 root,在块设备中创建 ext4 文件系统:

    # mkfs.ext4 /dev/rbd/testbench/image01
  5. 作为 root,创建新目录:

    # mkdir /mnt/ceph-block-device
  6. 作为 root,将块设备挂载到 /mnt/ceph-block-device/ 下:

    # mount /dev/rbd/testbench/image01 /mnt/ceph-block-device

针对块设备执行写入性能测试

# rbd bench-write image01 --pool=testbench

示例

bench-write  io_size 4096 io_threads 16 bytes 1073741824 pattern seq
  SEC       OPS   OPS/SEC   BYTES/SEC
    2     11127   5479.59  22444382.79
    3     11692   3901.91  15982220.33
    4     12372   2953.34  12096895.42
    5     12580   2300.05  9421008.60
    6     13141   2101.80  8608975.15
    7     13195    356.07  1458459.94
    8     13820    390.35  1598876.60
    9     14124    325.46  1333066.62
    ..