Я не могу понять, как настроить статистику для 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, но не с помощью веб-браузера.
Это не так. Была бы страница статистики на 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/ и авторизуйтесь.
Убедитесь, что ваш брандмауэр не блокирует этот запрос.
Это сделало это для меня:
listen stats
bind :9000
или
listen stats
bind 10.100.86.150:9000
В новых версиях haproxy (> 1.6) вам необходимо установить режим на http
вместо того tcp
(по умолчанию) на config : 'stats' statement ignored for frontend 'http-in' as it requires HTTP mode.
вам нужно добавить скрипт, например bind *:port
например, bind *: 80, или вы можете заменить символ звездочки своим общедоступным IP-адресом или установленным IP-адресом с машины.
Предложение от меня, вы можете переместить скрипт статистики в один интерфейс или добавить один интерфейс для частного доступа к статистике.