Welcome! Log In Create A New Profile

Advanced

TCP-Timeouts

Posted by s.schumacher 
TCP-Timeouts
September 28, 2022 08:40AM
Hallo deutschsprachige nginx-Gemeinde,

Wenn euch dieses Posting vertraut vorkommt, dann weil ich letzte Woche schon mein Problem im englischen Forum beschrieben habe - so gut ich es zu diesem Zeitpunkt konnte. Inzwischen habe ich intensive Fehlersuche betrieben und habe festgestellt, daß die ursprünglich vermutete Korrelation zwischen "open sockets left in connection" und meinen von CheckMk gemeldeten TCP-Timeouts so doch nicht besteht.

Ein paar Zeilen zum Setup. Ich verwalte als Admin unter anderem einem Proxmox-Cluster (das sollten hier mehr Leute kennen als im Rest der Welt) bestehend aus drei Nodes. Der Cluster ist noch neu, ich habe darauf etwa 60 VMs laufen. Bis auf zwei VMs (die laufen auf Buster) laufen alle Systeme auf Debian Bullseye und bis auf die eben erwähnten Buster-Maschinen (dort läuft Apache) läuft auf allen VMs ein Nginx. Meine Server provisioniere ich mit Ansible, wodurch die Konfiguration bezogen auf die gesamte Serverlandschaft sehr homogen ist.
Vor ein paar Monaten habe ich angefangen in Checkmk aktive Checks zu definieren die sowohl unsere eigene Infrastruktur als auch aktive Kundenseiten überwachen. Ich verwende das Nagios-Plugin check_http und überwache 1) die Website auf Verfügbarkeit und 2) die Validität des SSL-Zertifikat. Seit diesem Zeitpunkt liefert mir Checkmk im Rhythmus von 1-2 pro Tag einen TCP_Timeout auf einem meiner so überwachten Server. Wenn ich die Fehlermeldung reinbekam während ich am Rechner saß, habe ich dann ein Browserfenster aufgemacht habe und die Website geöffnet - diese wurden immer fehlerfrei angezeigt, was ich als Indikator dafür deutete, daß es sich um False Positives handelte.

Dann hat mein Kollege diese Verbindungsabbrüche während einer Jitsi-Konferenz gehabt. Die Teilnehmer mussten also neuladen bzw. sich neu verbinden. Seit diesem Zeitpunkt gehe ich nicht mehr von False Positives aus. Was sich in einigen meiner Logs fand war folgendes:

2022/09/16 11:18:42 [alert] 3212994#3212994: *2771 open socket #30 left in connection 22
2022/09/16 11:18:42 [alert] 3212994#3212994: *2770 open socket #29 left in connection 23
2022/09/16 11:18:42 [alert] 3212994#3212994: *3234 open socket #22 left in connection 24
2022/09/16 11:18:42 [alert] 3212994#3212994: *3229 open socket #11 left in connection 26
2022/09/16 11:18:42 [alert] 3212994#3212994: *3231 open socket #32 left in connection 28
2022/09/16 11:18:42 [alert] 3212994#3212994: aborting
2022/09/16 11:20:19 [error] 3295994#3295994: *153 upstream timed out (110: Connection timed out) while reading response>

Ich bin daher davon ausgegangen, daß dieses Socket-Problem (Socket Leak?) wohl mit den Timeouts zu tun hat. Ich habe jetzt intensiv die Logs beobachtet wenn es einen Timeout gab und konnte dieses Log-Ereigniss trotz weiterer regelmässiger TCP-Timeouts nicht mehr finden. Ich vermute, daß es ein weiteres Problem mit eventuell einer ganz anderen Ursache ist, würde mir an dieser Stelle aber Feedback aus dem Forum wünschen.

Ich habe dann beschlossen von den alten Stable-Nginx-Versionen auf neue Nginx-Mainline-Versionen aus dem offiziellen Repo upzudaten. Ich habe dann die Installationsanleitung in ein Ansible-Playbook umgeschrieben und erst auf einem Test-Server und dann auf Matomo nginx 1.23.1 installiert. (Wohl sowieso die bessere Wahl wenn man keine 3rd-Party-Erweiterungen nutzt). Heute Vormittag habe ich mich an den Rechner gesetzt und zu meinem großen Frust festgestellt, daß es um 06:26 wieder einen Timeout auf dem Matomo mit dem neuen nginx gab. Dieses Mal fand ich nicht nur keinen Hinweis auf den Timeout in den Logs, ich habe auch die vorhandenen Logs durchgegrept und dabei festgestellt, daß es seit dem 22.09 keine "open sockets left in Connection" mehr gab, aber weiterhin mindestens einen Timeout pro Tag. (Im Moment praktisch nur auf Matomo). Vielleicht sind die "open sockets left in connection" ein ganz anderes Problem als meine TCP-Timeouts - ich weiß es aber einfach nicht.

Für jede Hilfe zu meinen (eventuell mehreren) Problemen wäre ich sehr dankbar.

Viele Grüße
Stefan Schumacher
Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 88
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready