rterewq 发表于 2016-10-9 08:55:32

监控服务器time wait bucket table overflow内核小问题

问题:

排查:
#netstat -auptn |awk '/^tcp/ {++state[$6]} END {for(key in state) printf("%-10s\t%d\n",key,state) }'
TIME_WAIT 15382
ESTABLISHED3
SYN_RECV1
LISTEN    11
检查内核参数:
net.ipv4.tcp_max_tw_buckets = 5000
此参数作用:
这个参数是系统同时保持timewait套接字的最大数量。如果超过这个数字,time-wait套接字将立刻被清除并打印警告信息。增大的话将会消耗更多的内存。
可能原因:
服务器的TCP连接数,超出了内核定义最大数。



解决方式:
写入/etc/sysctl.conf使之永久生效
net.ipv4.tcp_max_tw_buckets = 20000
sysctp -p

查看是否再次报错:
tail -f /var/log/messages (已解决)

页: [1]
查看完整版本: 监控服务器time wait bucket table overflow内核小问题