← Alle Beiträge
Monitoring//3 Min. Lesezeit

Ein kleiner Docker-Fehler mit einer wichtigen Lektion

Zentrale Logs machten unnötige Agentaufrufe sichtbar. Wir haben sie an der Quelle abgestellt und geprüft, ob das Monitoring weiterlief.

Ein Fehler, der erst durch zentrale Logs auffiel

Nach der Linux-Anbindung an Graylog wurden wiederkehrende Docker-Fehler sichtbar. In mehreren Containern sollte ein Checkmk-Agent gestartet werden, obwohl das Programm dort nicht vorhanden war. Die Anwendungen mussten deshalb nicht ausgefallen sein. Der Fehler betraf zunächst die Art, wie Monitoring-Daten abgefragt wurden.

Wir wollten diese unnötigen Aufrufe beseitigen und die vorhandene Containerüberwachung erhalten. Dafür haben wir die dokumentierte Einrichtung und den tatsächlich abgelegten Plugin-Code zusammen betrachtet.

Den richtigen Teil der Abfrage abschalten

Das Docker-Plugin konnte Daten auf zwei Wegen gewinnen: über die Docker-API und durch den Versuch, einen Agenten innerhalb des Containers auszuführen. In unserer gespeicherten Konfiguration waren diese zusätzlichen Ausführungsversuche standardmässig aktiv.

Wir haben gezielt diesen Teil deaktiviert. Status- und Ressourcenabfragen über die Docker-API blieben bestehen. Statt die Änderung sofort überall anzuwenden, begann die Umsetzung mit einem Host. Ein Vorher-/Nachher-Vergleich prüfte, ob die bisherigen Piggyback-Ziele und Datensektionen erhalten blieben. Erst danach folgte der zweite Host.

Fehlerbereinigung mit überprüfbarem Ergebnis

Auf beiden Hosts blieben sämtliche im Vergleich erfassten Containerziele erhalten. Die anschliessenden Journal-Abfragen zeigten keine neuen passenden Agentaufruf-Fehler. Zusätzlich lieferten ausgewählte Container weiterhin CPU-Messwerte nach der Änderung. Dafür waren keine Container- oder Dienstneustarts nötig.

Das ist eine erfolgreiche, stichprobenweise bestätigte Korrektur. Es ist keine vollständige Einzelabnahme jedes Anwendungsdienstes und keine Zusage, dass künftig nie ein neuer Fehler auftritt.

Und was wurde aus der hohen Checkmk-Last?

Die Last der Checkmk-Instanz war schon zuvor ein eigenes Thema. Messungen hatten einen erheblichen Anteil der CPU-Arbeit den vielen separaten Host-Prüfprozessen zugeordnet. Längere Prüfintervalle brachten in den beobachteten Ausschnitten bereits Entlastung, während Spitzen bestehen blieben.

Die jetzt entfernten Docker-Aufrufe liefen dagegen auf den Linux-Quellhosts. Sie verursachten vermeidbare Arbeit und Fehlermeldungen. Eine zusätzliche Senkung der CPU-Last auf dem Monitoring-System ist durch diese Bereinigung bisher nicht nachgewiesen. Diese zwei Ergebnisse auseinanderzuhalten ist die wichtigste Erkenntnis dieses Falls.

Erfahrungsbericht · Stand Oktober 2026 · Aus interner Dokumentation zusammengefasst und anonymisiert.