Fix some bugs when testing opensds ansible
[stor4nfv.git] / src / ceph / doc / rados / operations / erasure-code-isa.rst
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              [crush-root={root}] \
20              [crush-failure-domain={bucket-type}] \
21              [crush-device-class={device-class}] \
22              [directory={directory}] \
23              [--force]
24
25 Where:
26
27 ``k={data chunks}``
28
29 :Description: Each object is split in **data-chunks** parts,
30               each stored on a different OSD.
31
32 :Type: Integer
33 :Required: No.
34 :Default: 7
35
36 ``m={coding-chunks}``
37
38 :Description: Compute **coding chunks** for each object and store them
39               on different OSDs. The number of coding chunks is also
40               the number of OSDs that can be down without losing data.
41
42 :Type: Integer
43 :Required: No.
44 :Default: 3
45
46 ``technique={reed_sol_van|cauchy}``
47
48 :Description: The ISA plugin comes in two `Reed Solomon
49               <https://en.wikipedia.org/wiki/Reed%E2%80%93Solomon_error_correction>`_
50               forms. If *reed_sol_van* is set, it is `Vandermonde
51               <https://en.wikipedia.org/wiki/Vandermonde_matrix>`_, if
52               *cauchy* is set, it is `Cauchy
53               <https://en.wikipedia.org/wiki/Cauchy_matrix>`_.
54
55 :Type: String
56 :Required: No.
57 :Default: reed_sol_van
58
59 ``crush-root={root}``
60
61 :Description: The name of the crush bucket used for the first step of
62               the ruleset. For intance **step take default**.
63
64 :Type: String
65 :Required: No.
66 :Default: default
67
68 ``crush-failure-domain={bucket-type}``
69
70 :Description: Ensure that no two chunks are in a bucket with the same
71               failure domain. For instance, if the failure domain is
72               **host** no two chunks will be stored on the same
73               host. It is used to create a ruleset step such as **step
74               chooseleaf host**.
75
76 :Type: String
77 :Required: No.
78 :Default: host
79
80 ``crush-device-class={device-class}``
81
82 :Description: Restrict placement to devices of a specific class (e.g.,
83               ``ssd`` or ``hdd``), using the crush device class names
84               in the CRUSH map.
85
86 :Type: String
87 :Required: No.
88 :Default:
89
90 ``directory={directory}``
91
92 :Description: Set the **directory** name from which the erasure code
93               plugin is loaded.
94
95 :Type: String
96 :Required: No.
97 :Default: /usr/lib/ceph/erasure-code
98
99 ``--force``
100
101 :Description: Override an existing profile by the same name.
102
103 :Type: String
104 :Required: No.
105