]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | ======================= |
2 | ISA erasure code plugin | |
3 | ======================= | |
4 | ||
5 | The *isa* plugin encapsulates the `ISA | |
6 | <https://01.org/intel%C2%AE-storage-acceleration-library-open-source-version/>`_ | |
7 | library. It only runs on Intel processors. | |
8 | ||
9 | Create an isa profile | |
10 | ===================== | |
11 | ||
12 | To create a new *isa* erasure code profile:: | |
13 | ||
14 | ceph osd erasure-code-profile set {name} \ | |
15 | plugin=isa \ | |
16 | technique={reed_sol_van|cauchy} \ | |
17 | [k={data-chunks}] \ | |
18 | [m={coding-chunks}] \ | |
19 | [ruleset-root={root}] \ | |
20 | [ruleset-failure-domain={bucket-type}] \ | |
21 | [directory={directory}] \ | |
22 | [--force] | |
23 | ||
24 | Where: | |
25 | ||
26 | ``k={data chunks}`` | |
27 | ||
28 | :Description: Each object is split in **data-chunks** parts, | |
29 | each stored on a different OSD. | |
30 | ||
31 | :Type: Integer | |
32 | :Required: No. | |
33 | :Default: 7 | |
34 | ||
35 | ``m={coding-chunks}`` | |
36 | ||
37 | :Description: Compute **coding chunks** for each object and store them | |
38 | on different OSDs. The number of coding chunks is also | |
39 | the number of OSDs that can be down without losing data. | |
40 | ||
41 | :Type: Integer | |
42 | :Required: No. | |
43 | :Default: 3 | |
44 | ||
45 | ``technique={reed_sol_van|cauchy}`` | |
46 | ||
47 | :Description: The ISA plugin comes in two `Reed Solomon | |
48 | <https://en.wikipedia.org/wiki/Reed%E2%80%93Solomon_error_correction>`_ | |
49 | forms. If *reed_sol_van* is set, it is `Vandermonde | |
50 | <https://en.wikipedia.org/wiki/Vandermonde_matrix>`_, if | |
51 | *cauchy* is set, it is `Cauchy | |
52 | <https://en.wikipedia.org/wiki/Cauchy_matrix>`_. | |
53 | ||
54 | :Type: String | |
55 | :Required: No. | |
56 | :Default: reed_sol_van | |
57 | ||
58 | ``ruleset-root={root}`` | |
59 | ||
60 | :Description: The name of the crush bucket used for the first step of | |
61 | the ruleset. For intance **step take default**. | |
62 | ||
63 | :Type: String | |
64 | :Required: No. | |
65 | :Default: default | |
66 | ||
67 | ``ruleset-failure-domain={bucket-type}`` | |
68 | ||
69 | :Description: Ensure that no two chunks are in a bucket with the same | |
70 | failure domain. For instance, if the failure domain is | |
71 | **host** no two chunks will be stored on the same | |
72 | host. It is used to create a ruleset step such as **step | |
73 | chooseleaf host**. | |
74 | ||
75 | :Type: String | |
76 | :Required: No. | |
77 | :Default: host | |
78 | ||
79 | ``directory={directory}`` | |
80 | ||
81 | :Description: Set the **directory** name from which the erasure code | |
82 | plugin is loaded. | |
83 | ||
84 | :Type: String | |
85 | :Required: No. | |
86 | :Default: /usr/lib/ceph/erasure-code | |
87 | ||
88 | ``--force`` | |
89 | ||
90 | :Description: Override an existing profile by the same name. | |
91 | ||
92 | :Type: String | |
93 | :Required: No. | |
94 |