zoukankan      html  css  js  c++  java
  • ceph之查看osd上pg的分布

    一、概述

      osd上pg的分布决定了数据分布的均匀与否,所以能直观的看到pg到osd的上分布是很有必要的;

      ceph只身提供了相关的命令:

    1 #ceph pg ls-by-osd.{osd_id}
    2 #for i in `ceph osd  ls`; do ceph pg ls-by-osd osd.$i |awk '{print $1}' >> /tmp/aaa ;done       #NOTE: 每次osd输出,第一行有一个pg_stat,需要去掉之后,就可以获取pg总数是ceph -s中 pg个数*副本数

      上述方式可以很好的解决问题,但还是另一种方式也可以:

      1、获取map:

    # ceph osd getmap -o osdmap
    got osdmap epoch 2381

      2、获取crushmap:

    #osdmaptool osdmap --export-crush crushmap
    osdmaptool: osdmap file 'osdmap'
    osdmaptool: exported crush map to crushmap

      也可以使用:

    #ceph osd getcrushmap -o crushmap    

      3、获取某个pool在pg上的分布情况

    #osdmaptool  osdmap  --import-crush crushmap  --test-map-pgs --pool {pool_id}

      例如:

     osdmaptool osdmap --import-crush crushmap --test-map-pgs --pool 16
    osdmaptool: osdmap file 'osdmap'
    osdmaptool: imported 864 byte crush map from crushmap
    pool 16 pg_num 32
    #osd    count    first    primary    c wt    wt
    osd.1    14    4    4    0.149994    1
    osd.2    5    1    1    0.149994    1
    osd.3    7    4    4    0.149994    1
    osd.4    6    1    1    0.149994    1
    osd.5    6    3    3    0.149994    1
    osd.6    5    3    3    0.149994    1
    osd.7    9    8    8    0.149994    1
    osd.8    6    4    4    0.149994    1
    osd.9    6    4    4    0.149994    1
     in 9
     avg 7 stddev 2.68742 (0.383917x) (expected 2.51416 0.359165x))
     min osd.2 5
     max osd.1 14
    size 0    0
    size 1    0
    size 2    32
    size 3    0
    osdmaptool: writing epoch 2383 to osdmap

    可以看出单个pool的pg分布在osd上不是均匀的,我们可以迭代所有的pool来比较;并且通过以下命令来修改:

    #ceph osd crush reweight osd.id  {value}
    
    

  • 相关阅读:
    Delphi 与 VC 共享接口和对象
    Delphi线程类 DIY(把类指针作为参数传进去,就可以执行类里面的方法啦)
    delphi 在多线程中使用 CreateOleObject 导致失败(一定要使用CoInitialize和CoUninitialize,举例查询WMI)
    delphi调用LUA函数来处理一些逻辑
    后台管理系统
    .NET平台机器学习
    kafka
    一些技术视频资源
    异步
    CQRS(命令查询职责分离)和 EDA(事件驱动架构)
  • 原文地址:https://www.cnblogs.com/chris-cp/p/5755771.html
Copyright © 2011-2022 走看看