Gần đây, chúng tôi đã gặp sự cố với thiết lập Varnish (3x) -> Apache (3x) của chúng tôi, dẫn đến SYN_SENT
kết nối tăng đột biến .
Sự tăng đột biến là do lượng lưu lượng truy cập mới vào trang web (không phải là DDOS dưới bất kỳ hình thức nào) và có vẻ như các máy Varnish của chúng tôi đang gặp sự cố khi chuyển lưu lượng truy cập đến các máy chủ phụ trợ (giảm lưu lượng truy cập Apache có liên quan đến tăng đột biến trên vecni ), tắc nghẽn nhóm cổng có sẵn với SYN_SENT
.
Keep-alives được kích hoạt trên Apache (15 giây).
Phía nào là lỗi trên? Lượng lưu lượng truy cập là đáng kể, nhưng không nên tạo ra một thiết lập như vậy (các máy frontend 3x Varnish, các máy chủ Apache phụ trợ 3x) bị đình trệ.
Xin vui lòng giúp đỡ.
Ảnh chụp màn hình Munin cho các kết nối thông qua tường lửa là ở đây .
Sơn dầu
~$ netstat -an|awk '/tcp/ {print $6}'|sort|uniq -c
9 CLOSE_WAIT
12 CLOSING
718 ESTABLISHED
39 FIN_WAIT1
1714 FIN_WAIT2
76 LAST_ACK
12 LISTEN
256 SYN_RECV
6124 TIME_WAIT
/etc/sysctl.conf (Véc ni)
net.ipv4.netfilter.ip_conntrack_max = 262144
net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_recv = 60
net.ipv4.ip_local_port_range = 1024 65536
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem=4096 87380 16777216
net.ipv4.tcp_wmem=4096 65536 16777216
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 0
net.ipv4.tcp_fin_timeout = 30
Apache
netstat -an|awk '/tcp/ {print $6}'|sort|uniq -c
11 CLOSE_WAIT
286 ESTABLISHED
38 FIN_WAIT2
14 LISTEN
7220 TIME_WAIT
/etc/sysctl.conf (Apache)
vm.swappiness=10
net.core.wmem_max = 524288
net.core.wmem_default = 262144
net.core.rmem_default = 262144
net.core.rmem_max = 524288
net.ipv4.tcp_rmem = 4096 262144 524288
net.ipv4.tcp_wmem = 4096 262144 524288
net.ipv4.tcp_mem = 4096 262144 524288
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_max_syn_backlog = 16384
net.ipv4.tcp_keepalive_time = 30
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.all.rp_filter = 0
net.core.somaxconn = 2048
net.ipv4.conf.lo.arp_ignore=8
net.ipv4.conf.all.arp_ignore=1
net.ipv4.conf.all.arp_announce=2
vm.swappiness = 0
kernel.sysrq=1
kernel.panic = 30
SYN_SENT
số cao là tường lửa; bạn đang nói rằng có vẻ như tường lửa là nút cổ chai?