過去問ドリル

LinuCレベル4 システムアーキテクト 可用性の設計 問26

可用性の設計/フェイルオーバークラスタ

Pacemakerを使った3ノードのフェイルオーバークラスタで、クォーラムによる多数決でリソース制御を設計した。この構成で3台のうち同時に2台が停止した場合の動作として最も適切なものはどれか。

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

正解:B

解説

クォーラムは「過半数のノードが合意している場合のみ動作を継続する」という原則でスプリットブレインを防ぎます。3ノード構成で2ノードが停止すると残り1ノードは全体の過半数(2票)を確保できずクォーラムを失います。Pacemakerはクォーラムを失ったノードでのリソース起動・継続を止め(既定のno-quorum-policyはstop)、共有ストレージへの同時アクセスによるデータ破損を防ぎます。クォーラム喪失時に自動でリソースを引き受けたり現状維持するのはデフォルト動作ではありません。

選択肢ごとの解説

  • A誤り。クォーラムを失ったノードはPacemakerの既定ではリソースを停止します。自動で全リソースを引き受ける動作は標準的な設計ではありません。
  • B正しい。3ノード中1ノードしか残らない場合は過半数に達せずクォーラムを失い、Pacemakerはスプリットブレインを防ぐためにリソースを停止します。
  • C誤り。停止済みのノードへのSTONITH操作はタイムアウトする可能性がありますが、これはクォーラム喪失時の主な動作の説明としては不適切です。クォーラム喪失の直接の結果はリソースの停止です。
  • D誤り。クォーラムを失ったノードがリソースを継続提供すると、共有ストレージへの同時アクセスが発生してデータ破損のリスクが生じます。Pacemakerの既定動作ではありません。
LinuCレベル4 システムアーキテクトの問題を演習モードで解く