签到成功

知道了

CNDBA社区CNDBA社区

Ceph计算每个pool中PG数

2017-01-17 17:32 8184 0 原创 Ceph
作者: Expect-乐

公式:http://www.cndba.cn/Expect-le/article/1725http://www.cndba.cn/Expect-le/article/1725http://www.cndba.cn/Expect-le/article/1725


http://www.cndba.cn/Expect-le/article/1725

                         ( Target PGs per OSD ) x ( OSD # ) x ( %Data )http://www.cndba.cn/Expect-le/article/1725

             PoolPGCount = -------------------------------------------------------

http://www.cndba.cn/Expect-le/article/1725

                                    ( Size )

http://www.cndba.cn/Expect-le/article/1725

参数说明:http://www.cndba.cn/Expect-le/article/1725

http://www.cndba.cn/Expect-le/article/1725

名称 说明 备注
PoolPGCount
单个Pool的PG数量
Target PGs per OSD
每个OSD的PGS数量 1.如果未来集群的OSD数量基本不再增长,Target PGs per OSD=100
2.如果未来集群的OSD数量可能增长到目前规模的2倍以内,Target PGs per OSD=200
2.如果未来集群的OSD数量可能增长到大于目前规模的2倍且小于3倍,Target PGs per OSD=300。
 OSD #
集群OSD的总数,默认是全部OSD数量 如果通过CRUSH rules进行了SSD和SATA设备的规则拆分(比如SSD和SATA划分两个zone),需要单独填写对应rule的数量
%Data
Pool占用所在OSD总容量的百分比(预估值)
 Size  每个pool的replicas size,默认是3  如果使用Erasure Coded Pools简称EC pool,Pool Size=k+m

http://www.cndba.cn/Expect-le/article/1725

结果:

1.如果上述计算的值小于(OSD#)/(Size)的值,则将该值更新为(OSD#)/(Size)的值。 这是为了通过为每个池分配至少一个主或辅助PG到每个OSD来确保均匀加载/数据分发。

2.然后将输出值四舍五入为最接近的2的幂。

提示:最接近的2的幂提供了CRUSH算法的效率的边际改进。

3.如果最接近的2的幂大于原始值的25%以上,则使用下一个更高的2的幂。

版权声明:本文为博主原创文章,未经博主允许不得转载。

pgs

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
Expect-乐

Expect-乐

关注

Without the continuous bitter cold, there can be no fragrant plum blossom

  • 336
    原创
  • 6
    翻译
  • 100
    转载
  • 41
    评论
  • 访问:1547764次
  • 积分:1957
  • 等级:核心会员
  • 排名:第4名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ