diff options
author | Sage Weil <sage@newdream.net> | 2012-02-23 11:42:08 -0800 |
---|---|---|
committer | Sage Weil <sage@newdream.net> | 2012-02-23 11:53:48 -0800 |
commit | 7700ea94f971feed1486bce5fe9cf2a88ef046f9 (patch) | |
tree | 89abb9b07d9e65caca67f45ef9f6d41849a84cc6 | |
parent | 286df2db3ea4e7ba6522e2042685f0c971b3fa6d (diff) | |
download | ceph-7700ea94f971feed1486bce5fe9cf2a88ef046f9.tar.gz |
crushtool: add --reweight-item cli tests
Test list, tree, and straw buckets.
Signed-off-by: Sage Weil <sage@newdream.net>
-rw-r--r-- | src/test/cli/crushtool/multitype.after | 87 | ||||
-rw-r--r-- | src/test/cli/crushtool/multitype.before | 87 | ||||
-rw-r--r-- | src/test/cli/crushtool/reweight.t | 8 |
3 files changed, 182 insertions, 0 deletions
diff --git a/src/test/cli/crushtool/multitype.after b/src/test/cli/crushtool/multitype.after new file mode 100644 index 00000000000..9c7da0aad6c --- /dev/null +++ b/src/test/cli/crushtool/multitype.after @@ -0,0 +1,87 @@ +# begin crush map + +# devices +device 0 osd0 +device 1 osd1 +device 2 osd2 +device 3 osd3 +device 4 osd4 +device 5 osd5 +device 6 osd6 +device 7 osd7 +device 8 osd8 +device 9 osd9 + +# types +type 0 osd +type 1 host +type 2 cluster + +# buckets +host host0 { + id -2 # do not change unnecessarily + # weight 3.000 + alg straw + hash 0 # rjenkins1 + item osd0 weight 2.000 + item osd1 weight 1.000 +} +host host1 { + id -3 # do not change unnecessarily + # weight 3.000 + alg list # add new items at the end; do not change order unnecessarily + hash 0 # rjenkins1 + item osd3 weight 2.000 + item osd4 weight 1.000 +} +host host2 { + id -4 # do not change unnecessarily + # weight 5.500 + alg tree # do not change pos for existing items unnecessarily + hash 0 # rjenkins1 + item osd5 weight 1.000 pos 0 + item osd6 weight 2.000 pos 1 + item osd7 weight 0.500 pos 2 + item osd8 weight 1.000 pos 3 + item osd9 weight 1.000 pos 4 +} +cluster cluster0 { + id -1 # do not change unnecessarily + # weight 11.500 + alg straw + hash 0 # rjenkins1 + item host0 weight 3.000 + item host1 weight 3.000 + item host2 weight 5.500 +} + +# rules +rule data { + ruleset 0 + type replicated + min_size 1 + max_size 10 + step take cluster0 + step chooseleaf firstn 0 type host + step emit +} +rule metadata { + ruleset 1 + type replicated + min_size 1 + max_size 10 + step take cluster0 + step chooseleaf firstn 0 type host + step emit +} +rule rbd { + ruleset 2 + type replicated + min_size 1 + max_size 10 + step take cluster0 + step chooseleaf firstn 0 type host + step emit +} + +# end crush map diff --git a/src/test/cli/crushtool/multitype.before b/src/test/cli/crushtool/multitype.before new file mode 100644 index 00000000000..8adcda9c3b7 --- /dev/null +++ b/src/test/cli/crushtool/multitype.before @@ -0,0 +1,87 @@ +# begin crush map + +# devices +device 0 osd0 +device 1 osd1 +device 2 osd2 +device 3 osd3 +device 4 osd4 +device 5 osd5 +device 6 osd6 +device 7 osd7 +device 8 osd8 +device 9 osd9 + +# types +type 0 osd +type 1 host +type 2 cluster + +# buckets +host host0 { + id -2 # do not change unnecessarily + # weight 2.000 + alg straw + hash 0 # rjenkins1 + item osd0 weight 1.000 + item osd1 weight 1.000 +} +host host1 { + id -3 # do not change unnecessarily + # weight 2.000 + alg list + hash 0 # rjenkins1 + item osd3 weight 1.000 + item osd4 weight 1.000 +} +host host2 { + id -4 # do not change unnecessarily + # weight 2.000 + alg tree + hash 0 # rjenkins1 + item osd5 weight 1.000 + item osd6 weight 1.000 + item osd7 weight 1.000 + item osd8 weight 1.000 + item osd9 weight 1.000 +} +cluster cluster0 { + id -1 # do not change unnecessarily + # weight 2.000 + alg straw + hash 0 # rjenkins1 + item host0 weight 2.000 + item host1 weight 2.000 + item host2 weight 5.000 +} + +# rules +rule data { + ruleset 0 + type replicated + min_size 1 + max_size 10 + step take cluster0 + step chooseleaf firstn 0 type host + step emit +} +rule metadata { + ruleset 1 + type replicated + min_size 1 + max_size 10 + step take cluster0 + step chooseleaf firstn 0 type host + step emit +} +rule rbd { + ruleset 2 + type replicated + min_size 1 + max_size 10 + step take cluster0 + step chooseleaf firstn 0 type host + step emit +} + +# end crush map diff --git a/src/test/cli/crushtool/reweight.t b/src/test/cli/crushtool/reweight.t new file mode 100644 index 00000000000..f4da5c9cb30 --- /dev/null +++ b/src/test/cli/crushtool/reweight.t @@ -0,0 +1,8 @@ + $ crushtool -c "$TESTDIR/multitype.before" -o mt > /dev/null + $ crushtool -i mt --reweight-item osd0 2.0 -o mt > /dev/null + $ crushtool -i mt --reweight-item osd3 2.0 -o mt > /dev/null + $ crushtool -i mt --reweight-item osd6 2.0 -o mt > /dev/null + $ crushtool -i mt --reweight-item osd7 .5 -o mt > /dev/null + $ crushtool -d mt -o final + $ diff final "$TESTDIR/multitype.after" + $ rm mt final |