Server im deadlock

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
ernstlx
Beiträge: 36
Registriert: 25.02.2011 01:15:44
Kontaktdaten:

Re: Server im deadlock

Beitrag von ernstlx » 05.12.2018 01:18:39

Naja, wenn es langsam schlimmer geworden ist, spricht natürlich sehr viel für einen Hardware-Schaden.

Cron scheidet also aus - alles nach 6 Uhr. Um 2:30 ist gar nichts (außer stündlichen Jobs, falls es die überhaupt gibt).

Bei der Default-Konfiguration von smartd.conf werden akut auftretende Fehler an ein Script namens smartd-runner übergeben (ich hoffe, da fehlt ein "r" am Ende) und da steht drin, dass run-parts alle Scripte in /etc/smartmontools/run.d mit den SMART-Meldungen als Argument ausführen soll ...
Jedenfalls sind keine Selftests programmiert - scheidet also auch aus.

Logrotate entfaltet seine Aktivitäten auch mit cron. Also erst am frühen morgen. Außerdem wären Probleme allenfalls zu erwarten, wenn wirklich große Logfiles z.B. komprimiert werden. (ich habe übrigens übertrieben - mein Shorewall-Logfile war bloß knapp über 6 GB groß ...)

Keine weiteren Server (NFS-Server wird nachts nichts tun) ... was also kann die CPU mitten in der Nacht beschäftigen? Spannend.

Welcher Mailserver läuft? Was tut er?
Welche Prozesse laufen? Vielleicht nur mal

Code: Alles auswählen

ps -e
Desktop: Intel i5-6600T@2,7GHz, ASRock Z170 Extreme4, 8GB RAM, Samsung 970 Evo SSD, Debian Stretch (64-bit), Xfce
Notebook: HP 2540p, Intel i5-540M@2,53GHz mit GMA HD Graphik, 4GB RAM, Intel SSD SAM080, Debian Jessie (64-bit), Xfce
Router/Server: Intel D945GCLF2 ITX-Board mit Atom 330@1,6GHz, 2GB RAM, Samsung 860 Evo SSD, Debian Stretch (32-bit), -

mclien
Beiträge: 2291
Registriert: 06.12.2005 10:38:46
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Baustelle

Re: Server im deadlock

Beitrag von mclien » 06.12.2018 19:46:13

ernstlx hat geschrieben: ↑ zum Beitrag ↑
05.12.2018 01:18:39
Naja, wenn es langsam schlimmer geworden ist, spricht natürlich sehr viel für einen Hardware-Schaden.
Ist es nicht, ich habe halt bisher einfach einen reset gemacht.
Keine weiteren Server (NFS-Server wird nachts nichts tun) ... was also kann die CPU mitten in der Nacht beschäftigen? Spannend.
Und das halt nur alle paar Wochen...
Welcher Mailserver läuft? Was tut er?
dovecot, versorgt 4-6 Mailpostfächer, die nur im internen Netz abgerufen werden.
Einsammeln tue ich das per getmail und cron
.....FCK, jetzt wo ich es schreibe...
Ich Pfuscher habe dem script, das den getmail Aufruf macht, keine Kontrolle verpasst, ob der vorherige cronjob noch läuft....
-> wenn der nach 3 Minuten noch nicht fertig ist und cron dann den nächsten Job startet, könnte ich natürlich irgendwann das System durch zu viele Prozesse blocken.
Allerdings müsste ich dann im Monitoring sehen, dass die Anzahl der CPU Threads auf "critical" springt, oder? was sie aber lt. Monitor History nicht gemacht hat.
Welche Prozesse laufen? Vielleicht nur mal

Code: Alles auswählen

ps -e
http://nopaste.debianforum.de/40513

ernstlx
Beiträge: 36
Registriert: 25.02.2011 01:15:44
Kontaktdaten:

Re: Server im deadlock

Beitrag von ernstlx » 06.12.2018 21:26:42

habe dem script, das den getmail Aufruf macht, keine Kontrolle verpasst, ob der vorherige cronjob noch läuft....
Welcher vorherige cronjob? Was sind das für cronjobs? cron.hourly, cron.daily? Dafür wären dann eigentlich die cronjobs der Clients interessant.
run-parts führt die jobs, glaube ich, wirklich hintereinander aus oder macht da dein Skript etwas parallel?
Desktop: Intel i5-6600T@2,7GHz, ASRock Z170 Extreme4, 8GB RAM, Samsung 970 Evo SSD, Debian Stretch (64-bit), Xfce
Notebook: HP 2540p, Intel i5-540M@2,53GHz mit GMA HD Graphik, 4GB RAM, Intel SSD SAM080, Debian Jessie (64-bit), Xfce
Router/Server: Intel D945GCLF2 ITX-Board mit Atom 330@1,6GHz, 2GB RAM, Samsung 860 Evo SSD, Debian Stretch (32-bit), -

mclien
Beiträge: 2291
Registriert: 06.12.2005 10:38:46
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Baustelle

Re: Server im deadlock

Beitrag von mclien » 07.12.2018 09:41:37

Ich habe root eine crontab verpasst, die die Mails von den Servern abholt und dann im localen IMAp Server zur verfügung stellt.
Ich führe alle 3 min das hier aus:

Code: Alles auswählen

/usr/bin/getmail -q --getmaildir=/etc/.getmail -d --rcfile getmailrc.user
ursprünglich waren das mal 6 user die so abgewickelt wurden, momentan ist es nur noch einer. Das sit eine Altlast, die ich eh noch loswerden will.

Wenn jetzt der getmail Abruf länger als 3 min läuft, wird er halt nochmal aufgerufen, obwohl er schon läuft. Das kann dann dazu führen, dass die Anzahl der Prozesse ständig ansteigt und irgendwann nichts mehr geht.
-> ist momentan zumindest die einzige Idee, die ich habe.
Ich könnte jetzt "einfach" den letzten verbelibenden IMAP user umziehen und den IMAP Server samt getmail entfernen und abwarten was passiert....

MSfree
Beiträge: 3632
Registriert: 25.09.2007 19:59:30

Re: Server im deadlock

Beitrag von MSfree » 07.12.2018 09:58:30

mclien hat geschrieben: ↑ zum Beitrag ↑
07.12.2018 09:41:37
Ich führe alle 3 min das hier aus:

Code: Alles auswählen

/usr/bin/getmail -q --getmaildir=/etc/.getmail -d --rcfile getmailrc.user
getmail lastet deinen Rechner mit absoluter Sicherheit nicht aus, dazu kommen die Daten viel zu langsam an deinem Rechner an. Auf meinem alten VIA Epia hat die CPU-Last beim Post abholen auch nur maximal 10% ausgemacht, und die CPU war um eine Größenordnung langsamer.

Auch eine Überlappung durch ein noch nicht abgeschlossenes getmail mit einem 3 Minuten später gestarteten getmail ist kein Problem. getmail erzeugt sich normalerweise ein lockfile, das der spätergestartete getmail erkennt und sich dann einfach unverrichteter Dinger beendet.

Abgesehen davon halte ich 3 Minuten für sehr kurz. Nichts in der Welt kann so wichtig sein, daß es bei Emails, die ja kein Real-Time-Medium sind, auf ein paar Minuten mehr oder weniger ankäme. Wenn es auf jede Sekunde ankommt, greifen die Leute sowieso zum Telefon (und fragen, ob du ihre Email schon gelesen hast :mrgreen: :facepalm: )

Vielleicht wäre auch fetchmail eine Alternative für dich. Das kann man direkt als Daemon laufen lassen und braucht dadurch kein cron, was Überlappungen zuverlässig verhindert.

mludwig
Beiträge: 516
Registriert: 30.01.2005 19:35:04

Re: Server im deadlock

Beitrag von mludwig » 07.12.2018 16:52:47

Mehrere Platten mit mdadm? mdadm läuft am 1. Sonntag jeden Monats los und führt ein checkarray aus ... kommt automatisch mit. Würde für alle paar Wochen (4) sprechen.

Code: Alles auswählen

cat /etc/cron.d/mdadm 
#
# cron.d/mdadm -- schedules periodic redundancy checks of MD devices
#
# Copyright © martin f. krafft <madduck@madduck.net>
# distributed under the terms of the Artistic Licence 2.0
#

# By default, run at 00:57 on every Sunday, but do nothing unless the day of
# the month is less than or equal to 7. Thus, only run on the first Sunday of
# each month. crontab(5) sucks, unfortunately, in this regard; therefore this
# hack (see #380425).
57 0 * * 0 root if [ -x /usr/share/mdadm/checkarray ] && [ $(date +\%d) -le 7 ]; then /usr/share/mdadm/checkarray --cron --all --idle --quiet; fi

mclien
Beiträge: 2291
Registriert: 06.12.2005 10:38:46
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Baustelle

Re: Server im deadlock

Beitrag von mclien » 07.12.2018 18:36:28

mludwig hat geschrieben: ↑ zum Beitrag ↑
07.12.2018 16:52:47
Mehrere Platten mit mdadm? mdadm läuft am 1. Sonntag jeden Monats los und führt ein checkarray aus ... kommt automatisch mit. Würde für alle paar Wochen (4) sprechen.
Einerseits könnte das passen:
1 Plattenpaar mit 1 RAID Device
1 Plattenpaar mit 3 RAID Devices
(alle Platten sind 3 TB Platten)

andererseits startet das Problem erst um 2:50 und davor ist die CPU Last sogar 1 Stunde lang geringer, als den restlichen Tag.

mludwig
Beiträge: 516
Registriert: 30.01.2005 19:35:04

Re: Server im deadlock

Beitrag von mludwig » 07.12.2018 19:57:26

Ich hätte jetzt erwartet, dass du prüfts ob:
a) es solche einen (oder vielleicht andere ähnliche) cronjob bei dir gibt
b) ob deine Ausfälle immer am 1. Sonntag des Monats stattgefunden haben.

mdadm prüft die vorhandenen MD-Devices nacheinander, d. h. es ist durchaus möglich das zunächst eine Prüfung läuft, die unauffällig ist, und das 2. oder 3. MD-Device dann dein Problem verursacht.

mclien
Beiträge: 2291
Registriert: 06.12.2005 10:38:46
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Baustelle

Re: Server im deadlock

Beitrag von mclien » 08.12.2018 12:05:21

Oh, ich dachte das sei implizit klar..
Also ja, es gibt den cronjob, allerdings, tritt das Problem, wie beschrieben 2Std später auf, mit vorheriger Verringerung der CPU Last.

Ich sekĺbt habe die Ausfälle jetzt nicht dokumentiert, weil sie so selten waren. Und meine Serverüberwachung läuft leider noch nicht lange genug, dass ich schauen könnte, wann die Ausfälle waren.
Gibt es irgendwo eine stelle im System, die die Uhrzeiten der Rechnerstarts dokumentiert?

mludwig
Beiträge: 516
Registriert: 30.01.2005 19:35:04

Re: Server im deadlock

Beitrag von mludwig » 08.12.2018 13:05:27

last -x

zeigt bei mir zumindest die (Re)boots und Logins an, ich weiß aber nicht wie weit das zurückreicht.

mclien
Beiträge: 2291
Registriert: 06.12.2005 10:38:46
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Baustelle

Re: Server im deadlock

Beitrag von mclien » 08.12.2018 23:39:04

mludwig hat geschrieben: ↑ zum Beitrag ↑
08.12.2018 13:05:27
last -x

zeigt bei mir zumindest die (Re)boots und Logins an, ich weiß aber nicht wie weit das zurückreicht.
Leider nicht lange genug... In meinem Fall ist nur der letzte Deadlock vom 2.12. gelistet.

mludwig
Beiträge: 516
Registriert: 30.01.2005 19:35:04

Re: Server im deadlock

Beitrag von mludwig » 09.12.2018 09:43:38

Dann kannst du entweder bis zum nächsten Mal warten, (6.01.19) oder checkarray mal manuell aufrufen.

Code: Alles auswählen

/usr/share/mdadm/checkarray --all 
Wenn das sauber durchläuft, liegt es an was anderem ...

Antworten