From: Yuan Zhou Date: Thu, 23 Oct 2014 05:27:45 +0000 (+0800) Subject: EC: document the LRC per layer plugin configuration X-Git-Tag: v0.88~46^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F2781%2Fhead;p=ceph.git EC: document the LRC per layer plugin configuration LRC now uses Jerasure as the default EC backend. But it is actually possible to switch to other backend like Isa using the low level configuration. This commits Adds documents on how to specify the EC backend in each LRC layer: Signed-off-by: Yuan Zhou --- diff --git a/doc/rados/operations/erasure-code-lrc.rst b/doc/rados/operations/erasure-code-lrc.rst index 17500c85b57a..112abfa868b8 100644 --- a/doc/rados/operations/erasure-code-lrc.rst +++ b/doc/rados/operations/erasure-code-lrc.rst @@ -226,6 +226,36 @@ OSD is in the same rack as the lost chunk.:: ]' $ ceph osd pool create lrcpool 12 12 erasure LRCprofile +Testing with different Erasure Code backends +-------------------------------------------- + +LRC now uses jerasure as the default EC backend. It is possible to +specify the EC backend/algorithm on a per layer basis using the low +level configuration. The second argument in layers='[ [ "DDc", "" ] ]' +is actually an erasure code profile to be used for this level. The +example below specifies the ISA backend with the cauchy technique to +be used in the lrcpool.:: + + $ ceph osd erasure-code-profile set LRCprofile \ + plugin=lrc \ + mapping=DD_ \ + layers='[ [ "DDc", "plugin=isa technique=cauchy" ] ]' + $ ceph osd pool create lrcpool 12 12 erasure LRCprofile + +You could also use a different erasure code profile for for each +layer.:: + + $ ceph osd erasure-code-profile set LRCprofile \ + plugin=lrc \ + mapping=__DD__DD \ + layers='[ + [ "_cDD_cDD", "plugin=isa technique=cauchy" ], + [ "cDDD____", "plugin=isa" ], + [ "____cDDD", "plugin=jerasure" ], + ]' + $ ceph osd pool create lrcpool 12 12 erasure LRCprofile + + Erasure coding and decoding algorithm =====================================