3.7. 将 Ceph 文件系统挂载为 FUSE 客户端
您可以将 Ceph 文件系统 (CephFS) 作为文件系统挂载到 User Space (FUSE) 客户端中,也可以手动在系统引导时自动挂载。
先决条件
- 对基于 Linux 的客户端节点的根级别访问权限.
- 对 Ceph 监控节点的用户级别访问权限。
- 现有的 Ceph 文件系统.
流程
配置客户端节点,以使用 Ceph 存储群集。
启用 Red Hat Ceph Storage 4 Tools 存储库:
Red Hat Enterprise Linux 7
[root@client ~]# subscription-manager repos --enable=rhel-7-server-rhceph-4-tools-rpms
Red Hat Enterprise Linux 8
[root@client ~]# subscription-manager repos --enable=rhceph-4-tools-for-rhel-8-x86_64-rpms
安装
ceph-fuse
软件包:Red Hat Enterprise Linux 7
[root@client ~]# yum install ceph-fuse
Red Hat Enterprise Linux 8
[root@client ~]# dnf install ceph-fuse
将 Ceph 客户端密钥环从 Ceph 监控节点复制到客户端节点:
语法
scp root@MONITOR_NODE_NAME:/etc/ceph/KEYRING_FILE /etc/ceph/
将 MONITOR_NODE_NAME 替换为 Ceph Monitor 主机名或 IP 地址。
示例
[root@client ~]# scp root@192.168.0.1:/etc/ceph/ceph.client.1.keyring /etc/ceph/
将 Ceph 配置文件从 Ceph 监控节点复制到客户端节点:
语法
scp root@MONITOR_NODE_NAME:/etc/ceph/ceph.conf /etc/ceph/ceph.conf
将 MONITOR_NODE_NAME 替换为 Ceph Monitor 主机名或 IP 地址。
示例
[root@client ~]# scp root@192.168.0.1:/etc/ceph/ceph.conf /etc/ceph/ceph.conf
为配置文件设置适当的权限:
[root@client ~]# chmod 644 /etc/ceph/ceph.conf
- 选择 自动 或 手动 挂载.
手动挂载
在客户端节点上,为挂载点创建一个目录:
语法
mkdir PATH_TO_MOUNT_POINT
示例
[root@client ~]# mkdir /mnt/mycephfs
注意如果您将
path
选项与 MDS 功能一起使用,则挂载点必须在pat
中指定的范围内。使用
ceph-fuse
实用程序挂载 Ceph 文件系统。语法
ceph-fuse -n client.CLIENT_ID MOUNT_POINT
示例
[root@client ~]# ceph-fuse -n client.1 /mnt/mycephfs
注意如果您不使用用户密钥环的默认名称和位置,即
/etc/ceph/ceph.client.CLIENT_ID.keyring
,则使用--keyring
选项指定用户密钥环的路径,例如:示例
[root@client ~]# ceph-fuse -n client.1 --keyring=/etc/ceph/client.1.keyring /mnt/mycephfs
注意使用
-r
选项指示客户端将该路径视为其根路径:语法
ceph-fuse -n client.CLIENT_ID MOUNT_POINT -r PATH
示例
[root@client ~]# ceph-fuse -n client.1 /mnt/cephfs -r /home/cephfs
验证文件系统是否已成功挂载:
语法
stat -f MOUNT_POINT
示例
[user@client ~]$ stat -f /mnt/cephfs
自动挂载
在客户端节点上,为挂载点创建一个目录:
语法
mkdir PATH_TO_MOUNT_POINT
示例
[root@client ~]# mkdir /mnt/mycephfs
注意如果您将
path
选项与 MDS 功能一起使用,则挂载点必须在pat
中指定的范围内。编辑
/etc/fstab
文件,如下所示:语法
#DEVICE PATH TYPE OPTIONS DUMP FSCK HOST_NAME:_PORT_, MOUNT_POINT fuse.ceph ceph.id=CLIENT_ID, 0 0 HOST_NAME:_PORT_, ceph.client_mountpoint=/VOL/SUB_VOL_GROUP/SUB_VOL/UID_SUB_VOL, HOST_NAME:_PORT_:/ [ADDITIONAL_OPTIONS]
第一列 设置 Ceph monitor 主机名和端口号。
第二列 设置挂载点
第三列为 CephFS 设置文件系统类型,本例中为
fuse.ceph
。第四列 设置各种选项,如分别使用
name
和secretfile
选项的用户名和机密文件。您还可以使用ceph.client_mountpoint
选项设置特定的卷、子卷组和子卷。设置_netdev
选项,以确保在网络子系统启动后挂载文件系统,以防止挂起和网络问题。如果您不需要访问时间信息,则设置noatime
选项可提高性能。将第五个和第六个列设为零。
示例
#DEVICE PATH TYPE OPTIONS DUMP FSCK mon1:6789, /mnt/cephfs fuse.ceph ceph.id=1, 0 0 mon2:6789, ceph.client_mountpoint=/my_vol/my_sub_vol_group/my_sub_vol/0, mon3:6789:/ _netdev,defaults
Ceph 文件系统将挂载到下一次系统启动时。
其它资源
-
ceph-fuse(8)手册页
。 - 如需了解有关创建 Ceph 用户的更多详细信息,请参见 Red Hat Ceph Storage Administration Guide 中的 Ceph user management 部分。
- 详情请参阅 Red Hat Ceph Storage File System Guide 中的 Creating a Ceph File System 部分。