回答:
http://www.formilux.org/archives/haproxy/1003/3259.htmlで、HAProxyの作者であるWilly Tarreauが質問に非常に正確に答えていると信じています。
上記リンクからの引用
ハートビートは、冗長なhaproxyセットアップを取得するための最適なツールではなく、クラスターを構築するように設計されています。これは、2つの冗長なステートレスネットワーク機器を持つこととは大きく異なります。keepalivedやucarpなどのネットワーク指向ツールは、そのタスクに最適です
これら2つのファミリの違いは簡単です
- ハートビートなどのクラスター指向の製品は、共有リソースが最大 1か所に存在することを保証します。これは、共有ファイルシステム、ディスクなどにとって非常に重要です。スイッチオーバー中に、あるノードでサービスを停止し、別のノードでサービスを起動するように設計されています。そのようにして、共有リソースに同時にアクセスすることはできません。これは達成が非常に困難なタスクであり、うまく機能します。
- keepalivedなどのネットワーク指向の製品は、共有IPアドレスが少なくとも 1か所に存在することを保証します。私はもうサービスやリソースについて話していないことに注意してください、それは単にIPアドレスで再生します。サービスをダウンまたはアップしようとせず、特定の数の基準を考慮して、サービスを提供するのに最も適したノードを決定します。ただし、サービスは両方のノードですでに稼働している必要があります。そのため、冗長なルーター、ファイアウォール、プロキシには非常に適していますが、ディスクアレイやファイルシステムにはまったく適していません。
(ええ、それは古い質問ですが、将来の参考のために)
明確で一貫した差別化はありません。これらの単語は、多かれ少なかれ互換的に使用されることがあります。
呼ばれる高可用性のセットアップのための共通のユーザランドのデーモンがありkeepalivedの、そして今に変更されたハートビートと呼ばれるデーモン、持っていたのLinux HAプロジェクトペースメーカーは。(これら2つのシステムの完全な概要、およびすべての違いは何なのか、私見では話題にならないでしょう。)
用語の日常的な使用では、最も一般的な使用法は次のとおりです。
「キープアライブ」とは、より一般的には、サービスの高可用性を維持するシステムを指します。
「ハートビート」とは、より具体的には、高可用性設定のメンバーに定期的に「はい、まだ生きています!」を送信する通信プロトコルを指します。メッセージ。設定した時間(つまり、他のホストがダウンした)の前に「Yes、I'm alive」メッセージが表示されない場合、ピアはアクションを実行します。これは、脈拍を感じるのと似ているため、名前です。