Récemment, nous avons rencontré des problèmes avec notre configuration Varnish (3x) -> Apache (3x), ce qui a provoqué un énorme pic de SYN_SENTconnexions.
Le pic lui-même est dû à la quantité de nouveau trafic frappant le site (et non à un DDOS d'aucune sorte), et il semble que nos machines Varnish ont des problèmes pour transmettre du trafic vers les serveurs principaux (le trafic Apache est corrélé aux pics sur les vernis). ), encombrant le pool de ports disponibles avec SYN_SENT.
Les Keep-Alives sont activés sur Apache (15s).
De quel côté est la faute? La quantité de trafic est importante, mais elle ne devrait en aucun cas provoquer le blocage d'une telle configuration (3 machines frontales Varnish, 3 serveurs Apache backend).
Veuillez aider.
La capture d'écran de Munin pour les connexions via le pare-feu est ici .
Vernis
~$ 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 (Vernis)
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_SENTstatistiques élevées est le pare-feu; dites-vous qu'il semble que le pare-feu est le goulot d'étranglement?