簡體   English   中英

ceph df (octopus) 顯示在糾刪碼池中,USED 比 STORED 高 7 倍

[英]ceph df (octopus) shows USED is 7 times higher than STORED in erasure coded pool

default.rgw.buckets.data已存儲501 GiB ,但 USED 顯示3.5 TiB

root@ceph-01:~# ceph df
--- RAW STORAGE ---
CLASS  SIZE     AVAIL    USED     RAW USED  %RAW USED
hdd    196 TiB  193 TiB  3.5 TiB   3.6 TiB       1.85
TOTAL  196 TiB  193 TiB  3.5 TiB   3.6 TiB       1.85

--- POOLS ---
POOL                       ID  PGS  STORED   OBJECTS  USED     %USED  MAX AVAIL
device_health_metrics       1    1   19 KiB       12   56 KiB      0     61 TiB
.rgw.root                   2   32  2.6 KiB        6  1.1 MiB      0     61 TiB
default.rgw.log             3   32  168 KiB      210   13 MiB      0     61 TiB
default.rgw.control         4   32      0 B        8      0 B      0     61 TiB
default.rgw.meta            5    8  4.8 KiB       11  1.9 MiB      0     61 TiB
default.rgw.buckets.index   6    8  1.6 GiB      211  4.7 GiB      0     61 TiB

default.rgw.buckets.data   10  128  501 GiB    5.36M  3.5 TiB   1.90    110 TiB

default.rgw.buckets.data池使用糾刪碼:

root@ceph-01:~# ceph osd erasure-code-profile get EC_RGW_HOST
crush-device-class=hdd
crush-failure-domain=host
crush-root=default
jerasure-per-chunk-alignment=false
k=6
m=4
plugin=jerasure
technique=reed_sol_van
w=8

如果有人可以幫助解釋為什么它使用了 7 倍以上的空間,那將有很大幫助。 版本控制被禁用。 ceph 版本 15.2.13(章魚穩定)。

這與 bluestore_min_alloc_size_hdd=64K(八達通的默認值)有關。

如果使用擦除編碼,數據會被分成更小的塊,每個塊在磁盤上占用 64K。

一種選擇是將 bluestore_min_alloc_size_hdd 降低到 4K,如果您的解決方案需要存儲數百萬個微小 (16K) 對象,這很好。 就我而言,我存儲了數億張 3-4M 的照片,所以我決定跳過擦除編碼,繼續使用 bluestore_min_alloc_size_hdd=64K 並切換到復制 3(最少 2)。 從長遠來看,這更安全、更快。

以下是 Josh Baergen 在郵件列表中的回復:

Hey Arkadiy,

If the OSDs are on HDDs and were created with the default
bluestore_min_alloc_size_hdd, which is still 64KiB in Octopus, then in
effect data will be allocated from the pool in 640KiB chunks (64KiB *
(k+m)). 5.36M objects taking up 501GiB is an average object size of 98KiB
which results in a ratio of 6.53:1 allocated:stored, which is pretty close
to the 7:1 observed.

If my assumption about your configuration is correct, then the only way to
fix this is to adjust bluestore_min_alloc_size_hdd and recreate all your
OSDs, which will take a while...

Josh

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM