過去問ドリル

LinuCレベル4 システムアーキテクト ネットワークとストレージの選定 問20

ネットワークとストレージの選定/集中型および分散型ストレージ

3台のKVMホストがFC SAN上の同じLUNを共有し、その上のLVMの論理ボリューム(LV)を仮想マシンのディスクとして使う。どのホストからでも新しいLVを作成できるようにしたく、1つのLVを同時に2台のホストで使って仮想マシンのディスクを壊す事態は防ぎたい。LVMの設計として最も適切なものはどれか。

当サイトのオリジナル問題(LinuCレベル4 システムアーキテクトの出題範囲「ネットワークとストレージの選定」に対応。実際の試験問題ではありません)

正解:C

解説

複数のホストから同じボリュームグループを使う場合は、LVMのメタデータの更新とLVの活性化をホスト間で調停する仕組みが必要です。かつてはclvmd(cLVM)が使われていましたが、RHEL 8以降などの現行のディストリビューションでは、lvmlockdとロックマネージャ(dlmまたはsanlock)による共有ボリュームグループがその役割を担います。共有ボリュームグループでは、LVを排他モードで活性化すると他のホストでは活性化できなくなるため、1つのLVを複数のホストが同時に使う事故を防げます。ロックなしで同じPVを複数ホストから扱うと、メタデータの食い違いやデータ破損の原因になります。

選択肢ごとの解説

  • A誤り。ローカルのボリュームグループは他のホストによる変更を想定しておらず、各ホストのメタデータの認識が食い違ってボリュームグループを壊すおそれがあります。運用手順だけでは同じLVの同時利用も防げません。
  • B誤り。XFSは複数のホストからの同時マウントに対応しないため、ファイルシステムが壊れます。複数ホストで同時にマウントするならGFS2などのクラスタファイルシステムが必要です。
  • C正しい。lvmlockdがホスト間でメタデータの更新とLVの活性化を調停するので、どのホストからでもLVを作成でき、排他的な活性化で同じLVの同時利用を防げます。
  • D誤り。メタデータを読み直すだけでは、複数のホストが同時に更新したときの競合を防げません。LVの活性化も調停されないため、同じLVを2台で使う事故も防げません。
LinuCレベル4 システムアーキテクトの問題を演習モードで解く