故障描述:今天網站無法訪問,查看當時的日誌信息爲:
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 列出已經加載的模塊