コンピュータ・クラスターとは、複数のコンピュータを結合し、葡萄の房(クラスター)のようにひとまとまりのシステムにしたものであり、それらを実現するためのソフトウェアやハードウェア、更には実現されたシステムを指す。
一台のコンピュータでは得られない、性能や可用性などを得ることができる。
目次
1 名称
2 概要
2.1 目的
2.2 共有形態
3 歴史
4 クラスターパッケージ
4.1 HPC並列クラスター
4.2 高可用(性)クラスター
4.2.1 メインフレーム
4.2.2 UNIX系、Linux、Windows
5 関連項目
6 外部リンク
//
伝統的にコンピュータ・クラスターは、葡萄の房に例えられることが多い。これはDECのクラスターの説明から始まり、多くのベンダにおいても多用されている。その理由は、葡萄の実をクラスターに参加したコンピュータのサーバ(ノード)として、その実を繋ぐ茎をノード間インターコネクトとして考えると判りやすいからである。コンピュータ用語としては単に「クラスター」「クラスタリング」ともいう。
クラスター内の複数のコンピュータは何らかのネットワークを介して相互に接続され、通常はクラスターパッケージによってひとつのコンピュータ・システムとして扱えるように制御されている。
コンピュータ・クラスターの分類は各種あるが、ここでは目的・共有形態・実現レベルの観点から分類し説明する。
利用目的からのクラスターの分類には以下がある。
スケーラビリティ(拡張性。複数のコンピュータを統合化し、一台のコンピュータでは得られない高い処理速度を狙ったもの)
アベイラビリティ(高可用性。複数のコンピュータを統合化し、一台のコンピュータでは得られない高い信頼性を狙ったもの。いくつかのコンピュータが障害や保守で停止しても、サービスは停止しない)
前者の例としては、HPC並列クラスターがある。HPCは超並列とも呼ばれ、過去には専用のスーパーコンピュータが使われた分野だが、マイクロプロセッサの性能向上と並列処理技術の向上により主流となった。このほか、大規模なWebサーバなどで一般的な負荷分散(ロードバランス)クラスターもある。単純な負荷分散クラスターでは各コンピュータ同士の直接の連携は何も無いが、高度な負荷分散クラスタでは各コンピュータ間で運用管理の一元化も行っている。
後者の例としては、メインフレームのホット・スタンバイ構成から連綿と続く、高可用(性)クラスターがある。障害や保守(計画停止)の発生時には、業務処理を単純に引き継ぐ構成(アクティブ-スタンバイ)の他、本番機同士で相互バックアップしておき縮退運用する構成(アクティブ-アクティブ)などがある。また引継ぎ開始から引継ぎ完了までの間は、一時的に業務停止を伴うもの、伴わないものがある(引継ぎの戻しの場合も同様である)。クラスターの対象サーバは通常は同一拠点(データセンター等)だが、災害対策(ディザスター・リカバリー)を考慮した、複数拠点にまたがるメトロ(都市間)クラスターやコンティネンタル(大陸間)クラスターなどの製品やシステムも増えてきている。
なお、実際には拡張性と高可用性を兼ねたパッケージやシステム構成が多い。通常はHPCも1台のコンピュータの故障で全体が停止する事は無く、相互バックアップや負荷分散は全体としての性能を高められるためである(ただし、いずれも障害時には性能劣化となるため、リスクと性能の余裕は予め見込んでおく必要がある)。
リソースの共有形態からみたクラスターの分類には以下がある。
密結合クラスター(クラスターを構成する各コンピュータから、対象のリソースを共有するもの)
疎結合クラスター(クラスターを構成する各コンピュータは、ネットワーク以外に直接のリソース共有が無いもの)
1の例は、一部のコンピュータの障害には対応できるが、対象リソース(外付けディスク装置や、その中に格納されたデータベースなど)自体は単一障害点(SPOF)となるため、別の冗長化と併用する場合が多い。なおOracle Databaseは10gでグリッド技術を導入したが、基本は密結合クラスター(外部DISK共有モデル)である。
2の例は、ネットワークがボトルネックとなり易いため、特に高速なネットワーク(スイッチ等)を使う場合がある。なおグリッドやプロビジョニングは、この発展系と考える事もできる。
クラスターという用語は、DEC(現在ヒューレット・パッカードの一部)が、当時スーパーミニコンとして一世を風靡したVAX-11/780二台を専用のバスで接続して計算能力を提供しクラスターとよんだのが始まり。その後、商用UNIXによる企業基幹系の汎用機置き換え需要に伴い、不足していた高性能化/高可用化を稼ぐため、このクラスター機能を強化している。
クラスター構築用の既存のパッケージには以下がある。