]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
doc/rados/operations/crush-map: update docs on crush tunables 6572/head
authorSage Weil <sage@redhat.com>
Mon, 14 Dec 2015 14:46:05 +0000 (09:46 -0500)
committerSage Weil <sage@redhat.com>
Mon, 14 Dec 2015 14:46:05 +0000 (09:46 -0500)
Signed-off-by: Sage Weil <sage@redhat.com>
doc/rados/operations/crush-map.rst

index d838ea96c83878f98d6436cd03a0ca04df7c5f96..ec6816158a7c611d620f66c26e0a15f7878f3bf6 100644 (file)
@@ -1016,10 +1016,41 @@ CRUSH_TUNABLES3
    start with a non-zero value of r, based on how many attempts the
    parent has already made.  Legacy default is 0, but with this value
    CRUSH is sometimes unable to find a mapping.  The optimal value (in
-   terms of computational cost and correctness) is 1.  However, for
-   legacy clusters that have lots of existing data, changing from 0 to
-   1 will cause a lot of data to move; a value of 4 or 5 will allow
-   CRUSH to find a valid mapping but will make less data move.
+   terms of computational cost and correctness) is 1.
+
+   For existing clusters that have lots of existing data, changing
+   from 0 to 1 will cause a lot of data to move; a value of 4 or 5
+   will allow CRUSH to find a valid mapping but will make less data
+   move.
+
+CRUSH_V4
+--------
+
+ * Bucket type ``straw2``: The new ``straw2`` bucket type fixes
+   several limitations in the original ``straw`` bucket.
+   Specifically, the old ``straw`` buckets would change some mappings
+   that should have changed when a weight was adjusted, while
+   ``straw2`` achieves the original goal of only changing mappings to
+   or from the bucket item whose weight has changed.
+
+   Changing an existing bucket from ``straw`` to ``straw2`` is
+   possible but will result in a reasonably small amount of data
+   movement, depending on how much the bucket item weights vary from
+   each other.  When the weights are all the same no data will move,
+   and when item weights vary significantly there will be more
+   movement.
+
+CRUSH_TUNABLES5
+---------------
+
+ * ``chooseleaf_stable``: Whether a recursive chooseleaf attempt will
+   use a better value for an inner loop that greatly reduces the number
+   of mapping changes when an OSD is marked out.  The legacy value is 0,
+   while the new value of 1 uses the new approach.
+
+   Changing this value on an existing cluster will result in a very
+   large amount of data movement as almost every PG mapping is likely
+   to change.
 
 
 Which client versions support CRUSH_TUNABLES
@@ -1041,6 +1072,18 @@ Which client versions support CRUSH_TUNABLES3
  * v0.78 (firefly) or later
  * Linux kernel version v3.15 or later (for the file system and RBD kernel clients)
 
+Which client versions support CRUSH_V4
+--------------------------------------
+
+ * v0.94 (hammer) or later
+ * Linux kernel version v4.1 or later (for the file system and RBD kernel clients)
+
+Which client versions support CRUSH_TUNABLES5
+---------------------------------------------
+
+ * v10.0.2 (jewel) or later
+ * Linux kernel version v4.5 or later (for the file system and RBD kernel clients)
+
 Warning when tunables are non-optimal
 -------------------------------------