キープアライブとハートビートの違いは何ですか?


20

高可用性サーバークラスターを構造化します。ここで、キープアライブとハートビートの詳細、両方の違い、およびどちらを選択するかについて知りたいです。

回答:


26

http://www.formilux.org/archives/haproxy/1003/3259.htmlで、HAProxyの作者であるWilly Tarreauが質問に非常に正確に答えていると信じています

上記リンクからの引用

ハートビートは、冗長なhaproxyセットアップを取得するための最適なツールではなく、クラスターを構築するように設計されています。これは、2つの冗長なステートレスネットワーク機器を持つこととは大きく異なります。keepalivedやucarpなどのネットワーク指向ツールは、そのタスクに最適です

これら2つのファミリの違いは簡単です

  1. ハートビートなどのクラスター指向の製品は、共有リソースが最大 1か所に存在することを保証します。これは、共有ファイルシステム、ディスクなどにとって非常に重要です。スイッチオーバー中に、あるノードでサービスを停止し、別のノードでサービスを起動するように設計されています。そのようにして、共有リソースに同時にアクセスすることはできません。これは達成が非常に困難なタスクであり、うまく機能します。
  2. keepalivedなどのネットワーク指向の製品は、共有IPアドレスが少なくとも 1か所に存在することを保証します。私はもうサービスやリソースについて話していないことに注意してください、それは単にIPアドレスで再生します。サービスをダウンまたはアップしようとせず、特定の数の基準を考慮して、サービスを提供するのに最も適したノードを決定します。ただし、サービスは両方のノードですでに稼働している必要があります。そのため、冗長なルーター、ファイアウォール、プロキシには非常に適していますが、ディスクアレイやファイルシステムにはまったく適していません。

(ええ、それは古い質問ですが、将来の参考のために)


確かに将来の参照。ハートビートはセットアップと作業に苦労しましたが、keepalivedの方がはるかにシンプルで、MySQL Master Master Single Writeセットアップでは期待どおりに機能することがわかりました。
マイクパーセル14

3

明確で一貫した差別化はありません。これらの単語は、多かれ少なかれ互換的に使用されることがあります。

呼ばれる高可用性のセットアップのための共通のユーザランドのデーモンがありkeepalivedの、そして今に変更されたハートビートと呼ばれるデーモン、持っていたのLinux HAプロジェクトペースメーカーは。(これら2つのシステムの完全な概要、およびすべての違いは何なのか、私見では話題にならないでしょう。)

用語の日常的な使用では、最も一般的な使用法は次のとおりです。

  • 「キープアライブ」とは、より一般的には、サービスの高可用性を維持するシステムを指します。

  • 「ハートビート」とは、より具体的には、高可用性設定のメンバーに定期的に「はい、まだ生きています!」を送信する通信プロトコルを指します。メッセージ。設定した時間(つまり、他のホストがダウンした)の前に「Yes、I'm alive」メッセージが表示されない場合、ピアはアクションを実行します。これは、脈拍を感じるのと似ているため、名前です。


@vangeの回答を参照してください。私にはかなり明確に思えます。さまざまなサービス、さまざまな名前、さまざまな設計目標およびユースケース。
nelaaro
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.