故障描述:今天网站无法访问,查看当时的日志信息为:
Dec 12 10:54:37 localhost kernel: nf_conntrack: table full, dropping packet
由于nginx在对后端php转发的时候,默认为65535,超时时间为5天,当访问量大的时候,超出了nf_conntrack模块的转发数量,
wc –l /proc/net/nf_conntrack
解决方法为:
一,调整系统内核,vim /etc/sysctl.conf添加
net.netfilter.nf_conntrack_max = 655350
net.nf_conntrack_max = 655350
net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 1200
二,启用更改后的内核配置
sysctl –p
三,加载内核模块
modprobe MODULENAME 手动加载
modprobe –r MODULENAME 卸载模块
lsmod 列出已经加载的模块