web-dev-qa-db-ja.com

ロードバランサー(HAProxy)の負荷分散

ロードバランサー(HAProxy)の負荷を分散しようとしています。つまり、ロードバランサークラスター/ファームを作成します。

ファームは、さまざまなバインディング/ルールを使用して、ルールに基づいて、目的の異なる他のいくつかのクラスターへのリクエストの負荷を分散します。

このトピックに関する多くの情報を見つけることができないようです。私が見つけたのは、2つのインスタンスだけのアクティブ-パッシブセットアップだけです... 2つだけでなく、それらの多くを計画する必要があります。それから私はこの投稿に出くわしました: http://www.serverphorums.com/read.php?10,672865

言及している:

HAProxyは、1.5の時点で接続テーブルを共有できます。これは、非常に高く評価されている機能です:)

負荷分散機能を備えたファイアウォール(フォーティネット)を使用して、アクティブなHAProxyインスタンスへのリクエストのバランスを取り、それに応じてリクエストの負荷を分散する予定です。

では、接続テーブルをインスタンス間で共有して、HAProxy自体の真のアクティブ/アクティブ負荷分散を実現する方法はありますか?

もっと良い方法はありますか?

2
Onitlikesonic

それで、HAproxyの不測の事態が必要ですか?

フローティングIP を使用する必要があります。これは、クラウドインフラストラクチャによって異なります(ホスティングプロバイダーの支援が必要な場合があります)。

これが、単一のロードバランサーの障害点から抜け出す唯一の方法です。

enter image description here 画像ソース: デジタルオーシャン

プライマリロードバランサーがダウンした場合、セカンダリは自動的にリクエストの処理を継続すると想定します。

フローティングIPは、それ自体では高可用性を自動的に提供しないことに注意することが重要です。アクティブサーバーの障害を検出し、フローティングIPをパッシブサーバーに再割り当てするプロセスを自動化するフェイルオーバーメカニズムを考案して実装し、セットアップの可用性を高める必要があります。プライマリロードバランサーが使用できなくなった場合にフェイルオーバー機能を提供する http://www.keepalived.org など、この必要性に適合するオープンソースソリューションがいくつかあります。

この記事がお役に立てば幸いです: https://www.digitalocean.com/community/tutorials/how-to-set-up-highly-available-haproxy-servers-with-keepalived-and-floating-ips- on-ubuntu-14-04

2
LeonanCarvalho