ELX-Software

Serverüberwachung

ELX-HealthMonitor

Was ein Linux-Server gerade tut und was er letzte Woche tat

Ein Überwachungsagent mit Weboberfläche, Verlauf in SQLite und E-Mail-Benachrichtigungen. Eine ausführbare Datei ohne Abhängigkeiten: Die Oberfläche steckt in der Binärdatei, die Datenbank legt sich selbst an. Auf einem vier Jahre alten Celeron kostet er etwa vier Prozent eines Kerns und elf Megabyte Speicher.

v1.0.0 LinuxARM Kostenlos

Aus dem Kernel gelesen, nicht geraten

Alles kommt unmittelbar aus /proc, /sys und smartctl. Kein Collector zu installieren, keine Zeitreihendatenbank zu betreiben und kein Paar aus Agent und Server im Gleichschritt zu halten.

Festplatten, bevor sie ausfallen

SMART-Zustand, Temperatur, Betriebsstunden, verlagerte und schwebende Sektoren, CRC-Fehler, SSD-Verschleiß und die insgesamt geschriebene Datenmenge — mit der vollständigen Attributtabelle, wenn Sie genauer hinsehen wollen.

RAID, einschließlich des unbequemen Teils

Zustand des Verbunds, Stufe, Mitglieder, ausgefallene Platten und Fortschritt der Neusynchronisierung — dazu die Schreibabsichtskarte, die sagt, ob die Kopien gerade wirklich gleich sind, und die Zahl der Abweichungen der letzten Prüfung.

Dienste mit eigener Ein- und Ausgabe

Jede systemd-Einheit mit Prozessor, Speicher, Lese- und Schreibvorgängen, Zahl der Aufgaben und Neustarts — und Schaltflächen zum Starten, Anhalten und Ändern des Autostarts.

Benachrichtigungen, die nicht ohne Grund rufen

Eine Regel trägt eine Haltezeit: Eine zehn Sekunden lange Spitze auf Vollast schickt nichts, zehn Minuten auf diesem Stand schon. Genau diese Einstellung trennt Nachrichten, die gelesen werden, von Nachrichten, die weggefiltert werden.

Ein Verlauf, der nicht endlos wächst

Drei Tage in voller Auflösung, danach Fünf-Minuten-Abschnitte mit Mittelwert, Minimum und Maximum, und nichts, was älter als ein Monat ist. Die Spitzen überstehen die Ausdünnung; Gigabyte nicht.

Was gemessen wird

BereichMesswerte
ProzessorGesamtlast und je Kern, user/system/iowait/steal, Takt, Lastmittel, Kontextwechsel, Warteschlange
SpeicherBelegt, verfügbar, Zwischenspeicher, Puffer, Slab, schmutzige Seiten, Auslagerung und wie stark sie beansprucht wird
FestplattenLese- und Schreibrate, IOPS, Verzögerung, Auslastung des Geräts, Modell, Kapazität
DateisystemeBelegt, frei, Prozent, Inodes
SMARTZustand, Temperatur, Betriebsstunden, verlagerte und schwebende Sektoren, CRC-Fehler, SSD-Verschleiß, Schreibmenge über die Lebensdauer, vollständige Attributtabelle
RAIDZustand der md-Verbünde, Stufe, Mitglieder, ausgefallene Platten, Fortschritt und Tempo der Neusynchronisierung, aktuelle Gleichheit der Kopien und Abweichungen der letzten Prüfung
NetzwerkBytes und Pakete ein und aus, Fehler und Verluste, Verbindungszustand, Porttempo, Adressen, MTU
TemperaturAlle hwmon-Fühler und ACPI-Wärmezonen sowie Plattentemperaturen aus SMART
DiensteZustand und Autostart der systemd-Einheiten, Prozessor, Speicher, Ein- und Ausgabe je Dienst, Zahl der Aufgaben, Neustarts
ProzesseSpitzenreiter nach Prozessor und Speicher, Plattenaktivität, Eigentümer, Einheit

Jeder Bereich lässt sich einzeln abschalten, und ein abgeschalteter Bereich wird gar nicht erst abgefragt.

Die RAID-Frage, die man stellen sollte

Ein gespiegelter Verbund hält auf beiden Platten dieselben Daten, doch die Schreibvorgänge erreichen sie nicht im selben Augenblick. Der Kernel vermerkt die möglicherweise abweichenden Bereiche in einer Schreibabsichtskarte, und dieser Agent zeigt diese Karte unmittelbar: Solange die Zahl der schmutzigen Bereiche null ist, sind die Kopien gleich; alles darüber bedeutet eine noch laufende Neusynchronisierung.

Daneben steht die Zahl der Abweichungen der letzten Integritätsprüfung. Ein Wert über null bedeutet, dass eine Platte oder ein Controller aus den beiden Hälften einer Spiegelung unterschiedliche Daten geliefert hat — und genau das ist der Ausfall, dessentwegen es Überwachung gibt, und genau der, den eine grüne Anzeige „Verbund in Ordnung“ verdeckt.

Was der Betrieb kostet

Teure Messungen laufen nach einem eigenen Zeitplan, getrennt von der Hauptschleife, denn fünf Platten alle drei Sekunden zu wecken, um ihre Temperatur zu erfragen, wäre schlimmer, als sie gar nicht zu überwachen.

EinstellungStandardWas sie regelt
interval_sec3 sDie Hauptabfrageschleife
services.interval_sec15 sEin vollständiger Durchgang über die systemd-Einheiten
disk.smart_interval_sec900 sSMART-Abfrage — sie weckt die Platten
storage.persist_interval_sec30 sDas Schreiben einer Momentaufnahme in den Verlauf

Gemessen auf einem vierkernigen Celeron J1900 mit 165 systemd-Einheiten und fünf Platten: etwa vier Prozent eines Kerns und elf Megabyte Speicher. Auf einem Xeon E5-2690 unter drei Prozent eines Kerns.

Die Oberfläche

  • Der Browser merkt sich Ihre Auswahl: den Zeitraum jedes Diagramms, per Klick auf die Legende ausgeblendete Kurven und die Filter der Dienst- und Ereignistabellen. Ein Neuladen setzt nichts davon zurück.
  • Alle Kurven wachsen von null nach oben, die Einheit der Achse folgt dem Wertebereich und die Zahl der Nachkommastellen der Rasterweite — sodass zwei benachbarte Linien nie dieselbe Beschriftung tragen.
  • Nach einer Aktualisierung bemerkt ein offener Tab den Versionswechsel selbst, sagt es und lädt neu, statt eine alte Oberfläche im Zwischenspeicher des Browsers stehen zu lassen.
  • Schaltflächen zum Neustarten und Ausschalten der Maschine stehen in der Kopfzeile; wenn Sie sie dort nicht möchten, entfernt ein Konfigurationsschlüssel sie.
  • Jede unumkehrbare Handlung liegt hinter einer Bestätigung, die die Folge erklärt, und die Schaltfläche trägt den Namen der Handlung statt „OK“.

Auf einen Blick

Betriebssysteme
Debian und Ubuntu mit systemd
Architekturen
amd64, arm64, armhf
Weboberfläche
Port 8555 standardmäßig
Verlauf
SQLite; 3 Tage roh, 31 Tage verdichtet
Optionale Abhängigkeit
smartmontools, für den SMART-Bereich
Üblicher Aufwand
~4 % eines Kerns, ~11 MB Speicher
Benachrichtigungen
E-Mail über SMTPS, STARTTLS oder unverschlüsselt
Einrichtung
Weboberfläche oder config.json

ELX-HealthMonitor

Was ein Linux-Server gerade tut und was er letzte Woche tat

Herunterladen