Werkblatt.
Notiz 01 / Betrieb

Beobachten, bevor man eingreift.

Ein Dienst läuft. Sein Prozess ist vorhanden, die Maschine antwortet, im Kontrollfenster steht ein grüner Punkt. Trotzdem kommt am anderen Ende nichts an. Zwischen einem laufenden Programm und einer funktionierenden Verbindung liegen mehrere unabhängige Bedingungen.

Vom Symptom zur Schicht

Zuerst lohnt es sich, die Beobachtung genau zu benennen: Fehlt die Namensauflösung? Kommt keine TCP-Verbindung zustande? Scheitert erst die verschlüsselte Verbindung, oder bleibt die eigentliche Antwort aus? Diese Unterschiede entscheiden darüber, wo eine Prüfung sinnvoll ist.

Ein Neustart verändert mehrere Zustände gleichzeitig. Damit kann er ein Problem vorübergehend beseitigen, aber auch die Ursache unsichtbar machen. Wer vorher Zeit, Fehlertext und die betroffenen Verbindungen festhält, kann spätere Beobachtungen besser einordnen.

Ressourcen sind eine Zeitreihe

Die aktuelle CPU-Auslastung ist nur eine Momentaufnahme. Interessanter ist häufig, was unmittelbar vor dem Fehler passiert ist: ein kurzer Engpass, volle Dateisysteme oder lange Wartezeiten beim Schreiben. Werkzeuge wie sar und iostat helfen, solche Zusammenhänge zu sehen.

Auch ein hoher Lastwert ist nicht automatisch ein Beweis für zu wenig Rechenleistung. Wartende Aufgaben und tatsächliche CPU-Arbeit sind unterschiedliche Dinge. Deshalb sollten mehrere Messgrößen gemeinsam betrachtet werden.

Eine gute Diagnose verkleinert die Menge der möglichen Ursachen. Sie beginnt nicht mit möglichst vielen Änderungen.

Die kleinste passende Maßnahme

Wenn eine Schicht als Ursache feststeht, sollte auch die Änderung auf diese Schicht begrenzt bleiben. Ein einzelner Prozess braucht keine vollständige Neuinstallation. Ein fehlerhafter Name verlangt nicht nach einem neuen Netzwerkdesign.

Nach der Änderung zählt dieselbe Prüfung wie davor. Erst der Vergleich macht aus einer Vermutung ein nachvollziehbares Ergebnis.

Zurück zum Journal