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


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

重要

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

先决条件

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

流程

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

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

      Red Hat Enterprise Linux 8

      [root@client ~]# subscription-manager repos --enable=rhceph-5-tools-for-rhel-8-x86_64-rpms

      Red Hat Enterprise Linux 9

      [root@client ~]# subscription-manager repos --enable=rhceph-5-tools-for-rhel-9-x86_64-rpms

    2. 安装 ceph-common 软件包:

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

      示例

      [root@host01 ~]# cephadm shell

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

      语法

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

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

      示例

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

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

      语法

      scp /etc/ceph/ceph.conf root@CLIENT_NODE_NAME:/etc/ceph/ceph.conf

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

      示例

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

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

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

手动挂载

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

    语法

    mkdir -p MOUNT_POINT

    示例

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

  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

    示例

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

    注意

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

    注意

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

    注意

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

    示例

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

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

    语法

    stat -f MOUNT_POINT

    示例

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

自动挂载

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

    语法

    mkdir -p MOUNT_POINT

    示例

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

  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]

    第一列 设置 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

    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 user management 部分。
  • 详情请参阅 Red Hat Ceph Storage File System Guide 中的 Creating a Ceph File System 部分。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.