Ceph fuse挂载

无配置挂载,指定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
### ceph-fuse命令参数解析 #### 基本语法 `ceph-fuse` 是用于将 Ceph 文件系统通过 FUSE (Filesystem in Userspace) 接口挂载至本地系统的工具。基本使用格式如下: ```bash ceph-fuse [options...] <mountpoint> ``` 其中 `<mountpoint>` 表示目标挂载点路径。 #### 主要选项解释 - `-m mon_addr[:port], --mon_host=mon_addr[:port]` 指定监视器节点地址及其端口号,默认情况下Ceph集群中的Monitor服务监听于6789端口。此参数允许用户连接特定的监控服务器实例[^2]。 - `--name=name, -n name` 设置客户端名称,通常形式为`type.id`,例如`client.admin`表示管理员身份登录。这有助于权限管理和认证过程[^4]。 - `-k keyfile, --key=keyfile` 提供包含访问密钥的文件位置给客户端程序,以便完成鉴权操作。该文件应遵循Keyring格式并妥善保管安全。 - `--no-mon-config` 不自动加载来自Monitors的服务配置信息。当希望完全控制启动行为而不依赖默认设置时可启用此项。 - `-r root[,root...], --rados-root=root[,root...]` 定义RADOS对象存储层次结构下的根目录路径,可以有多个逗号分隔的不同路径作为参数传递。 - `-f, --foreground` 让进程保持在前台运行而不是后台守护模式下工作,便于调试期间查看日志输出。 - `-d, --debug` 启用更详细的诊断消息打印功能,对于排查问题非常有用。 #### 实际应用案例展示 下面给出一段完整的命令行例子来说明如何利用上述提到的各种开关组合实现具体需求: ```bash ceph-fuse \ -m 10.10.10.237:6789,10.10.10.238:6789 \ -n client.admin \ -k /var/cephfs_keyring \ -r /testcase \ /mnt/cephfs/ ``` 这段脚本实现了向两台位于不同IP地址上的监视器发起请求,并以管理账户的身份携带预存好的秘钥文件进行验证,最终把远程共享空间映射到了宿主机内的 `/mnt/cephfs/` 路径之下。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值