我在 Ubuntu 18.0.4 上使用 haproxy 2.0.18。我们正在将各种连接(主要是 tcp,一些 http)负载平衡到四个后端服务器。
其中一个端口经常显示以下错误消息,表示没有剩余的临时端口:
Connect() failed for backend int-tlsports-20515: no free ports.
然而,总共只有大约 4000 个连接,而且临时端口很多:
cat /proc/sys/net/ipv4/ip_local_port_range
1024 60999
这可能是什么原因呢?
答案1
根据@markus 的评论,resolve-prefer ipv4
似乎已经为我解决了这个问题。
答案2
也许你在配置文件中有这个指令
backend https_example
server srv.example.com srv.example.com:443
因此 haproxy 主机将连接重定向到自身并用尽可用端口。