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 Block Device Guide』の「Block Device Commands」セクションを参照してください。
Ceph ブロックデバイスの作成
rbd
カーネルモジュールをロードしていない場合はroot
としてロードします。modprobe rbd
# modprobe rbd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow root
としてtestbench
プールに 1 GB のrbd
イメージファイルを作成します。rbd create image01 --size 1024 --pool testbench
# rbd create image01 --size 1024 --pool testbench
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記ブロックデバイスイメージの作成時には、
layering
、object-map
、deep-flatten
、journaling
、exclusive-lock
、およびfast-diff
機能はデフォルトで有効になります。Red Hat Enterprise Linux 7.2 および Ubuntu 16.04 では、カーネル RBD クライアントを使用するユーザーはブロックデバイスイメージをマッピングできなくなります。最初に、
layering
以外のこれらの機能をすべて無効にする必要があります。構文
rbd feature disable <image_name> <feature_name>
# rbd feature disable <image_name> <feature_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例
rbd feature disable image1 journaling deep-flatten exclusive-lock fast-diff object-map
# rbd feature disable image1 journaling deep-flatten exclusive-lock fast-diff object-map
Copy to Clipboard Copied! Toggle word wrap Toggle overflow rbd create
コマンドで--image-feature layering
オプションを使用すると 、新規に作成されるブロックデバイスイメージのlayering
のみが有効になります。詳細は Red Hat Ceph Storage 3.3『Release Notes』を参照してください。
これらの機能はすべて、ユーザー空間 RBD クライアントを使用してブロックデバイスイメージにアクセスするユーザーに対して機能します。
root
として、イメージファイルをデバイスファイルにマッピングします。rbd map image01 --pool testbench --name client.admin
# rbd map image01 --pool testbench --name client.admin
Copy to Clipboard Copied! Toggle word wrap Toggle overflow root
として、ブロックデバイスにext4
ファイルシステムを作成します。mkfs.ext4 /dev/rbd/testbench/image01
# mkfs.ext4 /dev/rbd/testbench/image01
Copy to Clipboard Copied! Toggle word wrap Toggle overflow root
として、新しいディレクトリーを作成します。mkdir /mnt/ceph-block-device
# mkdir /mnt/ceph-block-device
Copy to Clipboard Copied! Toggle word wrap Toggle overflow root
として、ブロックデバイスを/mnt/ceph-block-device/
にマウントします。mount /dev/rbd/testbench/image01 /mnt/ceph-block-device
# mount /dev/rbd/testbench/image01 /mnt/ceph-block-device
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ブロックデバイスに対して書き込みパフォーマンスのテストを実行します。
rbd bench-write image01 --pool=testbench
# rbd bench-write image01 --pool=testbench
例