我在两台服务器之间安装了HAPROXY以实现平衡。不幸的是,HAPROXY返回随机ERR_EMPTY_RESPONSE。我也安装了统计数据,但统计数据不会经常出现 ,因为有时会显示统计数据。我和一些朋友仔细检查了我的配置,但我没有发现问题。
defaults
timeout connect 3000ms
timeout server 10000ms
timeout client 10000ms
global
log 127.0.0.1 local0 notice
maxconn 2000
user haproxy
group haproxy
frontend stats
bind *:1936
mode http
stats enable
stats hide-version
stats realm Haproxy\ Statistics
stats uri /
stats auth user:password
frontend http_in
bind *:80
acl is_audio hdr_end(host) -i subdomain.myserver.com
acl is_proxystats hdr_end(host) -i stats.myserver.com
use_backend srv_audio if is_audio
use_backend srv_stats if is_proxystats
# acl url_blog path_beg /blog
# use_backend blog_back if url_blog
default_backend srv_audio
backend srv_audio
balance roundrobin
server audio1 10.10.10.1:80 check
server audio2 10.10.10.2:80 check
backend srv_stats
server Local 127.0.0.1:1936
我的配置:
我已在HAProxy random HTTP 503 errors阅读了类似问题的答案,答案不一样。正如所建议的,命令netstat -tulpn | grep 80
没有显示两个HAPROXY正在运行:
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN -
但是ps ax | grep haproxy
会返回:
22890 ? Ss 0:00 /usr/sbin/haproxy-systemd-wrapper -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid
22891 ? S 0:00 /usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -Ds
22894 ? Ss 0:31 /usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid -Ds
答案 0 :(得分:2)
好吧,我更多地了解HAProxy并阅读了很多教程,我相信我找到了解决方案。
我做了两处改动:
hdr_end(host)
更改为hdr_dom(host)
mode http
添加到:frontend http_in
,backend srv_audio
和backend srv_stats
现在,HAPROXY非常稳定,没有奇怪的行为