更多博文关注个人博客:
环境: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 问题解决
NOTE:haproxy问题收集中,不断更新。。