linux-为什么HAProxy无法在端口80上监听?
作者:互联网
新机器,没有http服务器正在运行(没有httpd,没有lighttpd,没有nginx)
$netstat -nat | grep 80 | grep LISTEN
什么都不产生…
这是我的HAProxy配置文件,这可能是HAProxy不这样做的原因
global
maxconn 72000
daemon
defaults
mode http
timeout connect 4000ms
timeout client 60000ms
timeout server 30000ms
frontend my_frontend
bind *:80
default_backend cdn
backend cdn
server cdn1 10.177.0.17:80 weight 1 maxconn 8192 check
server cdn2 10.177.1.92:80 weight 1 maxconn 8192 check
server cdn3 10.177.1.147:80 weight 1 maxconn 8192 check
server cdn4 10.177.1.202:80 weight 1 maxconn 8192 check
server cdn4 10.177.1.202:80 weight 1 maxconn 8192 check
server cdn5 10.177.1.211:80 weight 1 maxconn 8192 check
server cdn6 10.177.1.93:80 weight 1 maxconn 8192 check
server cdn7 10.177.1.230:80 weight 1 maxconn 8192 check
server cdn8 10.177.0.7:80 weight 1 maxconn 8192 check
server cdn9 10.177.0.196:80 weight 1 maxconn 8192 check
server cdn10 10.177.1.82:80 weight 1 maxconn 8192 check
server cdn11 10.177.0.124:80 weight 1 maxconn 8192 check
server cdn12 10.177.1.142:80 weight 1 maxconn 8192 check
server cdn13 10.177.1.58:80 weight 1 maxconn 8192 check
server cdn14 10.177.1.137:80 weight 1 maxconn 8192 check
server cdn15 10.177.1.169:80 weight 1 maxconn 8192 check
server cdn16 10.177.0.187:80 weight 1 maxconn 8192 check
server cdn17 10.177.1.95:80 weight 1 maxconn 8192 check
server cdn18 10.177.1.123:80 weight 1 maxconn 8192 check
从源代码运行haproxy-1.4.13.
当我尝试启动它时,出现此错误
[ALERT] 084/220004 (2409) : Starting frontend my_frontend: cannot bind socket
解决方法:
添加名为用户的全局配置参数
user nobody
或一些特权较低的用户.仍然需要以root用户身份启动,但是在获取端口进程本身之后,将用户/特权减少为没人.
标签:configuration,bind,load-balancing,haproxy,linux 来源: https://codeday.me/bug/20191102/1994084.html