2.14. rbdmap サービス
systemd
ユニットファイル、rbdmap.service
は、ceph-common
パッケージに含まれています。rbdmap.service
ユニットは、rbdmap
シェルスクリプトを実行します。
このスクリプトは、1 つ以上の RBD イメージの RADOS Block Device (RBD) のマッピングと解除を自動化しています。スクリプトはいつでも手動で実行できますが、通常のユースケースでは、システムの起動時に RBD イメージを自動的にマウントし、シャットダウン時にアンマウントします。スクリプトでは、RBD イメージをマウントする map
またはマウントを解除する unmap
のいずれか 1 つの引数を使用できます。。スクリプトは設定ファイルを解析します。デフォルトは /etc/ceph/rbdmap
ですが、RBDMAPFILE
という環境変数を使用して上書きできます。設定ファイルの各行は RBD イメージに対応します。
設定ファイルの形式は以下のようになります。
IMAGE_SPEC RBD_OPTS
ここで、IMAGE_SPEC は POOL_NAME / IMAGE_NAME、または IMAGE_NAME だけを指定します。IMAGE_NAME だけを指定する場合は、POOL_NAME は rbd
に設定されます。RBD_OPTS は、基礎となる rbd map
コマンドに渡すオプションのリストです。以下のパラメーターとその値は、コンマ区切りの文字列で指定する必要があります。
OPT1=VAL1,OPT2=VAL2,…,OPT_N=VAL_N
これにより、スクリプトは以下のような rbd map
コマンドを実行します。
構文
rbd map POOLNAME/IMAGE_NAME --OPT1 VAL1 --OPT2 VAL2
コンマまたは等価記号など、オプションおよび値の場合には、これらの値が置き換えられないように、単純にアポストロフィーを使用することができます。
成功すると、rbd map
の操作はイメージを /dev/rbd/rbdX
デバイスにマッピングします。この時点で、udev
ルールがトリガーされ、分かりやすいデバイス名のシンボリックリンク (例: /dev/rbd/POOL_NAME/IMAGE_NAME
) を作成し、実際のマップされたデバイスを参照します。マウントまたはマウント解除を行うには、わかりやすいデバイス名に対応するエントリーを /etc/fstab
ファイルに指定する必要があります。RBD イメージの /etc/fstab
エントリーを作成する場合は、noauto
または nofail
マウントオプションを指定することが推奨されます。これにより、init システムが、デバイスの作成前に、先にマウントするのを防ぎます。
関連情報
-
使用可能なオプションの全リストは、
rbd
の man ページを参照してください。