Re: unbalanced pg/osd allocation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Anthony,

thank you for your answer. I forgot to mention the version. It's Luminous (12.2.9), the clients are OpenStack (Queens) VMs.

Kind regards,
Laszlo

On 7/30/20 8:59 PM, Anthony D'Atri wrote:
> This is a natural condition of CRUSH.  You don’t mention what release the back-end or the clients are running so it’s difficult to give an exact answer.
> 
> Don’t mess with the CRUSH weights.
> 
> Either adjust the override / reweights with `ceph osd test-reweight-by-utilization / reweight-by-utilization`
> 
> https://docs.ceph.com/docs/master/rados/operations/control/
> 
> 
> or use the balancer module in newer releases *iff* all clients are new enough to handle pg-upmap
> 
> https://docs.ceph.com/docs/nautilus/rados/operations/balancer/
> 
> 
> 
> 
> 
> 
>> On Jul 30, 2020, at 9:21 AM, Budai Laszlo <laszlo.budai@xxxxxxxxx> wrote:
>>
>> Dear all,
>>
>> We have a ceph cluster where we are have configured two SSD only pools in order to use them as cache tier for the spinning discs. Altogether there are 27 SSDs organized on 9 hosts distributed in 3 chassis. The hierarchy looks like this:
>>
>> $ ceph osd df tree | grep -E 'ssd|ID'
>> ID  CLASS WEIGHT    REWEIGHT SIZE    USE     AVAIL   %USE  VAR  PGS TYPE NAME                   
>> -40         8.26199        - 8.26TiB 5.78TiB 2.48TiB 70.02 5.77   - root ssd-root               
>> -50         2.75400        - 2.75TiB 1.93TiB  845GiB 70.02 5.77   -     chassis c1-ssd          
>> -41         0.91800        -  940GiB  651GiB  289GiB 69.23 5.71   -         host c1-h01-ssd 
>> 110   ssd   0.30600  1.00000  313GiB  199GiB  115GiB 63.37 5.22  77             osd.110         
>> 116   ssd   0.30600  1.00000  313GiB  219GiB 94.3GiB 69.91 5.76  89             osd.116         
>> 119   ssd   0.30600  1.00000  313GiB  233GiB 80.2GiB 74.41 6.13  87             osd.119         
>> -42         0.91800        -  940GiB  701GiB  239GiB 74.61 6.15   -         host c1-h02-ssd 
>> 112   ssd   0.30600  1.00000  313GiB  228GiB 84.9GiB 72.91 6.01  85             osd.112         
>> 117   ssd   0.30600  1.00000  313GiB  245GiB 67.9GiB 78.32 6.46  97             osd.117         
>> 122   ssd   0.30600  1.00000  313GiB  227GiB 85.8GiB 72.61 5.99  87             osd.122         
>> -43         0.91800        -  940GiB  622GiB  318GiB 66.21 5.46   -         host c1-h03-ssd 
>> 109   ssd   0.30600  1.00000  313GiB  192GiB  122GiB 61.15 5.04  77             osd.109         
>> 115   ssd   0.30600  1.00000  313GiB  206GiB  107GiB 65.79 5.42  79             osd.115         
>> 120   ssd   0.30600  1.00000  313GiB  225GiB 88.7GiB 71.70 5.91  90             osd.120         
>> -51         2.75400        - 2.75TiB 1.93TiB  845GiB 70.02 5.77   -     chassis c2-ssd          
>> -46         0.91800        -  940GiB  651GiB  288GiB 69.31 5.71   -         host c2-h01-ssd 
>> 125   ssd   0.30600  1.00000  313GiB  211GiB  103GiB 67.22 5.54  81             osd.125         
>> 130   ssd   0.30600  1.00000  313GiB  233GiB 80.4GiB 74.33 6.13  89             osd.130         
>> 132   ssd   0.30600  1.00000  313GiB  208GiB  105GiB 66.38 5.47  79             osd.132         
>> -45         0.91800        -  940GiB  672GiB  267GiB 71.54 5.90   -         host c2-h02-ssd 
>> 126   ssd   0.30600  1.00000  313GiB  216GiB 97.4GiB 68.90 5.68  87             osd.126         
>> 129   ssd   0.30600  1.00000  313GiB  207GiB  106GiB 66.12 5.45  80             osd.129         
>> 134   ssd   0.30600  1.00000  313GiB  249GiB 63.9GiB 79.61 6.56  99             osd.134         
>> -44         0.91800        -  940GiB  650GiB  289GiB 69.20 5.70   -         host c2-h03-ssd 
>> 123   ssd   0.30600  1.00000  313GiB  201GiB  112GiB 64.23 5.29  76             osd.123         
>> 127   ssd   0.30600  1.00000  313GiB  217GiB 96.1GiB 69.31 5.71  85             osd.127         
>> 131   ssd   0.30600  1.00000  313GiB  232GiB 81.2GiB 74.06 6.11  92             osd.131         
>> -52         2.75400        - 2.75TiB 1.93TiB  845GiB 70.02 5.77   -     chassis c3-ssd          
>> -47         0.91800        -  940GiB  628GiB  311GiB 66.86 5.51   -         host c3-h01-ssd 
>> 124   ssd   0.30600  1.00000  313GiB  204GiB  109GiB 65.13 5.37  78             osd.124         
>> 128   ssd   0.30600  1.00000  313GiB  202GiB  111GiB 64.59 5.32  76             osd.128         
>> 133   ssd   0.30600  1.00000  313GiB  222GiB 91.3GiB 70.86 5.84  86             osd.133         
>> -48         0.91800        -  940GiB  628GiB  312GiB 66.80 5.51   -         host c3-h02-ssd 
>> 108   ssd   0.30600  1.00000  313GiB  220GiB 92.9GiB 70.35 5.80  86             osd.108         
>> 114   ssd   0.30600  1.00000  313GiB  209GiB  105GiB 66.58 5.49  82             osd.114         
>> 121   ssd   0.30600  1.00000  313GiB  199GiB  114GiB 63.46 5.23  79             osd.121         
>> -49         0.91800        -  940GiB  718GiB  222GiB 76.40 6.30   -         host c3-h03-ssd 
>> 111   ssd   0.30600  1.00000  313GiB  219GiB 94.4GiB 69.87 5.76  84             osd.111         
>> 113   ssd   0.30600  1.00000  313GiB  241GiB 72.2GiB 76.95 6.34  96             osd.113         
>> 118   ssd   0.30600  1.00000  313GiB  258GiB 55.2GiB 82.39 6.79 101             osd.118
>>
>>
>> The rule used for the two pools is the following:
>>
>>        {
>>            "rule_id": 1,
>>            "rule_name": "ssd",
>>            "ruleset": 1,
>>            "type": 1,
>>            "min_size": 1,
>>            "max_size": 10,
>>            "steps": [
>>                {
>>                    "op": "take",
>>                    "item": -40,
>>                    "item_name": "ssd-root"
>>                },
>>                {
>>                    "op": "chooseleaf_firstn",
>>                    "num": 0,
>>                    "type": "chassis"
>>                },
>>                {
>>                    "op": "emit"
>>                }
>>            ]
>>        }
>>
>>
>> both pools have the size 3, and the total number of PGs is 768 (256+512). 
>>
>> As you can see from the previous table (the PG column) there is a significant difference between the OSD with the largest number of PGs (101PGs on osd.118) and the ones with the smallest number (76 PGs on osd.123). The ratio between the two is 1.32. So OSD 118 has more chances to receive data then OSD 123, and we can see that indeed osd.118 is the one storing the most data (82.39% full in the above table).
>>
>> I would like to re balance the PG/OSD allocation. I know that I can play around with the OSD weights (currently .306 for all the OSDs), but I wonder if there is any drawback for this on the long run? Are you aware of any reason why I should NOT modify the weights (and leave those modifications permanent)?
>>
>> Any ideas are welcome :)
>>
>> Kind regards,
>> Laszlo
>> _______________________________________________
>> ceph-users mailing list -- ceph-users@xxxxxxx
>> To unsubscribe send an email to ceph-users-leave@xxxxxxx
> 
_______________________________________________
ceph-users mailing list -- ceph-users@xxxxxxx
To unsubscribe send an email to ceph-users-leave@xxxxxxx




[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Ceph Dev]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux