Page 1 of 2
Gateway Timeout
Posted: Tue 8. Dec 2020, 13:57
by iREQ
Hallo,
seit kurzer Zeit treten seltsame Probleme auf meiner Keyhelp Installation auf. Es lief bisher eigentlich sehr rund.
Ich habe meine Website im Monitoring und habe regelmäßig Emails bekommen, dass die Keyhelp-Panel Seite offline ist, was auch stimmte. Allerdings war immer der Apache2 normal am laufen und auch in den Logs war nichts zu sehen. Ein Serverneustart hat dann immer Abhilfe geschaffen.
Da ich dachte, es könnte evtl. an der Firewall liegen, habe ich diese abgeschaltet. Dann passierte der Fehler auch nicht mehr.
Nun aber heute folgendes Problem: Manche Webseiten (u.a. eine Nextcloud Installation) laufen in einen 504 Gateway Timeout. Andere Seiten (wie auch das Keyhelp Panel) funktionieren normal. In den Logs ist in diesem Fall wieder nichts zu finden.
Ich bin etwas überfragt.
Re: Gateway Timeout
Posted: Tue 8. Dec 2020, 14:11
by iREQ
Ok, ich habe herausgefunden, dass das ganze nur bei PHP Version 7.4 auftritt. Stelle ich auf 7.3 oder 8.0 um, dann ist die Seite erreichbar.
Re: Gateway Timeout
Posted: Tue 8. Dec 2020, 14:23
by Florian
Hallo,
dann ggf mal in das PHP-FPM Log von PHP 7.4 schauen.
Re: Gateway Timeout
Posted: Wed 9. Dec 2020, 19:07
by iREQ
Hallo,
dort war nichts zu sehen. Ich habe zum testen mal wieder die Firewall angeschaltet - und siehe da: nach ein paar Stunden ist meine Website (und das Keyhelp Panel) nicht mehr zu erreichen. Anscheinend hat die Firewall irgendein Problem was HTTP(S) blockiert. SSH funktioniert. Nach einem Serverneustart geht es wieder.
Re: Gateway Timeout
Posted: Thu 10. Dec 2020, 09:06
by Alexander
Hallo,
iREQ wrote: ↑Tue 8. Dec 2020, 13:57
Ich habe meine Website im Monitoring und habe regelmäßig Emails bekommen, dass die Keyhelp-Panel Seite offline ist, was auch stimmte. Allerdings war immer der Apache2 normal am laufen und auch in den Logs war nichts zu sehen.
Für diesen Fall hätte ich eine mögliche Erklärung. Hier kann ich dir einmal ein geänderte Datei zukommen lassen und du schaust dann einmal, ob das Problem noch existent ist (folgt per PM).
iREQ wrote: ↑Tue 8. Dec 2020, 13:57
Nun aber heute folgendes Problem: Manche Webseiten (u.a. eine Nextcloud Installation) laufen in einen 504 Gateway Timeout. Andere Seiten (wie auch das Keyhelp Panel) funktionieren normal. In den Logs ist in diesem Fall wieder nichts zu finden.
Ich gehe davon aus hier kommen die KeyHelp eigenen zusätzlichen PHP Interpreter zum Einsatz?
In welchen Log hast du geschaut? In diesen hier auch /opt/keyhelp/php/7.4/var/log/php-fpm.log?
Erstmal als Quick & Dirty Lösung, kannst du ihn per Cronjob regelmäßig neu starten lassen.
Re: Gateway Timeout
Posted: Thu 10. Dec 2020, 11:40
by iREQ
Alexander wrote: ↑Thu 10. Dec 2020, 09:06
iREQ wrote: ↑Tue 8. Dec 2020, 13:57
Nun aber heute folgendes Problem: Manche Webseiten (u.a. eine Nextcloud Installation) laufen in einen 504 Gateway Timeout. Andere Seiten (wie auch das Keyhelp Panel) funktionieren normal. In den Logs ist in diesem Fall wieder nichts zu finden.
Ich gehe davon aus hier kommen die KeyHelp eigenen zusätzlichen PHP Interpreter zum Einsatz?
In welchen Log hast du geschaut? In diesen hier auch /opt/keyhelp/php/7.4/var/log/php-fpm.log?
Erstmal als Quick & Dirty Lösung, kannst du ihn per Cronjob regelmäßig neu starten lassen.
Das Problem war nach einem Serverneustart auch weg und ist seither auch nicht wieder aufgetreten. Hat sich wohl irgendwie verhaspelt.
Den Pfad für den FPM Log kannte ich noch nicht. Danke für die Info, werde den künftig berücksichtigen.
Re: Gateway Timeout
Posted: Fri 11. Dec 2020, 11:21
by iREQ
Das Problem mit dem sich zufällig "abschießenden" Keyhelp ist letzte Nacht wieder aufgetreten.
Wie folgt ist der Ablauf wenn das Problem auftritt:
Ich bekomme eine Email von UptimeRobot. ("Webserver is down"). UptimeRobot schaut einfach ob meine Keyhelp Adresse per HTTP(S) erreichbar ist. Wenn ich die Email erhalte kann ich auch tatsächlich nicht auf die Seite zugreifen - also ist sie anscheinend wirklich offline. Gleiches gilt auch bei gehosteten Webseiten auf dem Keyhelp Server.
Ich habe im Monitoring auch einen ICMP-Test auf meinen Server sowie einen Test auf Port 25 (für den Mailserver) - die melden quasi nie Probleme (außer der ganze Server ist halt wirklich offline).
Wenn ich die Email erhalte, dann schalte ich mich erstmal per SSH auf den Server, checke den Apache2 Status (der läuft dann auch immer) und mache einen reboot. Dann läuft es wieder. Im PHP 7.3 und 7.4 FPM Log ist nichts abnormales zu finden. (Die gehosteten Seiten verwenden alle PHP 7.4, Standard des Betriebssystems (Debian 10) ist 7.3)
Re: Gateway Timeout
Posted: Fri 11. Dec 2020, 11:37
by Tobi
Wir hatten das neulich auch auf einem Debian10 Server.
Webseiten alle tot.
Laut Logfiles exakt um kurz nach drei Uhr morgens.
Komischerweise haben Apache2 und MariaDB keine Ausfall gezeigt. Status: active & running
Erst ein Reboot hat das Problem gelöst.
Ich hatte das als Einzelfall abgetan.
Muss ich mir jetzt Sorgen machen?
Oder einfach einen Reboot-Cronjob auf 3:30 Uhr setzen?
Re: Gateway Timeout
Posted: Fri 11. Dec 2020, 12:04
by iREQ
Tobi wrote: ↑Fri 11. Dec 2020, 11:37
Wir hatten das neulich auch auf einem Debian10 Server.
Webseiten alle tot.
Laut Logfiles exakt um kurz nach drei Uhr morgens.
Komischerweise haben Apache2 und MariaDB keine Ausfall gezeigt. Status: active & running
Erst ein Reboot hat das Problem gelöst.
Ich hatte das als Einzelfall abgetan.
Muss ich mir jetzt Sorgen machen?
Oder einfach einen Reboot-Cronjob auf 3:30 Uhr setzen?
Scheint das selbe Problem zu sein - nur ist es bei mir nicht vorhersehbar und völlig zufällig bisher.
Re: Gateway Timeout
Posted: Sat 12. Dec 2020, 12:43
by iREQ
Hallo,
eben ist das Problem wieder aufgetreten.
-> Apache2 ist normal am laufen.
-> Im PHP 7.4 und 7.3 Error Log ist absolut nichts ungewöhnliches zu sehen.
-> Im Apache2 Error Log ist absolut nichts ungewöhnliches zu sehen.
Hier sieht man gut, dass tatsächlich nur der Webserver betroffen ist. Da er aber läuft, ist wohl die Firewall Schuld. Dort ist HTTP(S) aber freigegeben.
Re: Gateway Timeout
Posted: Sat 12. Dec 2020, 14:30
by OlliTheDarkness
iREQ wrote: ↑Sat 12. Dec 2020, 12:43
Hallo,
eben ist das Problem wieder aufgetreten.
-> Apache2 ist normal am laufen.
-> Im PHP 7.4 und 7.3 Error Log ist absolut nichts ungewöhnliches zu sehen.
-> Im Apache2 Error Log ist absolut nichts ungewöhnliches zu sehen.
Hier sieht man gut, dass tatsächlich nur der Webserver betroffen ist. Da er aber läuft, ist wohl die Firewall Schuld. Dort ist HTTP(S) aber freigegeben.
Ich werfe mal Fail2Ban ins Rennen.
Zuviele Anfragen in X Sek / Minuten , Ban. (?)
Re: Gateway Timeout
Posted: Sat 12. Dec 2020, 17:36
by iREQ
OlliTheDarkness wrote: ↑Sat 12. Dec 2020, 14:30
Ich werfe mal Fail2Ban ins Rennen.
Zuviele Anfragen in X Sek / Minuten , Ban. (?)
UptimeRobot macht 1 Anfrage alle 5 Minuten, außerdem kann ich den Webserver zu dem Zeitpunkt ja ebenfalls nicht erreichen.
Re: Gateway Timeout
Posted: Mon 14. Dec 2020, 17:00
by Florian
Hallo,
mal das Error Log des Webserver danach geprüft:
server reached MaxRequestWorkers setting, consider raising the MaxRequestWorkers setting
Oder eben das PHP-FPM Log /var/log/phpX.X-fpm.log (System-PHP), /opt/keyhelp/php/<version/var/log (Keyhelp zusätzliche PHP Versionen):
WARNING: [pool keyhelp-user-name] server reached max_children setting (3), consider raising it
Re: Gateway Timeout
Posted: Tue 15. Dec 2020, 16:06
by iREQ
Florian wrote: ↑Mon 14. Dec 2020, 17:00
Hallo,
mal das Error Log des Webserver danach geprüft:
server reached MaxRequestWorkers setting, consider raising the MaxRequestWorkers setting
Oder eben das PHP-FPM Log /var/log/phpX.X-fpm.log (System-PHP), /opt/keyhelp/php/<version/var/log (Keyhelp zusätzliche PHP Versionen):
WARNING: [pool keyhelp-user-name] server reached max_children setting (3), consider raising it
Hallo,
konnte folgendes im Apache2 Log finden. Der Eintrag ist ein paar Minuten bevor ich wieder eine Down-Meldung vom Monitoring erhalten habe.
Code: Select all
[Tue Dec 15 15:41:19.237865 2020] [mpm_worker:error] [pid 1266:tid 140710942897280] AH00286: server reached MaxRequestWorkers setting, consider raising the MaxRequestWorkers setting
Weiß nicht, wieso mir das nicht früher aufgefallen ist. Aber meine Webseiten sind nicht sonderlich viel besucht (primär privates / kleine Projekte), falls das irgendeinen Unterschied macht.
Re: Gateway Timeout
Posted: Tue 15. Dec 2020, 16:31
by Alexander
Hallo,
dann setzt mal die Limits hoch: Unter "Benutzerverwaltung" -> "Benutzer bearbeiten" -> "Reiter: PHP-FPM" -> "pm.max_children".
EDIT: Siehe nächsten Beitrag von Florian.