kernel: TCP: time wait bucket table overflow的问题
最近用elk收集系统日志,发现某些机器有很多内核报错
网上大多数的说法是要把net.ipv4.tcp_max_tw_buckets 这个内核参数调大。但是没说原理
我想了一下,其实tw_buckets的含义是time wait bucket table 这个表满了。
为什么会满?
netstat -an|more
看time_out的链接
一般是80端口,也就是web server导致,那么就很自然的想到keepalived 了。
之后我的做法是把keepalived 关掉,然后把tcp_max_tw_buckets的值调到2w,观察一下,基本上没有这个报警了。
特别是一些集群需要转发后端的,我个人觉得最好把keepalive关掉,这样保持的连接会少一些。
时间: 2024-10-10 02:58:06