Linuxクラスター
Linuxクラスター(リナックスクラスター)は、Linuxを利用しているコンピュータ・クラスターである。一般に疎結合クラスターで、対称型マルチプロセッシング (SMP) が、CPUとメモリをより密に繋いでいるのに比べると、クラスターの結合は疎である。クラスターの各要素は、完全に独立したコンピュータとして動作しており、高速なLANなどを利用してお互いに接続されている。
要素となるマシンはLinuxないしGNU/Linuxを搭載したコンピュータである。
Linuxを動作させるために必要なハードウェアは、ごく一般的なパーソナルコンピュータでよいため、手軽にスーパーコンピュータを作り始められることが特徴である。また、Linuxはスケーラビリティに優れ、高速のコンピュータ上でも動いている。このため、低速な環境でシステムを構築してから、徐々に高速なコンピュータ環境に向かって進化させることが出来る。
また、各コンピュータを繋ぐのには標準的なLANを使っているため、接続のハードウェアや技術、ソフトウェアは、従来の物を使うことが出来る。ハードウェアの製作やメンテナンスに特別な部品や技術を使う必要はない。
Linuxは、オペレーティングシステム (OS) のソースコードを始め全ての必要なソフトウェアをソースコードも含めて無料で手にいれることができる。そのため、利用者や研究者が必要に応じてあらゆる部分に手を加えることが出来るのが大きな特徴である。また、使用に当たってコンピュータ毎に支払うOSのライセンス料もない。したがって投資に必要なのはハードウェアなどの物理的な資源と人件費だけということになる。参照:フリーソフトウェア、コピーレフトなソフトウェア。
ウェブサーバなど、インターネット全体から大量の要求が同時に発生し、秒のオーダーで結果を返す必要がある。
このための技法には多くの例がある。以下の例で述べる MOSIX もその目的で使うことが出来る。
ちなみに、世界最大のコンピュータ・クラスターを保有すると言われているインターネットの検索エンジンのグーグルは、Linuxクラスターでできている。Googleのコンピュータ・クラスターを参照。
ごく普通のパーソナルコンピュータを多数(場合によっては数百から数千)、高速のネットワークで繋いで、いわゆるスーパーコンピュータとしての性能を出せることから、場合によっては通常のスーパーコンピュータの性能を10分の1以下の予算で作ることができる。また、研究者が自分達でも作れることから結構流行した。
マイクロプロセッサの進歩により高速のコンピュータが作られ、高速のイーサネットによりごく一般的なネットワークの手法でコンピュータ間を接続できることが、Linuxクラスターをもたらした。また、高速のイーサネットを更に複数並行して接続し更に高速なLANを構築する技法も完成されている。現状では転送速度がギガビット/秒のイーサネットが使われることが多い。
非常に高速な処理をする専用のクラスターを構成する場合は、以下の例で示す Beowulf の技法を使って実現されることが多い。
要素になるコンピュータを個人用のデスクトップや他の目的のサーバにも使い、その余剰の計算能力をお互いにわかちあうような場合には、以下の例で示す MOSIX を使う場合がある。