3.5. 将 Ceph 文件系统挂载为内核客户端


您可以将 Ceph 文件系统 (CephFS) 挂载为内核客户端,也可以手动挂载或在系统引导时自动挂载。

重要

除了 Red Hat Enterprise Linux 外,还允许在其他 Linux 发行版上运行的客户端,但不受支持。如果在 CephFS 元数据服务器或存储群集的其他部分使用这些客户端,红帽会解决这些问题。如果发现原因在客户端,则该问题必须由 Linux 发行版的内核供应商解决。

先决条件

  • 对基于 Linux 的客户端节点的根级别访问权限.
  • Ceph 监控节点的根级别访问权限.
  • 现有的 Ceph 文件系统.

流程

  1. 配置客户端节点,以使用 Ceph 存储群集。

    1. 启用 Red Hat Ceph Storage 6 Tools 存储库:

      Red Hat Enterprise Linux 8

      [root@client01 ~]# subscription-manager repos --enable=rhceph-6-tools-for-rhel-8-x86_64-rpms
      Copy to Clipboard

      Red Hat Enterprise Linux 9

      [root@client01 ~]# subscription-manager repos --enable=rhceph-6-tools-for-rhel-9-x86_64-rpms
      Copy to Clipboard

    2. 安装 ceph-common 软件包:

      [root@client01 ~]# dnf install ceph-common
      Copy to Clipboard
    3. 在监控节点上登录到 Cephadm shell:

      示例

      [root@host01 ~]# cephadm shell
      Copy to Clipboard

    4. 将 Ceph 客户端密钥环从 Ceph 监控节点复制到客户端节点:

      语法

      scp /ceph.client.ID.keyring root@CLIENT_NODE_NAME:/etc/ceph/ceph.client.ID.keyring
      Copy to Clipboard

      CLIENT_NODE_NAME 替换为 Ceph 客户端主机名或 IP 地址。

      示例

      [ceph: root@host01 /]# scp /ceph.client.1.keyring root@client01:/etc/ceph/ceph.client.1.keyring
      Copy to Clipboard

    5. 将 Ceph 配置文件从 Ceph 监控节点复制到客户端节点:

      语法

      scp /etc/ceph/ceph.conf root@CLIENT_NODE_NAME:/etc/ceph/ceph.conf
      Copy to Clipboard

      CLIENT_NODE_NAME 替换为 Ceph 客户端主机名或 IP 地址。

      示例

      [ceph: root@host01 /]# scp /etc/ceph/ceph.conf root@client01:/etc/ceph/ceph.conf
      Copy to Clipboard

    6. 在客户端节点中,为配置文件设置适当的权限:

      [root@client01 ~]# chmod 644 /etc/ceph/ceph.conf
      Copy to Clipboard
    7. 选择 自动手动 挂载.

手动挂载

  1. 在客户端节点上创建挂载目录:

    语法

    mkdir -p MOUNT_POINT
    Copy to Clipboard

    示例

    [root@client01 ~]# mkdir -p /mnt/cephfs
    Copy to Clipboard

  2. 挂载 Ceph 文件系统.要指定多个 Ceph 监控地址,在 mount 命令中使用逗号将它们分隔,指定挂载点,并设置客户端名称:

    注意

    自 Red Hat Ceph Storage 4.1 起,mount.ceph 可以直接读取密钥环文件。因此,不再需要一个 secret 文件。只需使用 name=CLIENT_ID 指定客户端 ID,mount.ceph 将找到正确的密钥环文件。

    语法

    mount -t ceph MONITOR-1_NAME:6789,MONITOR-2_NAME:6789,MONITOR-3_NAME:6789:/ MOUNT_POINT -o name=CLIENT_ID,fs=FILE_SYSTEM_NAME
    Copy to Clipboard

    示例

    [root@client01 ~]# mount -t ceph mon1:6789,mon2:6789,mon3:6789:/ /mnt/cephfs -o name=1,fs=cephfs01
    Copy to Clipboard

    注意

    您可以配置 DNS 服务器,以便单个主机名解析为多个 IP 地址。然后,您可以将该单一主机名与 mount 命令配合使用,而不必提供逗号分隔的列表。

    注意

    您还可以将 monitor 主机名替换为字符串 :/mount.ceph 将读取 Ceph 配置文件,以确定要连接的 monitor。

    注意

    您可以将 nowsync 选项设置为在 Red Hat Ceph Storage 集群上异步执行文件创建和删除。通过避免这些系统调用的往返延迟而不会影响一致性,这提高了某些工作负载的性能。nowsync 选项需要带有 Red Hat Enterprise Linux 9.0 或更高版本的内核客户端。

    示例

    [root@client01 ~]# mount -t ceph mon1:6789,mon2:6789,mon3:6789:/ /mnt/cephfs -o nowsync,name=1,fs=cephfs01
    Copy to Clipboard

  3. 验证文件系统是否已成功挂载:

    语法

    stat -f MOUNT_POINT
    Copy to Clipboard

    示例

    [root@client01 ~]# stat -f /mnt/cephfs
    Copy to Clipboard

自动挂载

  1. 在客户端主机上,创建用于挂载 Ceph 文件系统的新目录。

    语法

    mkdir -p MOUNT_POINT
    Copy to Clipboard

    示例

    [root@client01 ~]# mkdir -p /mnt/cephfs
    Copy to Clipboard

  2. 编辑 /etc/fstab 文件,如下所示:

    语法

    #DEVICE                                              PATH                      TYPE               OPTIONS
    MON_0_HOST:PORT,            MOUNT_POINT          ceph         name=CLIENT_ID,
    MON_1_HOST:PORT,                                                         ceph.client_mountpoint=/VOL/SUB_VOL_GROUP/SUB_VOL/UID_SUB_VOL,                                                       fs=FILE_SYSTEM_NAME,
    MON_2_HOST:PORT:/q[_VOL_]/SUB_VOL/UID_SUB_VOL,            [ADDITIONAL_OPTIONS]
    Copy to Clipboard

    第一列 设置 Ceph monitor 主机名和端口号。

    第二列 设置挂载点

    第三列为 CephFS 设置文件系统类型,本例中为 ceph

    第四列 设置各种选项,如分别使用 namesecretfile 选项的用户名和机密文件。您还可以使用 ceph.client_mountpoint 选项设置特定的卷、子卷组和子卷。

    设置 _netdev 选项,以确保在网络子系统启动后挂载文件系统,以防止挂起和网络问题。如果您不需要访问时间信息,则设置 noatime 选项可提高性能。

    第五个和第六个列设为零。

    示例

    #DEVICE         PATH                   TYPE    OPTIONS         DUMP  FSCK
    mon1:6789,      /mnt/cephfs            ceph    name=1,            0     0
    mon2:6789,                                     ceph.client_mountpoint=/my_vol/my_sub_vol_group/my_sub_vol/0,
    mon3:6789:/                                    fs=cephfs01,
                                                   _netdev,noatime
    Copy to Clipboard

    Ceph 文件系统将挂载到下一次系统启动时。

    注意

    自 Red Hat Ceph Storage 4.1 起,mount.ceph 可以直接读取密钥环文件。因此,不再需要一个 secret 文件。只需使用 name=CLIENT_ID 指定客户端 ID,mount.ceph 将找到正确的密钥环文件。

    注意

    您还可以将 monitor 主机名替换为字符串 :/mount.ceph 将读取 Ceph 配置文件,以确定要连接的 monitor。

其它资源

  • 请参阅 mount(8)手册页
  • 有关创建 Ceph 用户 的更多详细信息,请参见 Red Hat Ceph Storage Administration Guide 中的 Ceph 用户管理一章。
  • 详情请参阅 Red Hat Ceph Storage File System Guide 中的 Creating Ceph File Systems 部分。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat