LinuCレベル4 システムアーキテクト ネットワークとストレージの選定 問24
ネットワークとストレージの選定/集中型および分散型ストレージ1つのCephクラスタに、仮想マシンのディスクと、監視カメラの映像の長期保存を収容する。仮想マシンのディスクは小さなランダム書き込みが多く、低遅延が求められる。映像は追記するだけで書き換えず、容量の大半を占め、読み出しはまれで、S3互換のAPIで保存する。容量のコストを抑えつつ、両方の性能の要件を満たしたい。プールの設計として最も適切なものはどれか。
当サイトのオリジナル問題(LinuCレベル4 システムアーキテクトの出題範囲「ネットワークとストレージの選定」に対応。実際の試験問題ではありません)
- A仮想マシン用はレプリカ3のプールをRBDで使い、映像用はイレイジャーコーディングのプールをRGWのデータの格納先にする
- B容量効率をそろえるため両方ともイレイジャーコーディングのプールにし、仮想マシンのディスクもRBDでそこに置く
- C性能をそろえるため両方ともレプリカ3のプールにし、映像もRBDのボリュームに作ったファイルシステムに保存する
- D仮想マシン用はイレイジャーコーディングのプールをRBDで使い、映像用はレプリカ3のプールをRGWのデータの格納先にする
正解:A
解説
Cephのプールの冗長化には、同じデータを複数のOSDに持つレプリケーションと、データをk個の断片とm個のパリティに分けて持つイレイジャーコーディングがあります。レプリカ3は容量を3倍消費しますが、小さな書き込みも低遅延で処理できるため、仮想マシンのディスクに向きます。イレイジャーコーディングは例えばk=4、m=2なら1.5倍の容量で2台の故障に耐えられますが、一部分の書き換えでは断片の読み直しとパリティの再計算が必要になり、小さなランダム書き込みの性能が落ちます。追記中心で大容量の映像をRGWで保存する用途は、イレイジャーコーディングの容量効率が生きる典型的な例です。
選択肢ごとの解説
- A正しい。書き込み特性に合わせて冗長化方式を使い分け、容量の大半を占める映像でイレイジャーコーディングの容量効率を得られます。
- B誤り。イレイジャーコーディングのプールでもRBDは使えますが、小さなランダム書き込みでは断片の読み直しとパリティの再計算が生じ、低遅延の要件を満たしにくくなります。
- C誤り。レプリカ3は性能面では問題ありませんが、容量の大半を占める映像まで3倍の容量で持つため、容量のコストを抑える要件に反します。映像の保存にS3互換のAPIを使う要件も満たしません。
- D誤り。書き込み特性と冗長化方式の組み合わせが逆です。仮想マシンのディスクの性能が落ち、容量を多く使う映像では容量効率も得られません。