cephとwindowsを繋げるにはcephをmountしたマシンでsmbを立てて、そのsmbにアクセスする.
あるいは、
https://docs.ceph.com/en/latest/install/windows-install/にあるようにwindowsから直接cephにアクセスする方法もある.
ここではwindows11pro(23H2)にアプリを入れて、cephと直接つなげるようにしてみる.
まずは、https://docs.ceph.com/en/latest/install/windows-install/に従って
以上でアプリのインストールは完了
「ceph.conf」ファイルを用意します。場所は「%ProgramData%\ceph\ceph.conf」で「C:\ProgramData\ceph\ceph.conf」となります
[global]
log to stderr = true
; Uncomment the following in order to use the Windows Event Log
; log to syslog = true
run dir = C:/ProgramData/ceph/out
crash dir = C:/ProgramData/ceph/out
; Use the following to change the cephfs client log level
; debug client = 2
[client]
keyring = C:/ProgramData/ceph/keyring
; log file = C:/ProgramData/ceph/out/$name.$pid.log
admin socket = C:/ProgramData/ceph/out/$name.$pid.asok
; client_permissions = true
; client_mount_uid = 1000
; client_mount_gid = 1000
[global]
mon host = [v2:192.168.0.49:3300/0,v1:192.168.0.49:6789/0] [v2:192.168.0.47:3300/0,v1:192.168.0.47:6789/0] [v2:192.168.0.48:3300/0,v1:192.168.0.48:6789/0]
そして「ceph.conf」の中でkeyringを「C:/ProgramData/ceph/keyring」に配置しているので、このファイルも作ります。
windows向けなので新たに keyring を作りました
[root@ceph01 ~]# ceph fs authorize emfs client.win11 / rwp
[client.win11]
key = AQCMqsJngYVqJhAAz7tE42DIrFIVmkoX/4PE9w==
caps mds = "allow rwp fsname=emfs"
caps mon = "allow r fsname=emfs"
caps osd = "allow rw tag cephfs data=emfs"
[root@ceph01 ~]#
この中身を「C:/ProgramData/ceph/keyring」にコピーします
ネットワークドライブを作る感じになります。
コマンドプロンプトを立ち上げて
ceph-dokan --id win11 -l x
これでドライブXが作られてemfsに繋がります。
ただ、これはroot権限で、ceph.confのclient_mount_uid/client_mount_gidでアクセスユーザを制限した方がいいのかも。
面倒ならsmbで共有させたほうがアクセス管理的には楽かな.