3.4. 使用纠删代码创建 Ceph 文件系统(技术预览)


默认情况下,Ceph 将复制池用于数据池。如果需要,您还可以添加额外的纠删代码数据池。与由复制池支持的 Ceph 文件系统相比,由纠删代码池支持的 Ceph 文件系统 (CephFS) 使用较少的总存储。尽管纠删代码池使用较少的总存储,它们也使用的内存和处理器资源要多于复制池。

重要

使用纠删代码池的 Ceph 文件系统是一项技术预览功能。技术预览功能不包括在红帽生产服务级别协议(SLA)中,且其功能可能并不完善。因此,红帽不建议在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。如需了解更多详细信息,请参阅红帽技术预览功能的支持范围。

重要

对于生产环境,红帽建议使用复制池作为默认数据池。

先决条件

  • 一个正在运行的 Red Hat Ceph Storage 集群。
  • 正在运行的 CephFS 环境。
  • 使用 BlueStore OSD 的池。
  • 对 Ceph 监控节点的用户级别访问权限。

流程

  1. 为 CephFS 元数据创建复制元数据池:

    语法

    ceph osd pool create METADATA_POOL PG_NUM
    Copy to Clipboard Toggle word wrap

    示例

    [root@mon ~]# ceph osd pool create cephfs-metadata 64
    Copy to Clipboard Toggle word wrap

    本例创建名为 cephfs-metadata 且具有 64 个 PG 的池。

  2. 为 CephFS 创建默认复制数据池:

    语法

    ceph osd pool create DATA_POOL PG_NUM
    Copy to Clipboard Toggle word wrap

    示例

    [root@mon ~]# ceph osd pool create cephfs-data 64
    Copy to Clipboard Toggle word wrap

    本例创建名为 cephfs-data 的复制池,具有 64 个 PG。

  3. 为 CephFS 创建纠删代码数据池:

    语法

    ceph osd pool create DATA_POOL PG_NUM erasure
    Copy to Clipboard Toggle word wrap

    示例

    [root@mon ~]# ceph osd pool create cephfs-data-ec 64 erasure
    Copy to Clipboard Toggle word wrap

    本例创建一个名为 cephfs-data-ec 的纠删代码池,该池具有 64 个 PG。

  4. 在纠删代码池中启用覆盖:

    语法

    ceph osd pool set DATA_POOL allow_ec_overwrites true
    Copy to Clipboard Toggle word wrap

    示例

    [root@mon ~]# ceph osd pool set cephfs-data-ec allow_ec_overwrites true
    Copy to Clipboard Toggle word wrap

    本例启用对名为 cephfs-data-ec 的纠删代码池进行覆盖。

  5. 将纠删代码的数据池添加到 CephFS 元数据服务器 (MDS):

    语法

    ceph fs add_data_pool cephfs-ec DATA_POOL
    Copy to Clipboard Toggle word wrap

    示例

    [root@mon ~]# ceph fs add_data_pool cephfs-ec cephfs-data-ec
    Copy to Clipboard Toggle word wrap

    1. (可选)验证添加了数据池:

      [root@mon ~]# ceph fs ls
      Copy to Clipboard Toggle word wrap
  6. 创建 CephFS:

    语法

    ceph fs new cephfs METADATA_POOL DATA_POOL
    Copy to Clipboard Toggle word wrap

    示例

    [root@mon ~]# ceph fs new cephfs cephfs-metadata cephfs-data
    Copy to Clipboard Toggle word wrap

    重要

    不建议将纠删代码池用于默认数据池。

  7. 使用纠删代码创建 CephFS:

    语法

    ceph fs new cephfs-ec METADATA_POOL DATA_POOL
    Copy to Clipboard Toggle word wrap

    示例

    [root@mon ~]# ceph fs new cephfs-ec cephfs-metadata cephfs-data-ec
    Copy to Clipboard Toggle word wrap

  8. 验证一个或多个 Ceph FS 元数据服务器 (MDS) 是否进入活跃状态:

    语法

    ceph fs status FS_EC
    Copy to Clipboard Toggle word wrap

    示例

    [root@mon ~]# ceph fs status cephfs-ec
    cephfs-ec - 0 clients
    ======
    +------+--------+-------+---------------+-------+-------+
    | Rank | State  |  MDS  |    Activity   |  dns  |  inos |
    +------+--------+-------+---------------+-------+-------+
    |  0   | active | node1 | Reqs:    0 /s |   10  |   12  |
    +------+--------+-------+---------------+-------+-------+
    +-----------------+----------+-------+-------+
    |       Pool      |   type   |  used | avail |
    +-----------------+----------+-------+-------+
    | cephfs-metadata | metadata | 4638  | 26.7G |
    |  cephfs-data    |   data   |    0  | 26.7G |
    |  cephfs-data-ec |   data   |    0  | 26.7G |
    +-----------------+----------+-------+-------+
    
    +-------------+
    | Standby MDS |
    +-------------+
    |    node3    |
    |    node2    |
    +-------------+
    Copy to Clipboard Toggle word wrap

  9. 要将新的纠删代码数据池添加到现有文件系统,请执行以下操作:

    1. 为 CephFS 创建纠删代码数据池:

      语法

      ceph osd pool create DATA_POOL PG_NUM erasure
      Copy to Clipboard Toggle word wrap

      示例

      [root@mon ~]# ceph osd pool create cephfs-data-ec1 64 erasure
      Copy to Clipboard Toggle word wrap

    2. 在纠删代码池中启用覆盖:

      语法

      ceph osd pool set DATA_POOL allow_ec_overwrites true
      Copy to Clipboard Toggle word wrap

      示例

      [root@mon ~]# ceph osd pool set cephfs-data-ec1 allow_ec_overwrites true
      Copy to Clipboard Toggle word wrap

    3. 将纠删代码的数据池添加到 CephFS 元数据服务器 (MDS):

      语法

      ceph fs add_data_pool cephfs-ec DATA_POOL
      Copy to Clipboard Toggle word wrap

      示例

      [root@mon ~]# ceph fs add_data_pool cephfs-ec cephfs-data-ec1
      Copy to Clipboard Toggle word wrap

  10. 使用纠删代码创建 CephFS:

    语法

    ceph fs new cephfs-ec METADATA_POOL DATA_POOL
    Copy to Clipboard Toggle word wrap

    示例

    [root@mon ~]# ceph fs new cephfs-ec cephfs-metadata cephfs-data-ec1
    Copy to Clipboard Toggle word wrap

其它资源

  • 有关 CephFS MDS 的更多信息,请参见 Red Hat Ceph Storage File System Guide 中的 The Ceph File System Metadata Server 章节。
  • 如需了解更多详细信息,请参阅 Red Hat Ceph Storage 安装指南中的安装元数据服务器部分。
  • 如需更多信息,请参阅 Red Hat Ceph Storage Storage Strategies Guide 中的 Erasure-Coded Pools 部分。
  • 如需更多信息,请参阅 Red Hat Ceph Storage Storage Strategies Guide 中的 Erasure-Coded Pools 部分。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat