From: Adam Kupczyk Date: Tue, 4 Feb 2025 11:02:40 +0000 (+0000) Subject: qa/rados: Reorganized bluestore X-Git-Tag: v20.3.0~298^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=99e0e3aa5f41f5c939dc3cc75406ae4d7fa1c829;p=ceph.git qa/rados: Reorganized bluestore Modified bluestore_debug to expand testing base. Now bluestore config is assembled from various independent aspects. The model can easily be expanded. + enabled testing of avl, btree, hybrid_btree2 allocators Signed-off-by: Adam Kupczyk --- diff --git a/qa/objectstore_debug/bluestore-options/write$/write_random.yaml b/qa/objectstore_debug/bluestore-options/write$/write_random.yaml deleted file mode 100644 index d14f561c72a7..000000000000 --- a/qa/objectstore_debug/bluestore-options/write$/write_random.yaml +++ /dev/null @@ -1,5 +0,0 @@ -overrides: - ceph: - conf: - osd: - bluestore write v2 random: true diff --git a/qa/objectstore_debug/bluestore-options/write$/write_v1.yaml b/qa/objectstore_debug/bluestore-options/write$/write_v1.yaml deleted file mode 100644 index 4b20e8e52ca8..000000000000 --- a/qa/objectstore_debug/bluestore-options/write$/write_v1.yaml +++ /dev/null @@ -1,5 +0,0 @@ -overrides: - ceph: - conf: - osd: - bluestore write v2: false diff --git a/qa/objectstore_debug/bluestore-options/write$/write_v2.yaml b/qa/objectstore_debug/bluestore-options/write$/write_v2.yaml deleted file mode 100644 index 238973b1165c..000000000000 --- a/qa/objectstore_debug/bluestore-options/write$/write_v2.yaml +++ /dev/null @@ -1,5 +0,0 @@ -overrides: - ceph: - conf: - osd: - bluestore write v2: true diff --git a/qa/objectstore_debug/bluestore/% b/qa/objectstore_debug/bluestore/% new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/qa/objectstore_debug/bluestore/alloc$/avl.yaml b/qa/objectstore_debug/bluestore/alloc$/avl.yaml new file mode 100644 index 000000000000..0b60ab97cb69 --- /dev/null +++ b/qa/objectstore_debug/bluestore/alloc$/avl.yaml @@ -0,0 +1,6 @@ +overrides: + ceph: + conf: + osd: + bluestore allocator: avl + diff --git a/qa/objectstore_debug/bluestore/alloc$/bitmap.yaml b/qa/objectstore_debug/bluestore/alloc$/bitmap.yaml new file mode 100644 index 000000000000..27f070ed4c70 --- /dev/null +++ b/qa/objectstore_debug/bluestore/alloc$/bitmap.yaml @@ -0,0 +1,6 @@ +overrides: + ceph: + conf: + osd: + bluestore allocator: bitmap + diff --git a/qa/objectstore_debug/bluestore/alloc$/btree.yaml b/qa/objectstore_debug/bluestore/alloc$/btree.yaml new file mode 100644 index 000000000000..7858bccf1edc --- /dev/null +++ b/qa/objectstore_debug/bluestore/alloc$/btree.yaml @@ -0,0 +1,6 @@ +overrides: + ceph: + conf: + osd: + bluestore allocator: btree + diff --git a/qa/objectstore_debug/bluestore/alloc$/hybrid.yaml b/qa/objectstore_debug/bluestore/alloc$/hybrid.yaml new file mode 100644 index 000000000000..8976ee89fff0 --- /dev/null +++ b/qa/objectstore_debug/bluestore/alloc$/hybrid.yaml @@ -0,0 +1,7 @@ +overrides: + ceph: + conf: + osd: + bluestore allocator: hybrid + bluefs allocator: hybrid + diff --git a/qa/objectstore_debug/bluestore/alloc$/hybrid_btree2.yaml b/qa/objectstore_debug/bluestore/alloc$/hybrid_btree2.yaml new file mode 100644 index 000000000000..d140d003e1d1 --- /dev/null +++ b/qa/objectstore_debug/bluestore/alloc$/hybrid_btree2.yaml @@ -0,0 +1,6 @@ +overrides: + ceph: + conf: + osd: + bluestore allocator: hybrid_btree2 + diff --git a/qa/objectstore_debug/bluestore/alloc$/stupid.yaml b/qa/objectstore_debug/bluestore/alloc$/stupid.yaml new file mode 100644 index 000000000000..ebc7a4ddb0c2 --- /dev/null +++ b/qa/objectstore_debug/bluestore/alloc$/stupid.yaml @@ -0,0 +1,6 @@ +overrides: + ceph: + conf: + osd: + bluestore allocator: stupid + diff --git a/qa/objectstore_debug/bluestore/base.yaml b/qa/objectstore_debug/bluestore/base.yaml new file mode 100644 index 000000000000..037863442580 --- /dev/null +++ b/qa/objectstore_debug/bluestore/base.yaml @@ -0,0 +1,21 @@ +overrides: + thrashosds: + bdev_inject_crash: 2 + bdev_inject_crash_probability: .5 + ceph: + fs: xfs + conf: + osd: + osd objectstore: bluestore + bluestore block size: 96636764160 + debug bluestore: 20 + debug bluefs: 20 + debug rocksdb: 10 + bluestore fsck on mount: true + # lower the full ratios since we can fill up a 100gb osd so quickly + mon osd full ratio: .9 + mon osd backfillfull_ratio: .85 + mon osd nearfull ratio: .8 + osd failsafe full ratio: .95 + bdev enable discard: true + bdev async discard: true diff --git a/qa/objectstore_debug/bluestore/bluestore-bitmap.yaml b/qa/objectstore_debug/bluestore/bluestore-bitmap.yaml deleted file mode 100644 index b18e04bee326..000000000000 --- a/qa/objectstore_debug/bluestore/bluestore-bitmap.yaml +++ /dev/null @@ -1,43 +0,0 @@ -overrides: - thrashosds: - bdev_inject_crash: 2 - bdev_inject_crash_probability: .5 - ceph: - fs: xfs - conf: - osd: - osd objectstore: bluestore - bluestore block size: 96636764160 - debug bluestore: 20 - debug bluefs: 20 - debug rocksdb: 10 - bluestore fsck on mount: true - bluestore allocator: bitmap - # lower the full ratios since we can fill up a 100gb osd so quickly - mon osd full ratio: .9 - mon osd backfillfull_ratio: .85 - mon osd nearfull ratio: .8 - osd failsafe full ratio: .95 -# this doesn't work with failures bc the log writes are not atomic across the two backends -# bluestore bluefs env mirror: true - bdev enable discard: true - bdev async discard: true - ceph-deploy: - fs: xfs - bluestore: yes - conf: - osd: - osd objectstore: bluestore - bluestore block size: 96636764160 - debug bluestore: 20 - debug bluefs: 20 - debug rocksdb: 10 - bluestore fsck on mount: true - # lower the full ratios since we can fill up a 100gb osd so quickly - mon osd full ratio: .9 - mon osd backfillfull_ratio: .85 - mon osd nearfull ratio: .8 - osd failsafe full ratio: .95 - bdev enable discard: true - bdev async discard: true - diff --git a/qa/objectstore_debug/bluestore/bluestore-comp-lz4.yaml b/qa/objectstore_debug/bluestore/bluestore-comp-lz4.yaml deleted file mode 100644 index 46f993e686c2..000000000000 --- a/qa/objectstore_debug/bluestore/bluestore-comp-lz4.yaml +++ /dev/null @@ -1,24 +0,0 @@ -overrides: - thrashosds: - bdev_inject_crash: 2 - bdev_inject_crash_probability: .5 - ceph: - fs: xfs - conf: - osd: - osd objectstore: bluestore - bluestore block size: 96636764160 - debug bluestore: 20 - debug bluefs: 20 - debug rocksdb: 10 - bluestore compression mode: aggressive - bluestore fsck on mount: true - bluestore compression algorithm: lz4 - # lower the full ratios since we can fill up a 100gb osd so quickly - mon osd full ratio: .9 - mon osd backfillfull_ratio: .85 - mon osd nearfull ratio: .8 - osd failsafe full ratio: .95 - -# this doesn't work with failures bc the log writes are not atomic across the two backends -# bluestore bluefs env mirror: true diff --git a/qa/objectstore_debug/bluestore/bluestore-comp-snappy.yaml b/qa/objectstore_debug/bluestore/bluestore-comp-snappy.yaml deleted file mode 100644 index b5d58414e3f8..000000000000 --- a/qa/objectstore_debug/bluestore/bluestore-comp-snappy.yaml +++ /dev/null @@ -1,24 +0,0 @@ -overrides: - thrashosds: - bdev_inject_crash: 2 - bdev_inject_crash_probability: .5 - ceph: - fs: xfs - conf: - osd: - osd objectstore: bluestore - bluestore block size: 96636764160 - debug bluestore: 20 - debug bluefs: 20 - debug rocksdb: 10 - bluestore compression mode: aggressive - bluestore fsck on mount: true - bluestore compression algorithm: snappy - # lower the full ratios since we can fill up a 100gb osd so quickly - mon osd full ratio: .9 - mon osd backfillfull_ratio: .85 - mon osd nearfull ratio: .8 - osd failsafe full ratio: .95 - -# this doesn't work with failures bc the log writes are not atomic across the two backends -# bluestore bluefs env mirror: true diff --git a/qa/objectstore_debug/bluestore/bluestore-comp-zlib.yaml b/qa/objectstore_debug/bluestore/bluestore-comp-zlib.yaml deleted file mode 100644 index b47ebbb7c62e..000000000000 --- a/qa/objectstore_debug/bluestore/bluestore-comp-zlib.yaml +++ /dev/null @@ -1,24 +0,0 @@ -overrides: - thrashosds: - bdev_inject_crash: 2 - bdev_inject_crash_probability: .5 - ceph: - fs: xfs - conf: - osd: - osd objectstore: bluestore - bluestore block size: 96636764160 - debug bluestore: 20 - debug bluefs: 20 - debug rocksdb: 10 - bluestore compression mode: aggressive - bluestore fsck on mount: true - bluestore compression algorithm: zlib - # lower the full ratios since we can fill up a 100gb osd so quickly - mon osd full ratio: .9 - mon osd backfillfull_ratio: .85 - mon osd nearfull ratio: .8 - osd failsafe full ratio: .95 - -# this doesn't work with failures bc the log writes are not atomic across the two backends -# bluestore bluefs env mirror: true diff --git a/qa/objectstore_debug/bluestore/bluestore-comp-zstd.yaml b/qa/objectstore_debug/bluestore/bluestore-comp-zstd.yaml deleted file mode 100644 index e2f5e4e5ba62..000000000000 --- a/qa/objectstore_debug/bluestore/bluestore-comp-zstd.yaml +++ /dev/null @@ -1,24 +0,0 @@ -overrides: - thrashosds: - bdev_inject_crash: 2 - bdev_inject_crash_probability: .5 - ceph: - fs: xfs - conf: - osd: - osd objectstore: bluestore - bluestore block size: 96636764160 - debug bluestore: 20 - debug bluefs: 20 - debug rocksdb: 10 - bluestore compression mode: aggressive - bluestore fsck on mount: true - bluestore compression algorithm: zstd - # lower the full ratios since we can fill up a 100gb osd so quickly - mon osd full ratio: .9 - mon osd backfillfull_ratio: .85 - mon osd nearfull ratio: .8 - osd failsafe full ratio: .95 - -# this doesn't work with failures bc the log writes are not atomic across the two backends -# bluestore bluefs env mirror: true diff --git a/qa/objectstore_debug/bluestore/bluestore-hybrid.yaml b/qa/objectstore_debug/bluestore/bluestore-hybrid.yaml deleted file mode 100644 index 68b9bc4279ff..000000000000 --- a/qa/objectstore_debug/bluestore/bluestore-hybrid.yaml +++ /dev/null @@ -1,40 +0,0 @@ -overrides: - thrashosds: - bdev_inject_crash: 2 - bdev_inject_crash_probability: .5 - ceph: - fs: xfs - conf: - osd: - osd objectstore: bluestore - bluestore block size: 96636764160 - debug bluestore: 20 - debug bluefs: 20 - debug rocksdb: 10 - bluestore fsck on mount: true - bluestore allocator: hybrid - bluefs allocator: hybrid - # lower the full ratios since we can fill up a 100gb osd so quickly - mon osd full ratio: .9 - mon osd backfillfull_ratio: .85 - mon osd nearfull ratio: .8 - osd failsafe full ratio: .95 -# this doesn't work with failures bc the log writes are not atomic across the two backends -# bluestore bluefs env mirror: true - ceph-deploy: - fs: xfs - bluestore: yes - conf: - osd: - osd objectstore: bluestore - bluestore block size: 96636764160 - debug bluestore: 20 - debug bluefs: 20 - debug rocksdb: 10 - bluestore fsck on mount: true - # lower the full ratios since we can fill up a 100gb osd so quickly - mon osd full ratio: .9 - mon osd backfillfull_ratio: .85 - mon osd nearfull ratio: .8 - osd failsafe full ratio: .95 - diff --git a/qa/objectstore_debug/bluestore/bluestore-low-osd-mem-target.yaml b/qa/objectstore_debug/bluestore/bluestore-low-osd-mem-target.yaml deleted file mode 100644 index b2a49790bc3d..000000000000 --- a/qa/objectstore_debug/bluestore/bluestore-low-osd-mem-target.yaml +++ /dev/null @@ -1,25 +0,0 @@ -overrides: - thrashosds: - bdev_inject_crash: 2 - bdev_inject_crash_probability: .5 - ceph: - fs: xfs - conf: - osd: - osd objectstore: bluestore - osd memory target: 1610612736 # reduced to 1.5_G - bluestore block size: 96636764160 - debug bluestore: 20 - debug bluefs: 20 - debug rocksdb: 10 - bluestore fsck on mount: true - # lower the full ratios since we can fill up a 100gb osd so quickly - mon osd full ratio: .9 - mon osd backfillfull_ratio: .85 - mon osd nearfull ratio: .8 - osd failsafe full ratio: .95 -# this doesn't work with failures bc the log writes are not atomic across the two backends -# bluestore bluefs env mirror: true - bdev enable discard: true - bdev async discard: true - diff --git a/qa/objectstore_debug/bluestore/bluestore-stupid.yaml b/qa/objectstore_debug/bluestore/bluestore-stupid.yaml deleted file mode 100644 index ca811f131a7b..000000000000 --- a/qa/objectstore_debug/bluestore/bluestore-stupid.yaml +++ /dev/null @@ -1,43 +0,0 @@ -overrides: - thrashosds: - bdev_inject_crash: 2 - bdev_inject_crash_probability: .5 - ceph: - fs: xfs - conf: - osd: - osd objectstore: bluestore - bluestore block size: 96636764160 - debug bluestore: 20 - debug bluefs: 20 - debug rocksdb: 10 - bluestore fsck on mount: true - bluestore allocator: stupid - # lower the full ratios since we can fill up a 100gb osd so quickly - mon osd full ratio: .9 - mon osd backfillfull_ratio: .85 - mon osd nearfull ratio: .8 - osd failsafe full ratio: .95 -# this doesn't work with failures bc the log writes are not atomic across the two backends -# bluestore bluefs env mirror: true - bdev enable discard: true - bdev async discard: true - ceph-deploy: - fs: xfs - bluestore: yes - conf: - osd: - osd objectstore: bluestore - bluestore block size: 96636764160 - debug bluestore: 20 - debug bluefs: 20 - debug rocksdb: 10 - bluestore fsck on mount: true - # lower the full ratios since we can fill up a 100gb osd so quickly - mon osd full ratio: .9 - mon osd backfillfull_ratio: .85 - mon osd nearfull ratio: .8 - osd failsafe full ratio: .95 - bdev enable discard: true - bdev async discard: true - diff --git a/qa/objectstore_debug/bluestore/compr$/no$/no.yaml b/qa/objectstore_debug/bluestore/compr$/no$/no.yaml new file mode 100644 index 000000000000..350255df13e0 --- /dev/null +++ b/qa/objectstore_debug/bluestore/compr$/no$/no.yaml @@ -0,0 +1,4 @@ +overrides: + ceph: + conf: + osd: diff --git a/qa/objectstore_debug/bluestore/compr$/yes$/lz4.yaml b/qa/objectstore_debug/bluestore/compr$/yes$/lz4.yaml new file mode 100644 index 000000000000..a565dc4acb19 --- /dev/null +++ b/qa/objectstore_debug/bluestore/compr$/yes$/lz4.yaml @@ -0,0 +1,6 @@ +overrides: + ceph: + conf: + osd: + bluestore compression mode: aggressive + bluestore compression algorithm: lz4 diff --git a/qa/objectstore_debug/bluestore/compr$/yes$/snappy.yaml b/qa/objectstore_debug/bluestore/compr$/yes$/snappy.yaml new file mode 100644 index 000000000000..7e4493bbebc5 --- /dev/null +++ b/qa/objectstore_debug/bluestore/compr$/yes$/snappy.yaml @@ -0,0 +1,6 @@ +overrides: + ceph: + conf: + osd: + bluestore compression mode: aggressive + bluestore compression algorithm: snappy diff --git a/qa/objectstore_debug/bluestore/compr$/yes$/zlib.yaml b/qa/objectstore_debug/bluestore/compr$/yes$/zlib.yaml new file mode 100644 index 000000000000..83ec6c8b4a78 --- /dev/null +++ b/qa/objectstore_debug/bluestore/compr$/yes$/zlib.yaml @@ -0,0 +1,6 @@ +overrides: + ceph: + conf: + osd: + bluestore compression mode: aggressive + bluestore compression algorithm: zlib diff --git a/qa/objectstore_debug/bluestore/compr$/yes$/zstd.yaml b/qa/objectstore_debug/bluestore/compr$/yes$/zstd.yaml new file mode 100644 index 000000000000..5149d8aaaf7e --- /dev/null +++ b/qa/objectstore_debug/bluestore/compr$/yes$/zstd.yaml @@ -0,0 +1,6 @@ +overrides: + ceph: + conf: + osd: + bluestore compression mode: aggressive + bluestore compression algorithm: zstd diff --git a/qa/objectstore_debug/bluestore/mem$/low.yaml b/qa/objectstore_debug/bluestore/mem$/low.yaml new file mode 100644 index 000000000000..2b416afb3bee --- /dev/null +++ b/qa/objectstore_debug/bluestore/mem$/low.yaml @@ -0,0 +1,6 @@ +overrides: + ceph: + conf: + osd: + osd memory target: 1610612736 # reduced to 1.5_G + diff --git a/qa/objectstore_debug/bluestore/mem$/normal-1.yaml b/qa/objectstore_debug/bluestore/mem$/normal-1.yaml new file mode 100644 index 000000000000..7645b6e57686 --- /dev/null +++ b/qa/objectstore_debug/bluestore/mem$/normal-1.yaml @@ -0,0 +1,5 @@ +overrides: + ceph: + conf: + osd: +#default 4GB diff --git a/qa/objectstore_debug/bluestore/mem$/normal-2.yaml b/qa/objectstore_debug/bluestore/mem$/normal-2.yaml new file mode 100644 index 000000000000..7645b6e57686 --- /dev/null +++ b/qa/objectstore_debug/bluestore/mem$/normal-2.yaml @@ -0,0 +1,5 @@ +overrides: + ceph: + conf: + osd: +#default 4GB diff --git a/qa/objectstore_debug/bluestore/write$/write_random.yaml b/qa/objectstore_debug/bluestore/write$/write_random.yaml new file mode 100644 index 000000000000..d14f561c72a7 --- /dev/null +++ b/qa/objectstore_debug/bluestore/write$/write_random.yaml @@ -0,0 +1,5 @@ +overrides: + ceph: + conf: + osd: + bluestore write v2 random: true diff --git a/qa/objectstore_debug/bluestore/write$/write_v1.yaml b/qa/objectstore_debug/bluestore/write$/write_v1.yaml new file mode 100644 index 000000000000..4b20e8e52ca8 --- /dev/null +++ b/qa/objectstore_debug/bluestore/write$/write_v1.yaml @@ -0,0 +1,5 @@ +overrides: + ceph: + conf: + osd: + bluestore write v2: false diff --git a/qa/objectstore_debug/bluestore/write$/write_v2.yaml b/qa/objectstore_debug/bluestore/write$/write_v2.yaml new file mode 100644 index 000000000000..238973b1165c --- /dev/null +++ b/qa/objectstore_debug/bluestore/write$/write_v2.yaml @@ -0,0 +1,5 @@ +overrides: + ceph: + conf: + osd: + bluestore write v2: true diff --git a/qa/suites/rados/singleton-bluestore/objectstore/bluestore b/qa/suites/rados/singleton-bluestore/objectstore/bluestore new file mode 120000 index 000000000000..ce7ac806a168 --- /dev/null +++ b/qa/suites/rados/singleton-bluestore/objectstore/bluestore @@ -0,0 +1 @@ +.qa/objectstore_debug/bluestore \ No newline at end of file diff --git a/qa/suites/rados/singleton-bluestore/objectstore/bluestore-bitmap.yaml b/qa/suites/rados/singleton-bluestore/objectstore/bluestore-bitmap.yaml deleted file mode 120000 index 58e253bf6f45..000000000000 --- a/qa/suites/rados/singleton-bluestore/objectstore/bluestore-bitmap.yaml +++ /dev/null @@ -1 +0,0 @@ -.qa/objectstore_debug/bluestore/bluestore-bitmap.yaml \ No newline at end of file diff --git a/qa/suites/rados/singleton-bluestore/objectstore/bluestore-comp-lz4.yaml b/qa/suites/rados/singleton-bluestore/objectstore/bluestore-comp-lz4.yaml deleted file mode 120000 index d694c94945fb..000000000000 --- a/qa/suites/rados/singleton-bluestore/objectstore/bluestore-comp-lz4.yaml +++ /dev/null @@ -1 +0,0 @@ -.qa/objectstore_debug/bluestore/bluestore-comp-lz4.yaml \ No newline at end of file diff --git a/qa/suites/rados/singleton-bluestore/objectstore/bluestore-comp-snappy.yaml b/qa/suites/rados/singleton-bluestore/objectstore/bluestore-comp-snappy.yaml deleted file mode 120000 index d7defabaa3c9..000000000000 --- a/qa/suites/rados/singleton-bluestore/objectstore/bluestore-comp-snappy.yaml +++ /dev/null @@ -1 +0,0 @@ -.qa/objectstore_debug/bluestore/bluestore-comp-snappy.yaml \ No newline at end of file diff --git a/qa/suites/rados/thrash-erasure-code-overwrites/bluestore-bitmap.yaml b/qa/suites/rados/thrash-erasure-code-overwrites/bluestore-bitmap.yaml index 08070caa3878..97d083f1fd29 120000 --- a/qa/suites/rados/thrash-erasure-code-overwrites/bluestore-bitmap.yaml +++ b/qa/suites/rados/thrash-erasure-code-overwrites/bluestore-bitmap.yaml @@ -1 +1 @@ -../thrash-erasure-code/objectstore/bluestore/bluestore-bitmap.yaml \ No newline at end of file +../.qa/objectstore/bluestore-bitmap.yaml \ No newline at end of file diff --git a/qa/suites/smoke/basic/objectstore/bluestore-bitmap.yaml b/qa/suites/smoke/basic/objectstore/bluestore-bitmap.yaml index 58e253bf6f45..a59cf5175069 120000 --- a/qa/suites/smoke/basic/objectstore/bluestore-bitmap.yaml +++ b/qa/suites/smoke/basic/objectstore/bluestore-bitmap.yaml @@ -1 +1 @@ -.qa/objectstore_debug/bluestore/bluestore-bitmap.yaml \ No newline at end of file +.qa/objectstore/bluestore-bitmap.yaml \ No newline at end of file