Ceph Storage Clusterの構築が完了した時点で、3つのプール「data」「metadata」「rbd」が作成されています。
「data」はファイルインターフェースのデータ用、「metadata」はファイルインターフェースのメタデータ用、「rbd」はブロックインターフェースのボリューム用です。
ブロックインターフェースでの接続を確認します。
rbdコマンドとrbdカーネルモジュールを使用します。まず、rbdカーネルモジュールをロードし、rbdコマンドでボリュームを作成、接続するとブロックデバイスが作成されます。
foo という名前で4096Mバイトの容量のボリュームを作成します。
rbdカーネルモジュールをロードします。
ボリュームfooをクライアントに接続します。
ブロックデバイス/dev/rbd/rbd/fooをアクセスすることでブロックインターフェースが使用可能になりました。
次にファイルインターフェースでの接続を確認します。cephカーネルモジュールとmount(mount.ceph)コマンドを使用します。ファイルシステムを構築するステップはありません。
ceph カーネルモジュールをロードします。
クライアントの名前空間の「/mnt/mycephfs」ディレクトリにマウントします。マウント元は「<いずれかのmonitorのIPアドレス>:6789:/」を指定します。
ここではhead-01のIPアドレス(10.100.0.11)を選択します。
現状、一つのCeph Storage Clusterごとに定義できるファイルシステムは一個だけです。また、カーネルモジュール(ceph.ko)を使用するマウントの場合、サブディレクトリをマウント元に指定したマウントはできません。つまり、常にファイルシステム全体をクライアントの名前空間内にマウントします。FUSEを使用するマウント(ceph-fuse)の場合、マウント元にサブディレクトリを(-rオプションで)指定したマウントが可能です。
クライアントから「/mnt/mycephfs」ディレクトリ配下をアクセスすることでファイルインターフェースが使用可能になりました。なお、現状では、ファイルインターフェースはPOSIXセマンティクスからの逸脱があります。詳細はCeph Documentationの「DIFFERENCES FROM POSIX」のページを確認してください。
VA Linux Systems Japan株式会社 クラウド基盤エキスパート。
UNIX系オペレーティングシステムの開発において、ローカルファイルシステム、ネットワークファイルシステム、論理ボリュームマネージャーなどを担当。
HPC向けネットワークファイルシステム、ディスクアレイ、Flash SSDアレイストレージの開発にも携わるなど、ストレージ開発のスペシャリストとして活躍する。
また、InfiniBandやiWarp(10GbE)などのRDMAネットワーク向けのファイルシステムプロトコル策定、リファレンス実装の分野におけるOSS開発の実績を持つ。
Copyright © ITmedia, Inc. All Rights Reserved.