initial code repo
[stor4nfv.git] / src / ceph / src / test / cli / crushtool / device-class.crush
diff --git a/src/ceph/src/test/cli/crushtool/device-class.crush b/src/ceph/src/test/cli/crushtool/device-class.crush
new file mode 100644 (file)
index 0000000..a3c1a1f
--- /dev/null
@@ -0,0 +1,92 @@
+# begin crush map
+
+# devices
+device 0 device0 class ssd
+device 1 device1 class ssd
+device 2 device2 class hdd
+
+# types
+type 0 device
+type 1 host
+type 2 rack
+type 3 root
+
+# buckets
+host host0 {
+       id -1           # do not change unnecessarily
+       id -6 class ssd         # do not change unnecessarily
+       id -11 class hdd                # do not change unnecessarily
+       # weight 1.000
+       alg straw
+       hash 0  # rjenkins1
+       item device0 weight 1.000
+}
+host host1 {
+       id -2           # do not change unnecessarily
+       id -7 class ssd         # do not change unnecessarily
+       id -12 class hdd                # do not change unnecessarily
+       # weight 1.000
+       alg straw
+       hash 0  # rjenkins1
+       item device1 weight 1.000
+}
+host host2 {
+       id -5           # do not change unnecessarily
+       id -8 class ssd         # do not change unnecessarily
+       id -13 class hdd                # do not change unnecessarily
+       # weight 1.000
+       alg straw
+       hash 0  # rjenkins1
+       item device2 weight 1.000
+}
+rack rack0 {
+       id -3           # do not change unnecessarily
+       id -9 class ssd         # do not change unnecessarily
+       id -14 class hdd                # do not change unnecessarily
+       # weight 3.000
+       alg straw
+       hash 0  # rjenkins1
+       item host0 weight 1.000
+       item host1 weight 1.000
+       item host2 weight 1.000
+}
+root root {
+       id -4           # do not change unnecessarily
+       id -10 class ssd                # do not change unnecessarily
+       id -15 class hdd                # do not change unnecessarily
+       # weight 4.000
+       alg straw
+       hash 0  # rjenkins1
+       item rack0 weight 4.000
+}
+
+# rules
+rule data-ssd {
+       id 1
+       type replicated
+       min_size 2
+       max_size 2
+       step take root class ssd
+       step chooseleaf firstn 0 type rack
+       step emit
+}
+rule data-hdd {
+       id 2
+       type replicated
+       min_size 2
+       max_size 2
+       step take root class hdd
+       step chooseleaf firstn 0 type rack
+       step emit
+}
+rule data {
+       id 3
+       type replicated
+       min_size 2
+       max_size 2
+       step take root
+       step chooseleaf firstn 0 type rack
+       step emit
+}
+
+# end crush map