web-dev-qa-db-ja.com

HAProxyサーバーに冗長性を持たせることは可能ですか?

HAProxyを、3つのアプリケーションサーバー上のリクエストのバランスをとるロードバランサーとして使用します。しかし、ある時点でバランサーサーバー(HAProxy)に障害が発生した場合はどうなりますか?私は最初のバランサーのクローンを作成することを考えていたので、メインのバランサーが失敗した場合、もう一方が代わりになります。 HSRPのようなもの。

出来ますか?はいの場合はどうですか?

4
wael34218

これは通常、何らかの形式の [〜#〜] vrrp [〜#〜] を使用して行われ、それぞれがHAproxyを実行する1つ以上のサーバーにわたって仮想IPアドレスを維持します。

これは通常 keepalived で行われます。ガイドがあります ここ 役立つはずです。

何人かの人々がこれにハートビートを使用していますが、ウィリータロー(HAproxyの背後にいる男)はそれが仕事に最適なツールではないと述べています。詳細については、HAproxyメーリングリストの this message を参照してください。

13
ThatGraemeGuy

Linux、CARP、またはBSDシステムでは、 Heartbeat を使用して高可用性HAProxyセットアップが可能です。
クラスター内のコンピューターの1つに割り当てられる1つの「フローティング」IPアドレス(HAProxyに使用されます)が必要です。 IPアドレスを保持している現在の1台のコンピューターに障害が発生すると、フェイルオーバーサーバーはIPアドレスを取得し、要求の処理を続行します。 CARPをpfsyncと組み合わせると、TCP接続状態はサーバー間で同期され、フェイルオーバーは「シームレス」になります

1
Kristaps

HSRPは、Ciscoスイッチおよびルーターでのみ機能します。

CARP (CARPプロトコル)または vrrpd (VRRPプロトコル)を使用できます。両方のHAproxyが同じネットワーク上にある必要があります。

ゲートウェイがOSPFをサポートしている場合は、OSPF( Quagga )を使用できます。異なるOSPFインターフェース優先順位を設定できます。 1つのHAproxyに障害が発生すると、ゲートウェイはそれをルーターテーブルから削除します。

1
ooshro