5.3. 使用 Overwrites 的纠删代码


默认情况下,纠删代码池仅适用于 Ceph 对象网关,后者执行完整的对象写入和附加。

使用带有覆盖的纠删代码池允许 Ceph 块设备,CephFS 将其数据存储在纠删代码池中:

语法

ceph osd pool set ERASURE_CODED_POOL_NAME allow_ec_overwrites true

示例

[ceph: root@host01 /]# ceph osd pool set ec_pool allow_ec_overwrites true

启用带有覆盖的纠删代码池只能驻留在使用 BlueStore OSD 的池中。因为 BlueStore 的校验和用于在深度清理过程中检测位 rot 或其他崩溃。

纠删代码池不支持 omap。要将纠删代码池与 Ceph 块设备和 CephFS 搭配使用,请将数据存储在纠删代码池中,并将元数据存储在复制池中。

对于 Ceph 块设备,请在创建镜像时使用 --data-pool 选项:

语法

rbd create --size IMAGE_SIZE_M|G|T --data-pool _ERASURE_CODED_POOL_NAME REPLICATED_POOL_NAME/IMAGE_NAME

示例

[ceph: root@host01 /]# rbd create --size 1G --data-pool ec_pool rep_pool/image01

如果将纠删代码池用于 CephFS,那么必须在文件布局中设置覆盖。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.