
このページでは、Linux-HAプロジェクトのリリース1アーキテクチャについて説明します。リリース 2[1]アーキテクチャの概要については、ベーシックアーキテクチャのページをご覧ください。
Linux-HAプロジェクトの中でも、最も有名なコンポーネントがHeartbeat[2]です。Heartbeat[2]は、補助メッセージとして、ネットワーク(またはシリアルポート)を通じて、Heartbeat[2]以外のインスタンスに対するheartbeatパケットを送信します。
Heartbeat[2]は、クラスタ[3]全体にまたがるinitデーモンと大変似た働きをします。管理されたサービスそれぞれが、init(8)リスポーンディレクティブ(respawn directive)を伴ってスポーンされているかのように、常に、動作を確認します。
heartbeatパケットを受信しなくなると、そのノード[4]は停止されたものと仮定され、提供していたサービス(リソース[5])は、別のノード[4]にフェイルオーバ[6]されます。こうしたノード停止の仮定は、STONITH[7]やwatchdog[8]タイマを正しく統合することで、確実に行うことができます。
Heartbeat[2]はまた、ルータとスイッチについても、ping[9]またはping_group[10]ディレクティブを用いて、クラスタメンバーのように監視をします。さらに、Heartbeat[2]は、ipfail[11]プログラムを結合して、ネットワークの接続性が危険にさらされた場合にもフェイルオーバを起こすことが可能です。
Heartbeat[2]は、haresources[12]ファイルの設定どおりに、サービス(リソース[13])を提供します。haresources[12]ファイルのサービスは、左から右の順番でスタートし、右から左の順番でストップします。
Heartbeat[2]は、さまざまなメカニズムを用いて、通信を行います。 UDP broadcast[14]、UDP multicast[15]、UDP unicast[16]、 シリアル通信[17]経路を組み合わせて、通信が行えます。
Heartbeatは、迷子になったパケット(lost packets)や壊れたパケット(corrupted packets)に対処するために、マルチキャスト通信プロトコルを使用します。
クラスタコンセプト[18]、ファクトシート[19]、ipfail[11]、ha.cf[20]、 Heartbeat[2]、haresources[12]、Heartbeatリソースエージェント[13]、Heartbeatリリース2[1]、ベーシックアーキテクチャ[21]、テクニカルペーパー[22]
| [1] | http://www.linux-ha.org/ja/v2_ja |
| [2] | http://www.linux-ha.org/ja/Heartbeat_ja |
| [3] | http://ja.wikipedia.org/wiki/コンピュータ・クラスター |
| [4] | http://www.linux-ha.org/ja/ClusterNode_ja |
| [5] | http://www.linux-ha.org/ja/resource_ja |
| [6] | http://en.wikipedia.org/wiki/Failover |
| [7] | http://www.linux-ha.org/ja/STONITH_ja |
| [8] | http://www.linux-ha.org/ja/ha.cf/WatchdogDirective_ja |
| [9] | http://www.linux-ha.org/ja/ha.cf/PingDirective_ja |
| [10] | http://www.linux-ha.org/ja/ha.cf/PingGroupDirective_ja |
| [11] | http://www.linux-ha.org/ja/ipfail_ja |
| [12] | http://www.linux-ha.org/ja/haresources_ja |
| [13] | http://www.linux-ha.org/ja/HeartbeatResourceAgent_ja |
| [14] | http://www.linux-ha.org/ja/ha.cf/BcastDirective_ja |
| [15] | http://www.linux-ha.org/ja/ha.cf/McastDirective_ja |
| [16] | http://www.linux-ha.org/ja/ha.cf/UcastDirective_ja |
| [17] | http://www.linux-ha.org/ja/ha.cf/SerialDirective_ja |
| [18] | http://www.linux-ha.org/ja/ClusterConcepts_ja |
| [19] | http://www.linux-ha.org/ja/FactSheet_ja |
| [20] | http://www.linux-ha.org/ja/ha.cf_ja |
| [21] | http://www.linux-ha.org/ja/BasicArchitecture_ja |
| [22] | http://www.linux-ha.org/ja/TechnicalPapers_ja |
This information provided courtesy of the Linux-HA project at http://linux-ha.org/