]> git.proxmox.com Git - ceph.git/blob - ceph/src/test/cli/crushtool/help.t
update sources to v12.2.5
[ceph.git] / ceph / src / test / cli / crushtool / help.t
1 $ crushtool --help
2 usage: crushtool ...
3
4 Display, modify and test a crush map
5
6 There are five stages, running one after the other:
7
8 - input/build
9 - tunables adjustments
10 - modifications
11 - display/test
12 - output
13
14 Options that are not specific to a stage.
15
16 [--infn|-i infile]
17 read the crush map from infile
18
19 Options for the input/build stage
20
21 --decompile|-d map decompile a crush map to source
22 [--outfn|-o outfile]
23 specify output for for (de)compilation
24 --compile|-c map.txt compile a map from source
25 --enable-unsafe-tunables
26 compile with unsafe tunables
27 --build --num_osds N layer1 ...
28 build a new map, where each 'layer' is
29 'name (uniform|straw2|straw|list|tree) size'
30
31 Options for the tunables adjustments stage
32
33 --set-choose-local-tries N
34 set choose local retries before re-descent
35 --set-choose-local-fallback-tries N
36 set choose local retries using fallback
37 permutation before re-descent
38 --set-choose-total-tries N
39 set choose total descent attempts
40 --set-chooseleaf-descend-once <0|1>
41 set chooseleaf to (not) retry the recursive descent
42 --set-chooseleaf-vary-r <0|1>
43 set chooseleaf to (not) vary r based on parent
44 --set-chooseleaf-stable <0|1>
45 set chooseleaf firstn to (not) return stable results
46
47 Options for the modifications stage
48
49 -i mapfn --add-item id weight name [--loc type name ...]
50 insert an item into the hierarchy at the
51 given location
52 -i mapfn --update-item id weight name [--loc type name ...]
53 insert or move an item into the hierarchy at the
54 given location
55 -i mapfn --remove-item name
56 remove the given item
57 -i mapfn --reweight-item name weight
58 reweight a given item (and adjust ancestor
59 weights as needed)
60 -i mapfn --add-bucket name type [--loc type name ...]
61 insert a bucket into the hierachy at the given
62 location
63 -i mapfn --move name --loc type name ...
64 move the given item to specified location
65 -i mapfn --reweight recalculate all bucket weights
66 -i mapfn --create-simple-rule name root type mode
67 create crush rule <name> to start from <root>,
68 replicate across buckets of type <type>, using
69 a choose mode of <firstn|indep>
70 -i mapfn --create-replicated-rule name root type
71 create crush rule <name> to start from <root>,
72 replicate across buckets of type <type>
73 --device-class <class>
74 use device class <class> for new rule
75 -i mapfn --remove-rule name
76 remove the specified crush rule
77
78 Options for the display/test stage
79
80 -f --format the format of --dump, defaults to json-pretty
81 can be one of json, json-pretty, xml, xml-pretty,
82 table, table-kv, html, html-pretty
83 --dump dump the crush map
84 --tree print map summary as a tree
85 --check [max_id] check if any item is referencing an unknown name/type
86 -i mapfn --show-location id
87 show location for given device id
88 -i mapfn --test test a range of inputs on the map
89 [--min-x x] [--max-x x] [--x x]
90 [--min-rule r] [--max-rule r] [--rule r] [--ruleset rs]
91 [--num-rep n]
92 [--pool-id n] specifies pool id
93 [--batches b] split the CRUSH mapping into b > 1 rounds
94 [--weight|-w devno weight]
95 where weight is 0 to 1.0
96 [--simulate] simulate placements using a random
97 number generator in place of the CRUSH
98 algorithm
99 --show-utilization show OSD usage
100 --show-utilization-all
101 include zero weight items
102 --show-statistics show chi squared statistics
103 --show-mappings show mappings
104 --show-bad-mappings show bad mappings
105 --show-choose-tries show choose tries histogram
106 --output-name name
107 prepend the data file(s) generated during the
108 testing routine with name
109 --output-csv
110 export select data generated during testing routine
111 to CSV files for off-line post-processing
112 use --help-output for more information
113
114 Options for the output stage
115
116 [--outfn|-o outfile]
117 specify output for modified crush map
118
119
120 $ crushtool --help-output
121 data output from testing routine ...
122 absolute_weights
123 the decimal weight of each OSD
124 data layout: ROW MAJOR
125 OSD id (int), weight (int)
126 batch_device_expected_utilization_all
127 the expected number of objects each OSD should receive per placement batch
128 which may be a decimal value
129 data layout: COLUMN MAJOR
130 round (int), objects expected on OSD 0...OSD n (float)
131 batch_device_utilization_all
132 the number of objects stored on each OSD during each placement round
133 data layout: COLUMN MAJOR
134 round (int), objects stored on OSD 0...OSD n (int)
135 device_utilization_all
136 the number of objects stored on each OSD at the end of placements
137 data_layout: ROW MAJOR
138 OSD id (int), objects stored (int), objects expected (float)
139 device_utilization
140 the number of objects stored on each OSD marked 'up' at the end of placements
141 data_layout: ROW MAJOR
142 OSD id (int), objects stored (int), objects expected (float)
143 placement_information
144 the map of input -> OSD
145 data_layout: ROW MAJOR
146 input (int), OSD's mapped (int)
147 proportional_weights_all
148 the proportional weight of each OSD specified in the CRUSH map
149 data_layout: ROW MAJOR
150 OSD id (int), proportional weight (float)
151 proportional_weights
152 the proportional weight of each 'up' OSD specified in the CRUSH map
153 data_layout: ROW MAJOR
154 OSD id (int), proportional weight (float)