このページでは、Linux-HAプロジェクトのリリース1アーキテクチャについて説明します。リリース 2アーキテクチャの概要については、ベーシックアーキテクチャのページをご覧ください。
Linux-HAプロジェクトの中でも、最も有名なコンポーネントがHeartbeatです。Heartbeatは、補助メッセージとして、ネットワーク(またはシリアルポート)を通じて、Heartbeat以外のインスタンスに対するheartbeatパケットを送信します。
Heartbeatは、クラスタ全体にまたがるinitデーモンと大変似た働きをします。管理されたサービスそれぞれが、init(8)リスポーンディレクティブ(respawn directive)を伴ってスポーンされているかのように、常に、動作を確認します。
heartbeatパケットを受信しなくなると、そのノードは停止されたものと仮定され、提供していたサービス(リソース)は、別のノードにフェイルオーバされます。こうしたノード停止の仮定は、STONITHやwatchdogタイマを正しく統合することで、確実に行うことができます。
Heartbeatはまた、ルータとスイッチについても、pingまたはping_groupディレクティブを用いて、クラスタメンバーのように監視をします。さらに、Heartbeatは、ipfailプログラムを結合して、ネットワークの接続性が危険にさらされた場合にもフェイルオーバを起こすことが可能です。
Heartbeatは、haresourcesファイルの設定どおりに、サービス(リソース)を提供します。haresourcesファイルのサービスは、左から右の順番でスタートし、右から左の順番でストップします。
Heartbeatは、さまざまなメカニズムを用いて、通信を行います。 UDP broadcast、UDP multicast、UDP unicast、 シリアル通信経路を組み合わせて、通信が行えます。
Heartbeatは、迷子になったパケット(lost packets)や壊れたパケット(corrupted packets)に対処するために、マルチキャスト通信プロトコルを使用します。
クラスタコンセプト、ファクトシート、ipfail、ha.cf、 Heartbeat、haresources、Heartbeatリソースエージェント、Heartbeatリリース2、ベーシックアーキテクチャ、テクニカルペーパー