LinuCレベル2 202試験の例題と解説
2.13.1高可用システムの実現方式
LinuCレベル2 202試験の出題範囲から「2.13.1 高可用システムの実現方式」についての例題を解いてみます。
例題
Pacemaker/Corosync を用いたクラスタ環境において、Corosyncの主な役割として正しいものはどれか。
- クラスタリソース(サービス)の起動順序を管理する
- 各ノード間のメッセージングとノードの死活監視を担う
- フェイルオーバ時のデータ同期を行う
- ロードバランシング機能を提供する
※この例題は実際の試験問題とは異なります。
解答と解説
正解は、「2.各ノード間のメッセージングとノードの死活監視を担う」です。
Corosyncは、Linuxクラスタの通信基盤となるコンポーネントです。クラスタノード間でのメッセージの交換やノードの死活監視等の役割を担います。Corosyncはクラスタ通信層制御機能を持ちますが、リソース制御は行うことができません。リソース制御やフェイルオーバーの意思決定は Pacemakerが行います。上述のようにCorosyncとPacemakerを連携させることで高可用性クラスタシステムを構築することができます。
次に、例題の各選択肢の詳細について解説をします。
1. クラスタリソース(サービス)の起動順序を管理する
不正解です。
これは、Pacemakerの役割です。Pacemakerは、クラスタシステム上のリソース制御/監視といった役割を担います。
2. 各ノード間のメッセージングとノードの死活監視を担う
正解です。
Corosyncは、メッセージの交換やノードの死活監視といったクラスタ通信層制御機能を持ちます。
3. フェイルオーバ時のデータ同期を行う
不正解です。
データの同期はDRBD(Distributed Replicated Block Device) のような別コンポーネントの役割です。Corosyncはデータ自体を扱いません。状態の伝達が目的です。
4. ロードバランシング機能を提供する
不正解です。
Corosyncはロードバランシング機能は持っていません。ロードバランシングは、HAProxy、LVS、Nginxなどのソフトウェアで提供される機能となります。
クラスタの仕組みを導入することで、万が一障害が発生した時でもサービスの停止を最小限に抑えることが可能となります。用語と各コンポーネントの役割を正しく理解し、障害に強いシステム構成を考えられるようにしましょう。
例題作成者
株式会社デージーネット 経営企画室 今村 凌太