高可用性を実現するために Keepalived を使用して HAProxy をセットアップする方法

Gao Ke Yong Xingwo Shi Xiansurutameni Keepalived Wo Shi Yongshite Haproxy Wosettoappusuru Fang Fa



ロード バランサーを使用する場合、特にサービスの継続的な可用性が必要な場合に、可用性を実現することが一般的な課題となります。ロード バランサーであっても、可用性を確保する方法を組み込んでいない場合は失敗する可能性があります。そこで Keepalived が役に立ちます。

これは、ロード バランシングと IP フェイルオーバーを管理することで信頼性を実現するために Linux システム用に設計されたオープンソース フレームワークです。 Keepalived は、HAProxy などのロード バランサとともに使用され、サービスの継続性を確保して信頼性を実現します。この投稿では、Keepalived を紹介し、HAProxy を使用して Keepalived を設定する手順を説明します。

キープアライブとは何ですか?

HAProxy などのロード バランサーは、サイトへのトラフィックを処理するのに便利です。ただし、空室状況が保証されない場合もございます。 Keepalived は、ロード バランサーで IP フェイルオーバーを管理することで高可用性を確保し、HAProxy とシームレスに連携するオープンソース ソフトウェアです。







Keepalived が提供する主な機能には次のようなものがあります。



1. 仮想IP管理

すべてのサーバーには Keepalived によって仮想 IP が割り当てられ、1 つの仮想エンティティとして動作できるようになります。 Keepalived は、フェイルオーバーの場合に仮想 IP をバックアップ サーバーに転送し、ダウンタイムを回避します。



2. 健康チェック

Keepalived は、管理するすべてのサービスの健全性をチェックできるように設計されています。たとえば、サーバーが応答しない場合、直ちにフェイルオーバーが開始され、バックアップ サーバーが検索されます。このヘルスチェックとフェイルオーバー機能により、可用性が保証されます。





3. ロードバランシング

その主な目的はロード バランサーではありませんが、受信トラフィックを別のサーバーに分散するように構成することができます。この機能をロード バランサと組み合わせることで、システムのパフォーマンスが向上します。

Keepalived を使用して HAProxy をセットアップする方法

Keepalived がロード バランサーと連携して動作することはすでに述べました。このケースでは、高可用性を実現するために Keepalived を使用して HAProxy をセットアップしました。したがって、最初に HAProxy をインストールしてからセットアップする必要があります。指定された手順に従います。



ステップ 1: HAProxy をインストールする

特に HAProxy はデフォルトの Linux リポジトリから入手できるため、HAProxy のインストールは簡単なプロセスです。このチュートリアルでは Ubuntu を使用していますが、手順は他のディストリビューションの手順と似ています。

HAProxy をインストールする前に、リポジトリをすぐに更新してください。

$ 須藤 適切なアップデート

APT を使用して HAProxy をインストールできるようになりました。

$ 須藤 apt-get インストール ハプロキシ

ステップ 2: HAProxy を構成する

HAProxy では、構成ファイルにアクセスし、クライアント デバイスからの受信トラフィックの受信方法を定義し、トラフィックを分散するサーバーを定義する必要があります。

まず、HAProxy 構成ファイルにアクセスします。

$ 須藤 ナノ / / ハプロキシ / haproxy.cfg

この場合、ポート 80 経由ですべての受信接続をリッスンするように指定します。バックエンドには、ラウンド ロビンを使用してトラフィックを分散する 2 台のサーバーを指定します。サーバー IP を実際のサーバーと一致するように置き換えてください。

構成ファイルに必要な編集を行った後、それを保存して終了します。最後に、HAProxy を再起動します。

ステップ 3: Keepalived をインストールする

Keepalived は Linux にはプリインストールされていません。そのため、APT を使用してデフォルトのリポジトリからインストールする必要があります。次のコマンドを実行します。

$ 須藤 apt-get インストール キープアライブ

プロンプトが表示されたら「y」を押してインストールを確認します。インストールが完了したら、Keepalived のバージョンを確認して、Keepalived がインストールされていることを確認します。

ステップ 4: キープアライブを構成する

Keepalived を設定するには、「/etc/keepalived/keepalived.conf」にある設定ファイルにアクセスする必要があります。ここでは、Keepalived が HAProxy に高可用性を提供する方法を定義する必要があります。

仮想 IP アドレス、使用可能なサーバーの優先順位、および HAProxy の健全性とステータスをチェックするスクリプトを定義する必要があります。次の構成ファイルでは、HAProxy のステータスを 2 秒ごとに評価する「chk_haproxy」スクリプトを作成します。ネットワークインターフェイスとして「enp0s3」を使用してこれを指定し、「VI_1」という名前の VRRP インスタンスを作成します。状況に合わせてネットワーク インターフェイスを変更します。

ただし、インターフェイスに適したルーター ID を設定し、使用する仮想 IP アドレスを設定します。認証パスワードも変更する必要があります。

ステップ 5: Keepalived を再起動する


Keepalived の設定がすべて完了したら、ファイルを保存してテキスト エディタを閉じます。その後、構成ファイルの有効性を確認し、Keepalived サービスを再起動できます。

最後に、HAProxy と Keepalived が開始されていることを確認します。

それでおしまい。高可用性を実現するために、Keepalived を使用して HAProxy をセットアップします。定義された仮想 IP を使用して、セットアップが期待どおりに機能することを確認できます。

結論

この投稿で定義されているセットアップでは、受信トラフィックを利用可能なサーバーに分散することで、ロード バランサーの可用性が高く、受信トラフィックを処理できるようになります。さらに、Keepalived はフェイルオーバーを確実に処理し、ロード バランサーでダウンタイムが発生することを防ぎます。手順に従って、好みに合わせて構成ファイルを編集します。