meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
vm:proxmox:ceph:compression [2025/10/29 10:47] – niziakvm:proxmox:ceph:compression [2026/10/21 13:07] (current) – niziak
Line 57: Line 57:
 ceph daemon osd.2 perf dump bluestore | egrep -i "compressed_|allocated|stored|compress_.*_count" ceph daemon osd.2 perf dump bluestore | egrep -i "compressed_|allocated|stored|compress_.*_count"
 ceph tell 'osd.*' perf dump bluestore | egrep -i "compressed_|allocated|stored|compress_.*_count" ceph tell 'osd.*' perf dump bluestore | egrep -i "compressed_|allocated|stored|compress_.*_count"
 +</code>
 +
 +<code bash>
 +(echo -e "OSD\tCOMP_ORIG_GiB\tCOMP_ALLOC_GiB\tCOMP_RATIO\tSUCCESS\tREJECTED\tREJECT_%"
 +for id in $(ceph osd ls); do
 +  ceph tell osd.$id perf dump bluestore 2>/dev/null | jq -r --arg id "$id" '.bluestore |
 +    [ "osd."+$id,
 +      (.compressed_original/1073741824*100|round/100),
 +      (.compressed_allocated/1073741824*100|round/100),
 +      (if .compressed_allocated>0 then (.compressed_original/.compressed_allocated*100|round/100) else 0 end),
 +      .compress_success_count,
 +      .compress_rejected_count,
 +      (if (.compress_success_count+.compress_rejected_count)>0 then (.compress_rejected_count/(.compress_success_count+.compress_rejected_count)*1000|round/10) else 0 end)
 +    ] | @tsv'
 +done) | column -t
 </code> </code>
  
Line 64: Line 79:
 ceph tell 'osd.*' perf dump bluestore | egrep -i "compressed_|allocated|stored|compress_.*_count|write_big|write_small" ceph tell 'osd.*' perf dump bluestore | egrep -i "compressed_|allocated|stored|compress_.*_count|write_big|write_small"
 </code> </code>
 +
 +===== disable compression =====
 +
 +Please check counters in aggressive mode. I.e.:
 +osd.0's counters show about 82% of compression attempts rejected (742M rejected against 163M successful).
 +That is wasted CPU and added latency on each write. 
 +Switch to passive or none: 
 +
 +<code bash>
 +ceph osd pool set rbd compression_mode none
 +</code>
 +