HAProxy を使用して UDP トラフィックを処理する方法

Haproxy Wo Shi Yongshite Udp Torafikkuwo Chu Lisuru Fang Fa



HAProxy について話すときは、TCP または HTTP トラフィックが最も一般的なタイプのトラフィックであるため、主にこれらのトラフィックを扱います。ただし、UDP を使用して、コネクションレスおよびステートレス トラフィックの負荷分散を行いたい場合もあります。

当初、HAProxy は UDP トラフィックをサポートしていませんでした。古い HAProxy バージョンはまだ UDP トラフィックをサポートしていません。 UDP トラフィックを処理するには、バージョン 1.5 以降の HAProxy がインストールされている必要があります。このことを念頭に置いて、この投稿では、HAProxy で UDP トラフィックを処理する方法について説明します。 HAProxy の重要性と、UDP トラフィックを処理するためにどのような構成を行う必要があるかについて説明します。始めましょう!

HAProxy は UDP トラフィックをサポートしていますか?

HAProxy は、リバース プロキシとしても機能する無料のロード バランサーです。 HAProxy を使用すると、使用可能なサーバー間でトラフィックを分散することで、Web アプリケーションがトラフィックを処理する方法を構成できます。こうすることで、サーバーが過負荷になり、ダウンタイムや利用不能が発生する可能性を排除できます。







以前の HAProxy バージョンは、UDP トラフィックの処理をサポートしていませんでした。ただし、HAProxy はバージョン 1.5 以降、UDP トラフィックの処理をサポートします。 HAProxy はコネクション型トラフィックでのみ機能しますが、UDP トラフィックと同様にコネクションレス型トラフィックを処理するように設定できるようになりました。



HAProxy を使用して UDP トラフィックを処理する方法

HAProxy による UDP トラフィックの処理は、TCP または HTTP トラフィックの処理と同じ手順に従います。ただし、UDP トラフィックを予期して受け入れるようにするには、HAProxy 構成ファイルのフロントエンド セクションで UDP 設定を指定する必要があります。



まず、HAProxy をインストールします。利用可能な最新のシステムをインストールするデフォルトのリポジトリから HAProxy を取得できます。





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

インストールしたら、インストールされているバージョンが最新であり、UDP をサポートするバージョン 1.5 以降であることを確認します。



$ ハプロキシ - バージョン

このケースではバージョン 2.4 をインストールしました。これは、UDP トラフィックを快適に処理できることを意味します。

UDP トラフィックを処理できる正しい HAProxy バージョンを確認したので、次のタスクは HAProxy を構成することです。テキスト エディタを使用して HAProxy 構成ファイルを開きます。

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

ファイルが開いたら、グローバル セクションをそのままにしておきます。

「デフォルト」セクションまで下にスクロールし、それを変更して、ログ ファイルの送信先と、着信接続の待機時間などのさまざまなタスクのタイムアウトを指定します。

次に、「listen」セクションを作成する必要があります。このセクションでは、接続をリッスンする方法を定義します。 UDP トラフィックをリッスンするように HAProxy を指定し、受信 UDP トラフィックにバインドして使用する UDP ポートを設定する必要があります。最後に、受信 UDP トラフィックのバランスをとる方法と、UDP トラフィックの分散に使用するサーバーを指定できます。

UDP トラフィックを処理する「リッスン」セクションの例を次に示します。

同じものをコピーして、HAProxy 構成ファイルに追加します。接続に最適な UDP ポートを使用するようにバインド ポートを変更してください。別のアルゴリズムを指定してトラフィックのバランスをとることができます。最後に、サーバー名を変更し、サーバーの実際の IP アドレスを指定します。

変更を加えたら、構成ファイルを保存し、テキスト エディタを終了します。これで、HAProxy を再起動して、新しい構成を確実にキャプチャできるようになりました。

これにより、HAProxy は、指定されたポート経由で UDP トラフィックを処理し、含まれるサーバーへのトラフィックのバランスをとるように構成されます。 UDP トラフィックをアプリケーションに送信して UDP 構成をテストし、トラフィックがどのように処理されるかを確認してください。

結論

HAProxy は主に TCP および HTTP トラフィックを処理するように設計されていますが、バージョン 1.5 以降の HAProxy は、UDP トラフィックをリッスンして受け入れ、使用可能なサーバー間で負荷分散するように構成できます。 HAProxy で UDP トラフィックを処理するには、HAProxy の「listen」セクションで「mode udp」を指定していることを確認してください。次に、バランスアルゴリズムと使用するサーバーを設定します。この投稿を読んで、従う必要がある手順を理解し、提供されている例を参照して適切に実行する必要があります。