Viele cron -f-Prozesse auf nicht reagierenden Servern

691
azenz

Mein Debian-Server reagierte erneut nicht mehr und musste neu gestartet werden (SSH-Login unmöglich, Protokolldaten nicht mehr an die MySQL-Datenbank eines anderen Servers übertragen, keine neuen FTP-Verbindungen möglich, aber der Wowza Mediaserver läuft weiterhin problemlos und strahlt Video ohne Probleme ab).

Ich war jedoch immer noch über eine bestehende SSH-Verbindung angemeldet und konnte Shell-Befehle eingeben. Bei der Eingabe von "ps auxf" hatte ich diesen Ausgang (OUTPUT 1):

 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 14994 0.0 0.0 71200 3520 ? S 00:01 0:00 \_/usr/sbin/CRON -f root 15007 0.0 0.0 4328 748 ? Ss 00:01 0:00 | \_ /bin/sh -c /usr/sbin/iotop --accumulated --batch --delay=86100 --proc root 15014 0.0 0.0 60208 17548 ? S 00:01 0:00 | \_ /usr/bin/python /usr/sbin/iotop --accumulated --batch --delay=861 root 18667 0.0 0.0 71092 3504 ? D 08:50 0:00 \_ /usr/sbin/CRON -f root 18668 0.0 0.0 71092 3472 ? D 08:50 0:00 \_ /usr/sbin/CRON -f root 18669 0.0 0.0 71092 3472 ? D 08:50 0:00 \_ /usr/sbin/CRON -f root 18670 0.0 0.0 71092 3428 ? D 08:50 0:00 \_ /usr/sbin/CRON -f root 18671 0.0 0.0 71200 3520 ? D 08:50 0:00 \_ /usr/sbin/CRON -f 

Und Dutzende ähneln eher den letzten Zeilen. Wenn Sie nach 15 Minuten ps eingeben, werden alle alten CRON-f-Einträge (z. B. PID 18667, Startzeit 08:50) weiterhin als laufende Prozesse angezeigt.

Offensichtlich wurden viele Cronjobs ausgeführt, aber nur der erste Cronjob (der in meiner Contab vorhanden ist) hat einen Skriptinhalt (/ usr / sbin / iotop). Die anderen haben keinen Befehl und befinden sich im inaktiven Modus (Zustand "D" gegenüber dem ersten mit Zustand "S").

Mein Server führt einmal pro Minute etwa 5-6 PHP-Skript-Cronjobs aus, von denen die meisten innerhalb von etwa 15 bis 40 Sekunden abgeschlossen sind und nicht ressourcenintensiv sind. Ihr ps aux-Ausgang sieht folgendermaßen aus (OUTPUT 2):

 root 19024 0.0 0.0 42224 2644 ? S 09:03 0:00 \_ /usr/sbin/CRON -f root 19026 0.0 0.0 4328 712 ? Ss 09:03 0:00 | \_ /bin/sh -c /usr/bin/php -q /usr/local/script.php 

Daher schlussfolgere ich vorläufig, dass die erste Ausgabe (OUTPUT 1) nicht zeigt, dass meine PHP-Skripts nicht mehr reagierten, sich massiv ansammelten und Probleme verursachten. Die Ausgabe von "ps auxf" in OUTPUT 1 zeigte jedoch etwa 5-6 neue CRON -f-Einträge pro Minute, die alle weiter liefen, was sich auf Cronjob-Versuche bezieht, meine Skripts auszuführen, jedoch nicht in der Lage ist, sie auszuführen dann stecken bleiben und diese massive ps auxf-Ausgabe produzieren?

Fragen:

  1. Was bedeuten diese Dutzenden von CRON-f-Linien? Worauf beziehen Sie sich?

  2. Kann diese ps auxf-Ausgabe etwas darüber erklären, warum mein Server nicht mehr reagiert hat?

1

0 Antworten auf die Frage