HAProxy の統計を設定するにはどうすればいいですか?

HAProxy の統計を設定するにはどうすればいいですか?

HAProxy の統計を設定する方法がわかりません。

これが私の設定です:

global
    log 127.0.0.1 local0
    log 127.0.0.1 local1 notice
    daemon
    #debug
    user haproxy
    group haproxy
    maxconn 4096

    stats socket /tmp/haproxy

defaults
    log global
    mode tcp
    option tcplog
    option dontlognull
    option redispatch
    option clitcpka
    option srvtcpka
    option tcpka
    retries 3
    maxconn 2000
    contimeout 10000
    clitimeout 50000
    srvtimeout 50000

    stats enable
    stats hide-version
    stats scope .
    stats realm Haproxy\ Statistics
    stats uri /haproxy?stats
    stats auth xxxxx:xxxxx

    option contstats

listen rtmp :1935
    mode tcp
    balance roundrobin

    server s1 xxx.xxx.xxx.xxx:1935 check
    server s2 xxx.xxx.xxx.xxx:1935 check

マニュアルを理解する限り、統計ページは以下から利用できるはずです。http://mysite/haproxy?統計何が足りないのでしょうか?

編集:socatで統計情報にアクセスすることができますがないWebブラウザで。

答え1

それは正しくありません。統計ページはhttp://yoursite.com:1935/haproxy?stats

これを克服するには、別のリスナーを追加します。

listen stats
    bind :1936
    mode http
    stats enable
    stats hide-version
    stats realm Haproxy\ Statistics
    stats uri /
    stats auth Username:Password

次にhttp://yoursite.com:1936/ログインします。

ファイアウォールがポート 1936 でこのリクエストをブロックしていないことを確認してください (任意のポートに変更できます)

ユーザーの提案に従い、新しいバージョンのHAProxyではバインドをlisten statsブロックに移動しました。

答え2

私の場合はこうでした:

listen stats
    bind :9000

または

listen stats
    bind 10.100.86.150:9000

答え3

haproxyの新しいバージョン(>1.6)では、モードを(デフォルト)httpではなくに設定する必要があります。tcpconfig : 'stats' statement ignored for frontend 'http-in' as it requires HTTP mode.

答え4

たとえば、bind*:80 のようなスクリプトを追加するbind *:portか、星印を IP パブリックまたはインストールされているマシンの IP に置き換える必要があります。

私からの提案としては、統計スクリプトを 1 つのフロントエンドに移動するか、統計にプライベートにアクセスするためのフロントエンドを 1 つ追加することができます。

関連情報