zoukankan      html  css  js  c++  java
  • ceph的pg的分布的快速查看

    前言

    本篇的内容实际上是另外一篇文章的字篇章,在另外一篇文章当中,将会对crush的分布的调整的做一次总结,用比较简单的方式来展示各种crush的区别

    在做这个工作过程中,为了更好的能展示出效果,就有了下面的这个小工具的出现

    工具来源

    假如我现在想查看一个存储池内的pg的分布,那么我们需要下面的几个步骤

    1、随机获取一个pg的id

    [root@lab101 ~]# ceph pg dump|grep ^0
    

    后面的是存储池的编号
    从输出中拿到0.196开头的这个pg

    0.196	0	0	0	0	0	0	0	0	active+clean	2019-03-07 18:03:28.262747	0'0	259:24	[2,30,21]	2	[2,30,21]	0'0	2019-03-06 17:30:29.598534	0'0	2019-03-06 17:30:29.598534
    

    得到三个osd的id的值,2,30,21

    2、获取ceph osd tree拿到osd的分布

    [root@lab101 ~]# ceph osd tree
    

    osd tree

    的到一个大概这样的图,拿到

    osd.2在host lab101上在rack1中,在default下
    osd.30在host lab108上在rack4中,在default下
    osd.21在host lab106上在rack3中,在default下

    可以看到这个pg是分布在三个rack下的,如果我们需要去看其他的pg的,那么就需要继续重复上面的动作了,这个没什么大的问题,但是为了更好更快的去获取分布,看下我做的小工具的效果

    查询分布的小工具的效果

    横着看的

    image.png-365.2kB

    竖着看的

    image.png-246.7kB

    再来一个

    image.png-283.3kB

    是不是看到虽然分了rack,但是这个时候的rule还是沿用最开始做的主机host的,可以清楚的看到0.2这个pg分布到了rack2下面去了

    这个工具会在后面的做crush的调整后用到,可以清楚的看到pg的路径关系

    变更记录

    Why Who When
    创建 武汉-运维-磨渣 2019-3-8
  • 相关阅读:
    【转载】大型系统中使用JMS优化技巧
    【原创】JMS发布者订阅者【异步接收消息】
    【原创】JMS生产者和消费者【PTP异步接收消息】
    泛型
    For-Each循环
    策略模式(Strategy)
    Sort--快速排序
    Serach
    Sort--冒泡排序
    数值交换
  • 原文地址:https://www.cnblogs.com/zphj1987/p/13575463.html
Copyright © 2011-2022 走看看