更多博文关注个人博客: http://cloudbps.com


环境:centos6u3

haproxy 1.4.4


通过dmesg看到一下信息:

nf_conntrack: table full, dropping packet.

nf_conntrack: table full, dropping packet.

nf_conntrack: table full, dropping packet.

nf_conntrack: table full, dropping packet.

nf_conntrack: table full, dropping packet.


而且haproxy stats pages 无法打开

通过google查询找到相应的解决方案


添加一下两行到/etc/sysctl.conf中

net.nf_conntrack_max = 655360 #设置iptable hash表的连接数量
net.netfilter.nf_conntrack_tcp_timeout_established = 1200 #超时时间

原因是因为你开启了iptables防火墙,开启防火墙后,他有一个hash表,这个表的容量是65535如果超过这个容量那么他就会报错也就是“nf_conntrack: table full, dropping packet.”,在centos6中和centos5有点不一样,6的路径是在/proc/sys/net/netfilter/nf_conntrack* 下面,由于我这边是做haproxy,后端有5个web server,max的默认值为65536,由于haproxy只占用网卡的资源,所有这个值我调到655360.

然后在通过webbench -c 5000 -t 60 http://hostname/ 问题解决



NOTE:haproxy问题收集中,不断更新。。