HAProxy プローブを使用したロードバランサーディスカバリー
HAProxy Community エディションのロードバランサーのディスカバリーは SSH によって実行されます。
注:
ディスカバリーとサービスマッピングパターンのバージョン 1.15.0 以降では、パターンベースディスカバリーが HAProxyロードバランサーを検出するためのデフォルトの方法です。
- プローブベースのディスカバリーを有効にする方法については、「プローブを使用してロードバランサー HAProxy ディスカバリーを有効にする」を参照してください。
- HA プロキシパターンについては、「HAProxy パターンによるロードバランサーサービスディスカバリー」を参照してください。
- プローブからパターンへの移行については、ナレッジ記事 KB0694477 を参照してください。
HAProxy は、任意の TCP サービスを管理できるオープンソースロードバランサーです。このロードバランサーは、セッションの永続化とレイヤー 7 処理をサポートしているため、HTTP 負荷分散に特に適しています。ディスカバリーは HTTP 負荷分散のために HAProxy をサポートしています。TCP 負荷分散はサポートされていません。
HAProxy を検出するには、以下の要件を考慮してください。
- HAProxy ソフトウェアが Linux サーバーにインストールされ、そこで実行されている。
- サーバーの探索用に MID サーバーが展開されており、MID サーバーからサーバーの HAProxy 構成ファイルにアクセスできる。
- 構成プローブが、次のいずれかの方法を使用して haproxy.cfg ファイルをチェックする。
- HAProxy プロセス出力に f パラメーターを使用する方法
- デフォルトの /etc/haproxy/haproxy.cfg パスを使用する方法
- HAProxy プローブには、コマンドを実行するための認証情報と実行権限が必要である。
プロセスの名前が haproxy の場合、ディスカバリーは、[Unix - アクティブプロセス] プローブを使用して HAProxy ロードバランサーを識別します。この基準に一致すると、その実行中のプロセスのレコードがまだ存在しない場合、HAProxy ロードバランサー [cmdb_ci_lb_haproxy] テーブルにレコードが作成されます。
分類の後に、次のプローブがトリガーされます。
| プローブ | 説明 | コマンド |
|---|---|---|
| HAProxy - バージョン | このプローブのセンサーは、HAProxy ロードバランサー [cmdb_ci_lb_haproxy] テーブルに HAProxy のバージョンを入力します。 | haproxy |
| HAProxy - 構成を取得 | このプローブのセンサーは HAProxy ロードバランサー [cmdb_ci_lb_haproxy] テーブルに追加の情報を入力します。このプローブはロードバランサーサービス [cmdb_ci_lb_service]、ロードバランサープール [cmdb_ci_lb_pool]、ロードバランサープールメンバー [cmdb_ci_lb_pool_member]、ロードバランサーインターフェイス [cmdb_ci_lb_interface]、ロードバランサーアプリケーション [cmdb_ci_lb_appl] テーブルの情報も入力します。 | echo、sed、cut、grep、egrep (Bourne シェルスクリプト内) |
データを入力するだけでなく、次の関係レコードが CI 関係 [cmdb_rel_ci] テーブルに作成されます。
- cmdb_ci_lb_appl テーブル内のレコードは cmdb_ci_web_server テーブルレコードで実行されます。
- cmdb_ci_lb_service テーブル内のレコードは cmdb_ci_lb_pool テーブルレコードを使用します。
- cmdb_ci_pool テーブル内のレコードは cmdb_ci_service テーブルレコードによって使用されます。
- cmdb_ci_pool テーブル内のレコードは cmdb_ci_pool_member テーブルレコードのメンバーです。
- cmdb_ci_pool_member テーブル内のレコードは cmdb_ci_pool テーブルレコードのメンバーです。