HAProxy

HAProxy モニターには、この Splunk Observability Cloud インテグレーションを使用してください。メリット、インストール、設定、メトリクスを参照してください

Splunk Distribution of OpenTelemetry Collector は、HAProxy モニタータイプの Smart Agent レシーバーを使用して HAProxy インスタンスを監視します。このモニターには、HAProxy 1.5 以上が必要です。

注: HAProxy インスタンスを監視するには、代わりにネイティブの OpenTelemetry HAProxy レシーバーを使用することができます。詳細については「HAProxy レシーバー」を参照してください。

メリット

インテグレーションを設定すると、これらの機能にアクセスできるようになります:

セットアップ

ソケットの設定

HAProxyソケットファイルの場所は、以下の例に示すように、HAProxy設定ファイルで定義されます:

global
    daemon
    stats socket /var/run/haproxy.sock
    stats timeout 2m
注: HAProxy の統計に TCP ソケットを使用できます。haproxy プラグインの設定ファイルで、ソケットの TCP アドレスを指定します。たとえば、https://www.example.com/socket:9000 を使用できます。次の例に示すように、haproxy.cfg ファイルで、同じ TCP アドレスとポートを使用するように stats ソケットを変更します。
global
    daemon
    stats socket localhost:9000
    stats timeout 2m

より制限されたTCPソケットを使用するには、以下の手順に従ってください:

  1. localhost上のstatsをリッスンするバックエンドサーバーを定義します。

  2. 異なるポートでバックエンドサーバーと通信するフロントエンドプロキシサーバーを定義します。

  3. 両方のサーバーで ACL を使用してアクセスを制御します。どの程度ソケットを制限するかにもよりますが、sudo usermod -a -G haproxy signalfx-agent のように signalfx-agent ユーザーを haproxy グループに追加する必要があるかもしれません。

以下の設定ファイルは、バックエンドサーバーとフロントエンドプロキシを定義する方法を示しています:

global
    daemon
    stats socket localhost:9000
    stats timeout 2m

backend stats-backend
    mode tcp
    server stats-localhost localhost:9000

frontend stats-frontend
    bind *:9001
    default_backend stats-backend
    acl ...
    acl ...

SELinuxのセットアップ

SELinux を有効にしている場合は、タイプエンフォースメントファイルをサーバー上の任意の場所にダウンロードして、SELinux ポリシーパッケージを作成します。以下のコマンドを実行して、ポリシーパッケージを作成し、インストールします。

$ checkmodule -M -m -o haproxy.mod haproxy.te
checkmodule:  loading policy configuration from haproxy.te
checkmodule:  policy configuration loaded
checkmodule:  writing binary representation (version 17) to haproxy.mod
$ semodule_package -o haproxy.pp -m haproxy.mod
$ sudo semodule -i haproxy.pp
$ sudo reboot

インストール

このインテグレーションを導入するには、以下の手順に従ってください:

  1. Splunk Distribution of the OpenTelemetry Collector をホストまたはコンテナプラットフォームにデプロイします:

  2. [設定] セクションの説明に従ってインテグレーションを設定します。

  3. Splunk Distribution of OpenTelemetry Collector を再起動します。

設定

Smart Agent モニターとCollector のインテグレーションを使用するには、以下の手順に従います:

  1. Smart Agent レシーバーを設定ファイルに含めます。

  2. レシーバーセクションおよびパイプラインセクションの両方で、Collector 構成にモニタータイプを追加します。

このインテグレーションを有効にするには、Collector構成に以下を追加します:

receivers:
    smartagent/haproxy:
        type: haproxy
        ...  # Additional config

次に、設定ファイルの service.pipelines.metrics.receivers セクションにモニターを追加します:

service:
  pipelines:
    metrics:
      receivers: [smartagent/haproxy]

設定オプション

次の表に、このモニターの設定オプションを示します:

オプション

必須

タイプ

説明

pythonBinary

いいえ

string

Pythonコードを実行するために使用するpythonバイナリへの

パスです。設定されていない場合は、組み込みランタイムが使用されます。また、バイナリへの引数を含めることもできます。

host

string

port

いいえ

integer

(デフォルト:0

proxiesToMonitor

いいえ

list of strings

モニターするすべての pxname または svname の

モニター(例: ["http-in", "server1", "backend"]

excludedMetrics

いいえ

list of strings

非推奨。モニター設定ブロックで datapointsToExclude

使用してください。

enhancedMetrics

いいえ

bool

(デフォルト:false

メトリクス

このインテグレーションでは、以下のメトリクスを使用できます:

https://raw.githubusercontent.com/signalfx/splunk-otel-collector/main/internal/signalfx-agent/pkg/monitors/haproxy/metadata.yaml

備考

  • Splunk Observability Cloud で利用可能なメトリクスタイプの詳細は、「メトリクスタイプ」を参照してください。

  • ホストベースのサブスクリプションプランでは、デフォルトのメトリクスは、ホスト、コンテナ、バンドルメトリクスなど、Splunk Observability Cloud のホストベースのサブスクリプションに含まれるメトリクスです。カスタムメトリクスはデフォルトでは提供されていないため、料金が発生する場合があります。詳細については、「メトリクスカテゴリ」を参照してください。

  • MTSベースのサブスクリプションプランでは、すべてのメトリクスがカスタムです。

  • メトリクスを追加するには、「その他のメトリクスの追加」で extraMetrics の設定方法を参照してください。

トラブルシューティング

__ ___ ___ _ ______ _____________ _____ ________ ___ ___ ___ ____ __ ___ ____ ____ __ ______ _____________ ______ ___ ___ ___ ____ __ ___ _________ _____

_________ __ ______ _____________ _____ _________

_________ __ ___________ _________ ___ ____ _____ _____

  • ___ _ ________ ___ ___ _______ _______ _________ _______ __ ______ ________

  • ____ ___ ______ ______________ ____ _____ _____ _______ __ ___________ ____ __________ _________ ___ ______ _________ __________ __ _____ ___ ____ _______