]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
Doc: add write back throttling stuff in document and test scripts 4792/head
authorliumingxin <mingxinliu@ubuntukylin.com>
Mon, 1 Jun 2015 08:50:31 +0000 (16:50 +0800)
committerliumingxin <mingxinliu@ubuntukylin.com>
Wed, 3 Jun 2015 07:57:14 +0000 (15:57 +0800)
Signed-off-by: Mingxin Liu <mingxinliu@ubuntukylin.com>
Reviewed-by: Li Wang <liwang@ubuntukylin.com>
Suggested-by: Nick Fisk <nick@fisk.me.uk>
doc/dev/cache-pool.rst
doc/man/8/ceph.rst
doc/rados/operations/cache-tiering.rst
doc/rados/operations/pools.rst
qa/workunits/cephtool/test.sh

index f44cbd99ac4a8db84bdbee5d1e9a09e5d42fc598..b749950c364b58721468e594a56c137dbb7a7491 100644 (file)
@@ -153,6 +153,7 @@ The thresholds at which Ceph will flush or evict objects is specified
 relative to a 'target size' of the pool.  For example::
 
  ceph osd pool set foo-hot cache_target_dirty_ratio .4
+ ceph osd pool set foo-hot cache_target_dirty_high_ratio .6
  ceph osd pool set foo-hot cache_target_full_ratio .8
 
 will begin flushing dirty objects when 40% of the pool is dirty and begin
index f9502215a1016fedc6fb866ed34b0eef6a7cf109..4e8b2ec5ce9b749327ae04bb4d05faaa755c71ec 100644 (file)
@@ -876,7 +876,7 @@ Usage::
 Only for tiered pools::
 
        ceph osd pool get <poolname> hit_set_type|hit_set_period|hit_set_count|hit_set_fpp|
-       target_max_objects|target_max_bytes|cache_target_dirty_ratio|
+       target_max_objects|target_max_bytes|cache_target_dirty_ratio|cache_target_dirty_high_ratio|
        cache_target_full_ratio|cache_min_flush_age|cache_min_evict_age|
        min_read_recency_for_promote
 
@@ -926,6 +926,7 @@ Usage::
        pgp_num|crush_ruleset|hashpspool|nodelete|nopgchange|nosizechange|
        hit_set_type|hit_set_period|hit_set_count|hit_set_fpp|debug_fake_ec_pool|
        target_max_bytes|target_max_objects|cache_target_dirty_ratio|
+       cache_target_dirty_high_ratio|
        cache_target_full_ratio|cache_min_flush_age|cache_min_evict_age|auid|
        min_read_recency_for_promote|write_fadvise_dontneed
        <val> {--yes-i-really-mean-it}
index bf6f8e556502515f17f8e9f107f1986b49a54710..3643db4e80062d9bbff882261ac226c4b0e6799a 100644 (file)
@@ -219,6 +219,17 @@ For example, setting the value to ``0.4`` will begin flushing modified
 
        ceph osd pool set hot-storage cache_target_dirty_ratio 0.4
 
+When the dirty objects reaches a certain percentage of its capacity, flush dirty
+objects with a higher speed. To set the ``cache_target_dirty_high_ratio``::
+
+       ceph osd pool set {cachepool} cache_target_dirty_high_ratio {0.0..1.0}
+
+For example, setting the value to ``0.6`` will begin aggressively flush diryt objects
+when they reach 60% of the cache pool's capacity. obviously, we'd better set the value
+between dirty_ratio and full_ratio::
+
+       ceph osd pool set hot-storage cache_target_dirty_high_ratio 0.6
+
 When the cache pool reaches a certain percentage of its capacity, the cache
 tiering agent will evict objects to maintain free capacity. To set the 
 ``cache_target_full_ratio``, execute the following:: 
index 95ed7a6742aee9d3df5bb3239ce1790f78c43281..4696c7d562fff229de907732e3a7ee4b6ee62038 100644 (file)
@@ -348,6 +348,16 @@ You may set values for the following keys:
 :Default: ``.4``
 
 
+``cache_target_dirty_high_ratio``
+
+:Description: The percentage of the cache pool containing modified (dirty)
+              objects before the cache tiering agent will flush them to the
+              backing storage pool with a higher speed.
+
+:Type: Double
+:Default: ``.6``
+
+
 ``cache_target_full_ratio``
 
 :Description: The percentage of the cache pool containing unmodified (clean)
@@ -486,6 +496,15 @@ You may get values for the following keys:
 :Type: Double
 
 
+``cache_target_dirty_high_ratio``
+
+:Description: The percentage of the cache pool containing modified (dirty)
+              objects before the cache tiering agent will flush them to the
+              backing storage pool with a higher speed.
+
+:Type: Double
+
+
 ``cache_target_full_ratio``
 
 :Description: The percentage of the cache pool containing unmodified (clean)
index 7e21363c18e8b2f588006fa1ba8bd0b4de7f6742..9af5496825aed93259821f61513da7a2205d30ad 100755 (executable)
@@ -1341,6 +1341,11 @@ function test_mon_osd_tiered_pool_set()
     grep 'cache_target_dirty_ratio:[ \t]\+0.123'
   expect_false ceph osd pool set real-tier cache_target_dirty_ratio -.2
   expect_false ceph osd pool set real-tier cache_target_dirty_ratio 1.1
+  ceph osd pool set real-tier cache_target_dirty_high_ratio .123
+  ceph osd pool get real-tier cache_target_dirty_high_ratio | \
+    grep 'cache_target_dirty_high_ratio:[ \t]\+0.123'
+  expect_false ceph osd pool set real-tier cache_target_dirty_high_ratio -.2
+  expect_false ceph osd pool set real-tier cache_target_dirty_high_ratio 1.1
   ceph osd pool set real-tier cache_target_full_ratio .123
   ceph osd pool get real-tier cache_target_full_ratio | \
     grep 'cache_target_full_ratio:[ \t]\+0.123'
@@ -1380,6 +1385,10 @@ function test_mon_osd_tiered_pool_set()
   expect_false ceph osd pool get fake-tier cache_target_dirty_ratio
   expect_false ceph osd pool set fake-tier cache_target_dirty_ratio -.2
   expect_false ceph osd pool set fake-tier cache_target_dirty_ratio 1.1
+  expect_false ceph osd pool set fake-tier cache_target_dirty_high_ratio .123
+  expect_false ceph osd pool get fake-tier cache_target_dirty_high_ratio
+  expect_false ceph osd pool set fake-tier cache_target_dirty_high_ratio -.2
+  expect_false ceph osd pool set fake-tier cache_target_dirty_high_ratio 1.1
   expect_false ceph osd pool set fake-tier cache_target_full_ratio .123
   expect_false ceph osd pool get fake-tier cache_target_full_ratio
   expect_false ceph osd pool set fake-tier cache_target_full_ratio 1.0