无配置挂载,指定IP挂载
1. 前提
# 写入keyring到文件
echo -e "[client.admin]\nkey = AQDk18FgMo7NABAA4ufuz3O6/0lE4vsVgHs1yQ==" > /var/cephfs_keyring
2. 命令行
# fuse挂载
ceph-fuse -m 10.10.10.237:6789,10.10.10.238:6789 --no-mon-config -n client.admin -k /var/cephfs_keyring -r /testcase /mnt/cephfs/
3. fstab
/etc/fstab
none /opt/fuseroot fuse.ceph ceph.name=client.admin,ceph.keyring=/var/cephfs_keyring,ceph.client_mountpoint=/test,ceph.mon_host=10.10.10.237:6789,_netdev,defaults 0 0
写完配置文件 mount -a
挂载,挂载完 ps -ef|grep fuse
就能看到实际上也是掉用了命令行的挂载方式
ps -ef|grep ceph-fuse
root 1201 1 0 19:40 ? 00:00:00 ceph-fuse --name=client.admin --keyring=/var/cephfs_keyring --client_mountpoint=/test --mon_host=10.10.10.237:6789 /opt/fuseroot -o rw
4. 关于fuse的挂载参数
ceph-fuse man解释的比较少,可用参数比较少
You can pass any valid ceph-fuse option to the command line this way.
-
fstab中支持ceph-fuse带
--
的参数例如--client_mountpoint
--conf
,些fstab参数时用ceph.client_mountpoint
这种形式--client_mountpoint
: 指定cephfs的目录路径
那么从文档中看出能用的就这两个了,ceph的源码中发现了以下几个参数
--keyring
:指定keyring文件--client_mountpoint
: 指定客户端超市时间--mon_host
: 指定mon地址,但是fstab里面好像只支持字符串的值,所以只能写一个,这样的话写的这个mon挂了,就连不上了--no-mon-config
: 指定不适用配置文件,值为布尔类型,实际测试没有通过配置检查no_mon_config