前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Ceph最新的EC-CLAY插件调研-下

Ceph最新的EC-CLAY插件调研-下

作者头像
用户1260683
发布2021-01-04 16:11:51
1.4K0
发布2021-01-04 16:11:51
举报
文章被收录于专栏:Ceph对象存储方案

EC改进方案选型

接上篇,介绍一下整个容灾方案在性能和可靠性方面如何做验证。

3个机柜,每个机柜15台机器,总共45台,需要在RBD场景下,找到成本、性能、数据可靠性的三者平衡点。

跨机柜容灾方案1

支持2个机柜级别的容灾,跨3个机柜单个分组共9个节点,共5个分组,对应的理论收益情况如下

名称

K

M

D

3副本得盘率

EC得盘率

硬件成本节约比率

磁盘数据迁移量(ISA)

磁盘数据迁移量(CLAY)

数据恢复负载降低比率

3+2

3

2

4

33.33333333

60

180

3

2

33.33333333

代码语言:javascript
复制
ceph osd erasure-code-profile set CLAY-3-2-4 \
     plugin=clay \
     k=3 m=2 d=4 \
     scalar_mds=isa \
     technique=reed_sol_van \
     crush-root=site1-ssd \
     crush-failure-domain=ctnr

对应的crush rule如下

代码语言:javascript
复制
rule site1_sata_erasure_ruleset {
    id 1
    type erasure
    min_size 3
    max_size 5
    step set_chooseleaf_tries 5
    step set_choose_tries 100
    step take site1-ssd
    step choose indep 0 type media
    step chooseleaf indep 1 type ctnr
    step emit
}
单机柜容灾方案2

支持1个机柜级别的容灾,单个分组共5个节点,共9个分组,对应的理论收益情况如下

名称

K

M

D

3副本得盘率

EC得盘率

硬件成本节约比率

磁盘数据迁移量(ISA)

磁盘数据迁移量(CLAY)

数据恢复负载降低比率

4+3

4

3

6

33.33333333

57.14285714

171.4285714

4

2

50

5+3

5

3

7

33.33333333

62.5

187.5

5

2.333333333

53.33333333

6+3

6

3

8

33.33333333

66.66666667

200

6

2.666666667

55.55555556

从性能最优原则,K+M总和最小则对应的理论性能最优,所以单机柜容灾模型下,4+3成为最优方案。

对应的ec配置如下

代码语言:javascript
复制
ceph osd erasure-code-profile set CLAY-4-3-6 \
     plugin=clay \
     k=4 m=3 d=6 \
     scalar_mds=isa \
     technique=reed_sol_van \
     crush-root=site1-ssd \
     crush-failure-domain=ctnr

对应的crush rule如下

代码语言:javascript
复制
rule site1_sata_erasure_ruleset {
    id 1
    type erasure
    min_size 4
    max_size 9
    step set_chooseleaf_tries 5
    step set_choose_tries 100
    step take site1-ssd
    step choose indep 0 type media
    step chooseleaf indep 1 type ctnr
    step emit
}

crush rule的生成与rule的验证模拟

代码语言:javascript
复制
crushtool --outfn crush5 --build --num_osds 450 ctnr straw2 10 media straw2 5 mediagroup straw2 0  unit straw2 0 root straw2 0
crushtool -d crush5 -o crush5.txt
crushtool -c crush5.txt -o crush5.txt #手工加上rule规则
crushtool -i crush5 --test --show-statistics --show-mappings --rule 1 --min-x 1 --max-x 20 --num-rep 6

容灾能力测试场景

性能测试

RBD场景,模拟大、小文件,顺序/随机读写,获取对应的fio性能基准数据,对比3副本与EC的性能差距。 3副本 vs CLAY_3+2 vs CLAY_4+3

场景名称

iops

带宽

90th延时

99th延时

备注

3副本-4M顺序读

3+2-4M顺序读

4+3-4M顺序读

3副本-4M顺序写

3+2-4M顺序写

4+3-4M顺序写

3副本-4k随机写

3+2-4k随机写

4+3-4k随机写

3副本-4k随机读

3+2-4k随机读

4+3-4k随机读

故障恢复效率

前置条件:集群提前写入容量60%,模拟已有数据场景 目标:对比ISA和CLAY在K+M相同的情况下,RBD场景下持续读写数据,模拟单块OSD、单个OSD节点故障、多个OSD节点故障(可选),数据迁移所需的时长,同时记录对应的CPU、内存、网卡负载消耗情况,以及性能波动情况。

容灾能力

前置条件:集群提前写入容量60%,模拟已有数据场景 目标:RBD场景下持续读写数据,模拟最小故障域、单机柜、双机柜故障,记录对应的性能波动情况,考察在极端情况下整个集群的服务可用性和数据可靠性。

跨机柜容灾方案1
单机柜容灾方案2
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-12-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Ceph对象存储方案 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • EC改进方案选型
    • 跨机柜容灾方案1
      • 单机柜容灾方案2
      • 容灾能力测试场景
        • 性能测试
          • 故障恢复效率
            • 容灾能力
              • 跨机柜容灾方案1
              • 单机柜容灾方案2
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档