ということで前回の記事の続き。事の発端はpdbedit等のコマンドの使い方がわからなくて、やっぱり公式マニュアル見ないとなあ、と眺めていたところvfs_ceph(8)というページに気が付いたことである。そもそも、Linuxにcephをマウントするのもsamba類似の機構が使われているわけで、であればその機能を利用してアクセスしつつそれをそのまま公開したほうがホスト側のファイルシステムが噛まない分だけ性能があがるのでは、ということ。(まあ、cephをsamba経由にしているところですでに性能的にはいまいちそうですが) Linux Clientと同じくceph.confとユーザを準備して、smb.confの共有設定で、以下のように記述すれば接続できそう。
[cephfs] comment = CephFS (tana02-04) path = /samba_fs/ vfs objects = ceph ceph:config_file = /etc/ceph/ceph.conf ceph:user_id = fsuser oplocks = no browsable = yes read only = no create mask = 0777 directory mask = 0777
vfs objects = ceph と書かれている部分がvfs_ceph(8)の利用の宣言。後ろのオプションでconfig fileとユーザ名を指定しておく。oplocksは、前の記事のハングアップの原因ではないかと疑っているもの。性能よりも動作優先で指定することにした。
が、これが動作しない。なんとなくそれっぽいディレクトリが公開されているのだが、アクセスするとエラーになる。かなり時間をかけて追っかけてみたのだけどどうにも動かなかった。ネット情報を探すと以下のような記述もあり、Kernelドライバ経由でFSで見られるようにしてから、sambaで共有する、というのは別におかしなやり方ではなかった、ということらしい。ということで前回の設定にoplocksだけ追加して利用することにした。
先のCEPHFS_MOUNTパスは、カーネルCephFS共有設定でSambaを起動する前にマウントする必要があります。23.3項 「
/etc/fstab
でのCephFSのマウント」を参照してください。この共有設定はLinuxカーネルのCephFSクライアントを使用しています。パフォーマンス上の理由から、この設定をお勧めします。もしくは、Samba
https://documentation.suse.com/ja-jp/ses/7/html/ses-all/cha-ses-cifs.htmlvfs_ceph
モジュールをCephクラスタとの通信に使用することもできます。設定内容を以下に示します。この方法は旧来の用途向けであり、新しいSambaの展開にはお勧めしません。
コメントを残す