10.1.1 クラスタシステムの概要
クラスタシステムとは,複数のサーバを連携して1つのシステムとして運用するシステムです。クラスタシステムには,大きく分けて次の2種類があります。
-
HA(High Availability)クラスタシステム(高可用性クラスタシステム)
-
負荷分散クラスタシステム
- 注意
-
この章で,単に「クラスタシステム」と記述している場合は,HAクラスタシステムのことを指します。
- 〈この項の構成〉
(1) HAクラスタシステムとは
「HAクラスタシステム」は,システム全体の可用性を向上させることを目的としたシステムです。高い信頼性が求められる基幹業務システムのアプリケーションサーバやデータベースサーバなどでよく使われています。
HAクラスタシステムは,システムを構成するサーバを冗長化します。HAクラスタシステムでは,業務を実行中のサーバで障害が発生すると,待機していた別のサーバが業務を引き継いで処理します。これを「フェールオーバー」といいます。
クラスタシステムを構成するそれぞれのサーバシステムのうち,業務を実行中のシステムを「実行系ノード」,実行系ノードの障害時に業務を引き継げるよう待機しているシステムを「待機系ノード」と呼びます。
実行系ノードで障害が発生したときのアクセスの流れを次の図に示します。
HAクラスタシステム全体を制御するソフトウェアを「クラスタソフト」といいます。クラスタソフトは,サーバを常に監視し,障害が発生したときに,業務を実行するサーバを実行系ノードから待機系ノードに自動で切り替えます。そのため,クラスタシステムのことを「系切り替えシステム」とも呼びます。
(2) 負荷分散クラスタシステムとは
「負荷分散クラスタシステム」は,複数のサーバで処理の負荷を分散して実行するシステムです。高い処理能力が求められるシステムでよく利用されています。
負荷分散クラスタシステムは,複数のサーバを並列にして,処理を分散することでサーバ1台当たりの処理負荷を低くし,システム全体の処理能力を高めます。また,サーバで障害が発生しても,ほかのノードに処理を切り替えればシステムの可用性も向上できます。
- 補足
-
負荷分散クラスタシステムの例としては,Webシステムのようにリクエストを受け付けるサーバを分散するシステムや,Oracle Real Application Clusterのシステムなどがあります。また,負荷分散クラスタシステム上で運用する業務アプリケーションは,複数のノードで処理を分担できるプログラムであることが必要です。