Ubuntu Server crashed aus unbekannten Gründen, Logs verraten nichts

diamdomi

Admiral
Registriert
Mai 2009
Beiträge
7.450
Hallo zusammen,

im Heimnetzwerk ist bei mir ist folgende ZBOX als Ubuntu Server im Einsatz https://www.computerbase.de/preisvergleich/eu/zotac-zbox-ci323-nano-zbox-ci323nano-be-a1345042.html (mit 4 GB Ram, 500 GB SSD)

Darauf laufend sind folgende Services/Applikationen:
  • Samba Fileserver (wird quasi nie genutzt)
  • TS3 Server
  • Home Assistant in der Core Installation
  • TeslaMate via Docker
  • Valheim Server via Docker (erst seit 5 Tagen)
Im Idle sieht die Auslastung wie folgt aus:
1641891912647.png

Unter "Last" (also ein paar Spieler auf dem Valheim Server connected und einige User in Teamspeak) geht im wesentlichen nur die CPU Last etwas hoch. Insgesamt ist die Auslastung aber nie höher als 50% insgesamt. RAM Auslastung ist höher, SSD ca. zu 10% belegt.

Sowohl der Server, als auch die Services/Applikationen sind auf dem aktuellen Stand und werden mind. 1x pro Quartal auf den aktuellen Stand gebracht (wenn nicht bereits automatisch).

Die Problemstellung: Es gibt ca. 1-2x im Monat einen Crash. Der letzte gestern, der davor über die Weihnachtstage und davor schon eine ganze Weile her. Bei diesem Crash ist der Server nicht mehr zu erreichen, also auch nicht über SSH. Die einzige Möglichkeit ist, die ZBOX manuell auszuschalten und danach wieder neu zu startet. Ein paar Minuten später läuft wieder alles wie gewohnt, als wäre nichts gewesen. Nun stellt sich die Frage: was war das Problem?

Erste Anlaufstelle: /var/log und dort die Systemlogs durchsuchen. Keinerlei Auffälligkeiten.
Nächste Anlaufstelle: Durchsuchen aller mir bekannten Logs, also die Logs der oben aufgeführten Services/Applikationen. Auch hier ist nichts zu finden.

Was ich mir überlegt habe:
  • Upgrade von 4 auf 8 GB RAM, da Valheim doch etwas mehr Ressourcen benötigt. Da die Crashes aber davor schon stattgefunden haben, sollte dies aber nichts bringen.
  • Automatisierter Neustart des Servers um z.B. 3 Uhr nachts einrichten. Ggfs. läuft bei einem Service/Applikation nach einer gewissen Zeit irgendwas voll (auch wenn bisher nichts gefunden).
  • Liegt ggfs. ein Hardwareproblem vor, da gar nichts in einem Log zu sehen ist? Falls ja, was für eins?
Habt ihr eine Idee oder Ansatz, wie man das Problem finden und lösen könnte? Bin ehrlich gesagt relativ ratlos und wüsste nicht, wo man noch ansetzen könnte...
 
diamdomi schrieb:
Liegt ggfs. ein Hardwareproblem vor, da gar nichts in einem Log zu sehen ist? Falls ja, was für eins?
Recht sicher sogar.
Speicher mal mit Memtest86 getestet?
 
Schließ doch mal an den ZBOX ein Monitor an wenn es geht. Dann sieht man ob z.B. ein Kernel-Panic auftritt (was ein Hinweis auf ein Hardwareproblem sein könnte) oder was auch immer.

Ansonsten kannst Du auch einfach mal die Systemauslastung permanent loggen und dann retrospektiv gucken, ob sich da irgendwie ein Engpass vor dem Absturz zeigt.
 
Danke schon einmal!

@rg88 Lasse gerade "memtester 2048 3" laufen. Also 3x wird über die Hälfte des RAMs geprüft. Vermutlich bekomme ich aber deutlich sinnigere Testresultate, wenn ich das über ein Livesystem laufen lasse...

@andy_m4 An einen Monitor kann ich das ganze temporär anschließen. Würden in dem Fall unabhängig vom Login Meldungen in der Konsole auftauchen?
Hast du Empfehlungen für ein Logger? Monitorix und netdata sehen danach aus, also wären sie dafür geeignet.
 
diamdomi schrieb:
An einen Monitor kann ich das ganze temporär anschließen. Würden in dem Fall unabhängig vom Login Meldungen in der Konsole auftauchen?
Ja. Einloggen brauchst Du Dich nicht.

diamdomi schrieb:
Hast du Empfehlungen für ein Logger?
Ich würde ganz simple mit nem kurzen Shellskript in Endlosschleife einfach alle 30 Sekunden fortlaufend die Systemauslastung in eine Datei schreiben. Bei sowas muss man natürlich damit rechnen, das die letzten Einträge vor dem Absturz nicht mehr aufs Filesystem geschrieben werden können, aber trotzdem ne Tendenz (RAM wird knapper ; Load wird größer, usw.) erkennen zu können reicht das ja.
 
Noch ein kurzer Nachtrag:
Ich glaube nicht, das es daran liegt das der RAM knapp wird. Denn dafür hat Linux den Out-Of-Memory-Killer. Allerdings ist nicht immer sichergestellt, welchen Prozess er killt. Da aber absolut gar nichts mehr auf dem Server geht würde ich mal davon ausgehen, das es das nicht ist.
 
Server ist am Monitor angeschlossen. Sind vier Einträge vom gestrigen Neustart zu sehen (Meldung über Dauer des letzten Starts). Lasse ich mal bis heut Abend laufen.
Eine Logging Lösung über einen weiteren Server bzw. über einen Raspi würde ich gerne vermeiden. Die Idee mit dem Skript finde ich gut, allerdings bräuchte ich dafür eine Weile, bis ich das aufgesetzt hätte (schon sehr lange nicht mehr damit gemacht). Würde nach dem memtest mir dann vermutlich Monitorix und netdata genauer anschauen und ggfs. installieren.
 
diamdomi schrieb:
@rg88 Lasse gerade "memtester 2048 3" laufen. Also 3x wird über die Hälfte des RAMs geprüft. Vermutlich bekomme ich aber deutlich sinnigere Testresultate, wenn ich das über ein Livesystem laufen lasse...
macht so keinen Sinn. Ich sagte explizit memtest86
 
  • Gefällt mir
Reaktionen: Sulik
diamdomi schrieb:
Die Idee mit dem Skript finde ich gut, allerdings bräuchte ich dafür eine Weile,
Mach doch da nicht so viel Gewese drum. Einfach ein Bash-Skript was Du via ssh (oder von mir aus auch direkt) laufen lässt a-la:
Bash:
while true; do
   echo $(uptime) >> /path/to/mylog.txt
   echo $(free -h)  >> /path/to/mylog.txt
   sleep 30;
done
Durch uptime hast Du gleich die aktuelle Zeit und die Load-Werte.
free gibt Dir den freien Speicher an.
ggf. fügst Du halt nach dem gleichen Schema noch andere Dinge an, die Du loggen willst.
Muss nicht schick sein. Geht ja nur darum, grob zu gucken ob da irgendwo die Ursache liegen könnte.
 
  • Gefällt mir
Reaktionen: diamdomi
Top! Das Skript läuft nun in abgewandelter Form inkl. CPU Temperatur.

memtest86 habe ich über einen USB Stick booten lassen. Interessanterweise ist es mitten in der zweiten Runde nach über einer Stunde abgebrochen und der Server ist heruntergefahren. Einen vollständigen Lauf hat er aber geschafft. Darin wurden 0 Fehler festgestellt. Habe es anschließend nochmals laufen lassen, auch hier das selbe Bild: Absturz nach etwas über einer Stunde, aber 0 festgestellte Fehler. Leider über memtest nicht ersichtlich, warum der Server gecrashed ist ...
 
"heruntergefahren" meinst du was genau damit?

Du hast aber hier definitiv ein Hardwareproblem, wie sich das anhört.
 
Beim ersten Versuch habe ich es nicht gesehen, da nur alle X Minuten den Status auf dem Bildschirm geprüft.
Beim zweiten Versuch ist der Server von der ein auf die andere Sekunde einfach ausgegangen.

Klingt für mich auch nach einem Hardwareproblem. Die Frage ist welches:
  • CPU ggfs. zu heiß? Sollte aber dann eigentlich nur langsamer werden --> CPU Temp wird über das Skript geloggt.
  • RAM klingt für mich unwahrscheinlich, da sonst Fehler im memtest aufgetaucht wären?
  • Dann bleibt noch Board/CPU und Netzteil übrig
 
ausgehen ist meist ein Hitzeproblem oder ein defektes Netzteil

diamdomi schrieb:
RAM klingt für mich unwahrscheinlich, da sonst Fehler im memtest aufgetaucht wären?
Ne, der kanns auch sein. Würde ich aber jetzt mal hinten anstellen. Vorallem, weil sich deine Probleme mit memtest beschleunigt reproduieren lassen
 
Ich lese jetzt nicht heraus, ob während des Crashes auf die lokale Konsole geschaut wurde. Wenn nein, dann wäre die NIC bzw. dessen Treiber/FW auch noch eine mögliche Fehlerquelle.
 
diamdomi schrieb:
CPU ggfs. zu heiß? Sollte aber dann eigentlich nur langsamer werden --> CPU Temp wird über das Skript geloggt.
Könnte theoretisch sein. Wie Du sagst sagst, wird die CPU langsamer (weil sie runtergetaktet wird) aber genau das kann ja dann zum Problem werden wenn da ne gewisse Last drauf ist und die dann plötzlich leistungstechnisch auf C64-Niveau runtergedrosselt wird.
Das kommt auch durchaus mal vor wenn z.B. Wärmeleitpaste austrocknet. Die hat dann einfach nicht mehr die Leitfähigkeit.

Über welche Temperaturen reden wir denn? 60° , 70°, 80° oder mehr?

diamdomi schrieb:
Netzteil ist auch gern mal ein Wackelkandidat. Oder auch ausgefallene Lüfter (womit dann wieder ein Überhitzungsproblem auftreten kann).
 
andy_m4 schrieb:
und die dann plötzlich leistungstechnisch auf C64-Niveau runtergedrosselt wird.
Davon geht der Rechner aber nicht aus. Einfach aus ist immer eine Notabschaltung
 
Er schrieb auch nirgends, dass die Kiste ausging.

Edit: Sorry doch, beim Memtest
 
Bei dieser ZBOX ist kein Lüfter verbaut, der kann somit nicht ausfallen. Logge jetzt nur einen CPU Kern, aber bei der aktuellen Last (im Schnitt 0.9 von maximal 4.0) ist dieser bei maximal 46 Grad. Werde ich aber weiter beobachten.
Dadurch das die Ausfälle aber bereits schon vor dem Valheim Server aufgetreten sind - dieser ist der Hauptgrund für die CPU/RAM Auslastung - würde ich die Temperatur aber eigentlich ausschließen. Trotzdem werde ich das über den Abend mit mehr Spielern auf dem Server und in TS3 beobachten.

Netzteil ist übrigens ein externes von Delta Electronics mit 19V 2.1A Output (ADP-40KD BB). Potentiell könnte dieses ausgetauscht werden. Vermutlich aber mit einem Netzteil eines anderen Herstellers

@foo_1337 Würde man einen Treiber/FW-Fehler nicht softwareseitig irgendwo sehen?
 
diamdomi schrieb:
@foo_1337 Würde man einen Treiber/FW-Fehler nicht softwareseitig irgendwo sehen?
Kommt drauf an. Wenn das System nicht mehr in der Lage ist, auf die Platte zu schreiben, siehst du es nur auf der lokalen Konsole. Aber wenn die Kiste beim Memtest komplett ausgegangen ist, ist die Schuld definitiv nicht bei der NIC zu suchen :) Hört sich für mich stark nach Netzteil an.
 
Zurück
Oben