在使用cephfs上層業務進行資料寫入的時候,wal與db所在分區的util值較高,可能是由于bluestone的compaction導緻,具體排查如下
iotop 檢視
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNfRHLGZkRGZkRfJ3bs92YsYTMfVmepNHL9UEVOl3aE90MrpnTzkkMMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL0UTOzIDNyYTMyEzNwkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
檢視是否有較多的rockdb:bg0,是的話,代表在compaction
如何減少compaction:
在資料寫入之前手動進行觸發
ceph daemon osd.0 compact
或者關閉compaction
bluestore_rocksdb_options = num_levels=4,compression=kNoCompression,max_write_buffer_number=4,min_write_buffer_number_to_merge=2,recycle_log_file_num=4,write_buffer_size=33554432,writable_file_max_buffer_size=0,compaction_readahead_size=65536,level0_file_num_compaction_trigger=16,level0_slowdown_writes_trigger=128,level0_stop_writes_trigger=128,bytes_per_sync=4194304,wal_bytes_per_sync=1048576,optimize_filters_for_hits=1,bloom_locality=1,skip_stats_update_on_db_open=true,hik_compaction_delay_ms=600,max_subcompactions=1,disable_auto_compactions=true