検索

5.4.2. ローカルに修復可能な Erasure Code (LRC) プラグイン

download PDF

jerasure プラグインでは、Ceph が複数の OSD にイレイジャーコーディングされたオブジェクトを保存する際に、1 つの OSD が失われた場合からの復元には、他のすべての OSD からの読み取りが必要です。たとえば、k=8 および m=4jerasure を設定する場合は、OSD の 1 つの OSD が失われると、修復のために他の 11 個から読み取る必要があります。

lrc イレイジャーコードプラグインは、少ない OSD を使用して復元できるようにローカルパリティーチャンクを作成します。たとえば、k=8m=4、および l=4lrc を設定する場合は、4 つの OSD ごとに追加のパリティーチャンクが作成されます。Ceph が単一の OSD を失うと、そのオブジェクトデータを eleven ではなく 4 つの OSD のみで復旧できます。

すべてのホストが同じスイッチに接続されている場合はおそらく関心のあるユースケースではありませんが、lrc イレイジャーコードプラグインを使用する際に、ラック間の帯域幅使用量の使用量を低減することができます。

$ ceph osd erasure-code-profile set LRCprofile \
     plugin=lrc \
     k=4 m=2 l=3 \
     crush-failure-domain=host
$ ceph osd pool create lrcpool 12 12 erasure LRCprofile

1.2 バージョンでは、プライマリー OSD が失われたチャンクと同じラックにある場合に限り、帯域幅を低下させることができます。

$ ceph osd erasure-code-profile set LRCprofile \
     plugin=lrc \
     k=4 m=2 l=3 \
     crush-locality=rack \
     crush-failure-domain=host
$ ceph osd pool create lrcpool 12 12 erasure LRCprofile

5.4.2.1. LRC プロファイルの作成

新しい LRC Erasure コードプロファイルを作成するには、以下のコマンドを実行します。

ceph osd erasure-code-profile set <name> \
     plugin=lrc \
     k=<data-chunks> \
     m=<coding-chunks> \
     l=<locality> \
     [crush-root=<root>] \
     [crush-locality=<bucket-type>] \
     [crush-failure-domain=<bucket-type>] \
     [directory=<directory>] \
     [--force]

詳細は以下のようになります。

k
説明
各オブジェクトは data-chunks の部分で分割され、それぞれが異なる OSD に保管されます。
タイプ
整数
必須
Yes
4
m
説明
各オブジェクトの コーディングチャンク を計算し、それらを異なる OSD に保存します。コーディングのチャンクの数は、データが失われることなくダウンできる OSD 数でもあります。
タイプ
整数
必須
Yes
2
l
説明
コーディングとデータチャンクをサイズの 局所性 のセットにグループ化します。たとえば、k=4 および m=2locality=3 の場合は、3 つのグループが 2 つ作成されます。各セットは、別のセットからチャンクを読み込まなくても、復旧できます。
タイプ
整数
必須
Yes
3
crush-root
説明
ルールの最初のステップに使用される crush バケットの名前。たとえば、step take default となります。
タイプ
文字列
必須
いいえ
デフォルト
default
CRUSH-locality
説明
l で定義される各チャンクのセットの crush バケットのタイプが保存されます。たとえば、rack に設定すると、l チャンクの各グループは異なるラックに配置されます。これは、step choose rack などのルールステップを作成するために使用されます。設定されていない場合、そのようなグループ化は行われません。
タイプ
文字列
必須
No
crush-failure-domain
説明
同じ障害ドメインを持つバケットに 2 つのチャンクがないことを確認します。たとえば、障害ドメインが ホスト の場合、2 つのチャンクは同じホストに保存されません。これは、step chooseleaf host などのルールステップを作成するのに使用します。
タイプ
文字列
必須
いいえ
デフォルト
host
directory
説明
イレイジャーコードプラグインが読み込まれた ディレクトリー 名を設定します。
タイプ
文字列
必須
いいえ
デフォルト
/usr/lib/ceph/erasure-code
--force
説明
同じ名前で既存のプロファイルを上書きします。
タイプ
文字列
必須
No
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.