HAProxyは、リクエストを複数のサーバーに分散するTCPおよびHTTPベースのアプリケーションに、高可用性ロードバランサーおよびプロキシサーバーを提供する、フリーなオープンソースソフトウェアです。HAProxyプラグインは、最適なオペレーションとパフォーマンスの実行を確実にします。
このページでは、HAProxyサーバーのパフォーマンス、可用性、使用統計を詳細に可視化するための、HAProxyプラグインと監視メトリクスの設定方法について説明します。
HAProxyパフォーマンス監視メトリクス:
サポートされているメトリクスは以下の通りです:
Request errors
「request-errors」メトリクスは、クライアントがプロキシサーバーに対してリクエストを行った際に発生した、エラー合計数をカウントして記録します。
Bytes in
「bytes-in」メトリクスは、クライアントから直前の5秒間にフロントエンドプロキシによって受信された、総バイト数を記録します。
Bytes out
「bytes-out」メトリクスは、クライアントから直前の5秒間にフロントエンドプロキシによって送信された、総バイト数を記録します。
Current requests in queue
「requests-queue-current」メトリクスは、現在割り当てられていないプロセスキュー内のリクエスト合計数を記録します。
Current sessions rate
「sessions-rate-current」メトリクスは、HAProxyセットアップで1秒あたりに作成されたセッション合計数を取得します。
手順
- Site24x7アカウントにログインします。アカウントをお持ちでない場合は、 こちら からサインアップへお進みください。
- Site24x7 Linux エージェント の最新バージョンをダウンロードおよびインストールします。
- HAProxyプラグインをインストールします。
- エージェントはHAProxyプラグインを実行し、Site24x7サーバーにデータをプッシュします。
前提条件:
- このプラグインはPythonベースであり、Pythonバージョン2.7以降をサポートしています。
HAProxyプラグインのインストール:
cd /opt/site24x7/monagent/plugins/
mkdir haproxy
cd haproxy
wget https://raw.githubusercontent.com/site24x7/plugins/master/haproxy/haproxy.py
- Site24x7 Linuxエージェントのプラグインディレクトリー[ /opt/site24x7/monagent/plugins/ ]に、[haproxy]という名前のディレクトリーを作成します。
- GitHubリポジトリ―から[haproxy.py]ファイルをダウンロード し、[haproxy]ディレクトリーに配置します。
- 上記手順の実行コマンド:
- プラグインファイルのダウンロードが完了すると、エージェントは次回のデータ収集でマークアップし、Site24x7クライアントで表示できるようになります。
HAProxyプラグインの設定:
listen appname 0.0.0.0:80
mode http
stats enable
stats uri /haproxy?stats
stats realm Strictly\ Private
stats auth userName:password
/etc/init.d/haproxy restart
- [/etc/haproxy/haproxy.cfg]にあるHAProxy設定ファイルを編集し、以下コードを追加して統計を有効にします:
- 変更を保存し、以下のコマンドを使用してHAProxyを再起動します(本番サーバーでの再起動時には注意が必要です)。
- ユーザー名、パスワード(ある場合)および監視するホスト/ポートを入力します。*url = "http://localhost:80/haproxy?stats;csv"username = Nonepassword = None**realm = None*統計URLを追加した後、[;csv]プレフィックスを保持します。**HAProxy設定ファイルに領域を指定していない場合は、[None]と入力します。また、値を追加する際に、エスケープ文字は使用できません。
メトリクスを追加で監視:
- メトリクスを追加で監視するには、[haproxy.py]ファイルを編集し、監視が必要なメトリクスを新しく追加します。
- 新しく追加されたメトリクスを表示するには、[haproxy.py]ファイルのプラグインバージョン値をインクリメントします(たとえば、デフォルトのプラグインのバージョンをPLUGIN_VERSION=「1」からPLUGIN_VERSION=「2」に変更します)
関連プラグイン:
- Elasticsearchプラグイン - Elasticsearchシステムのパフォーマンスメトリクスを監視します。
- MongoDBプラグイン - MongoDBデータベースのパフォーマンスメトリクスを監視します。
- Varnish Cacheプラグイン - Varnish Cacheサーバーのパフォーマンスを分析します。
- Nagiosプラグイン - Site24x7では、Nagiosサーバーを実行する必要なしに、何千ものNagiosプラグインを実行することができます。
- Out-of-the-boxプラグイン - 豊富な連携リストでアプリケーション全体を監視します。
- カスタムプラグインの作成 – カスタム Linux および Windows プラグインを作成し、カスタム属性を監視します。