web-dev-qa-db-ja.com

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?stats から利用できる統計ページがあるはずです。何が欠けていますか?

編集:私はsocatで統計にアクセスできますが、Webでできませんブラウザ。

38
Jan Deinhard

不正解です。 http://yoursite.com:1935/haproxy?stats に統計ページがあります

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

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

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

ファイアウォールがこのリクエストをブロックしていないことを確認してください。

64
Chris

これは私のためにそれをしました:

listen stats
    bind :9000

または

listen stats
    bind 10.100.86.150:9000
5
Tadej

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

3
zypro

bind *:portなどのスクリプトを追加する必要があります。たとえば、bind *:80とするか、スター記号をあなたのip publicまたはip from machineがインストールされたものに置き換えることができます。

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