ECS--linux提示“ip_conntrack version 2.4 (8192 buckets, 65536 max) - 304 byte”错误的分析解决
发布日期:2015-12-19 15:12:44
dmesg和message里都提示此错误:“ip_conntrack version 2.4 (8192 buckets, 65536 max) - 304 bytes per conntrack” 唯一就是能核实的连接跟踪表被填满 原理如下: kernel 用 ip_conntrack 模块来记录 iptables 网络包的状态,并把每条记录保存到 table 里(此 table 在内存里,可通过/proc/net/ip_conntrack 查看当前已记录的总数),如果网络状况繁忙,如高连接,高并发连接等会导致逐步占用此table 的可用空间,目前的这个报错显示这个表已满 在/proc/net/ip_conntrack中,每一个跟踪连接表会占用304字节的内核存储空间,时间一长就会把默认的空间填满,那么默认空间是多少?我以redhat为例在内存为64MB的机器上是4096,内存为128MB是8192,内存为256MB是16376,可以通过查看/proc/sys/net/ipv4/ip_conntrack_max文件得知系统最大值。 解决方案: /etc/modprobe.conf options ip_conntrack hashsize= 把这个设置得大一点
|