基础设施扩展限制与解决方案及平台搭建指南
1. Netfilter 调整
随着服务器网络连接增加,除了常见设置调整外,还可能在dmesg或内核日志中看到nf_conntrack: table full错误。Netfilter 是一个内核模块,它通过哈希表跟踪所有网络地址转换(NAT)会话,新连接会被添加到表中,连接关闭并达到预定义超时后会被清除。当单台机器的连接量增加时,很多相关设置默认较为保守,需要进行调整。
1.1 查看相关设置
可以使用以下命令查看与nf_conntrack相关的设置:
$ sysctl -a | grep nf_conntrack net.netfilter.nf_conntrack_buckets = 65536 <snip> net.netfilter.nf_conntrack_generic_timeout = 600 <snip> net.netfilter.nf_conntrack_max = 262144 <snip> net.netfilter.nf_conntrack_tcp_timeout_close = 10 net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60 net.netfilter.nf_conntrack_tcp_timeout_established = 432000 net.netfilter.nf_conntrack_tcp_timeout_fin_