InfraNestInfraNest
Metriken & Warnungen

Arbeitsspeicher, Speicherplatz und Systemlast mit dem Agent erfassen

Dein Anbieter kann uns sagen, wie ausgelastet ein Server ist. Er kann uns nicht sagen, wie viel Arbeitsspeicher noch frei ist, wie voll die Festplatte ist oder welcher Prozess die Maschine auffrisst…

Dieser Artikel richtet sich an alle, die möchten, dass InfraNest sie warnt, bevor eine Festplatte volläuft oder einem Server der Arbeitsspeicher ausgeht — die zwei Dinge, über die dein Cloud-Anbieter dir nichts sagen kann.

Überblick

  • Dein Anbieter kann bereits melden, wie ausgelastet ein Server ist (CPU, Netzwerk, Festplatten-Lese-/Schreibzugriffe). Er kann uns nicht sagen, wie viel Arbeitsspeicher frei ist, wie voll die Festplatte ist oder was die Maschine auffrisst — diese Werte existieren nur auf dem Server selbst.
  • Der InfraNest-Agent ist ein kleines Skript, das du einmal auf dem Server installierst. Es sendet diese Werte jede Minute an InfraNest.
  • Für CPU, Netzwerk oder Festplattendurchsatz brauchst du ihn nicht — das funktioniert bereits ohne jede Installation. Installiere ihn, wenn du Arbeitsspeicher, Speicherplatz, Systemlast, Laufzeit und eine Warnung erhalten möchtest, sobald der Server komplett aufhört, Daten zu senden.

Den Agent installieren

  1. Wähle Agent auf {server} installieren. Du findest diese Option in der Server-Zeile unter Monitore, im Aktionsmenü des Servers sowie neben jeder Alarmregel, die ausgegraut ist, weil sie den Agenten benötigt — alle drei öffnen dasselbe Fenster. Es gibt nichts auszufüllen: Ein Token wird erstellt, sobald das Fenster geöffnet wird.
Arbeitsspeicher, Speicherplatz und Systemlast mit dem Agent erfassen
  1. Das Token wird einmalig angezeigt. Darunter steht ein fertiger Installationsbefehl mit bereits eingesetztem Token — wähle den Tab für dein System (Ubuntu/Debian, CentOS/RHEL oder Windows) und klicke auf Kopieren.
  2. Aktiviere optional die Option, zusätzlich anzuzeigen, welche Prozesse am meisten Arbeitsspeicher und CPU verbrauchen — der Befehl aktualisiert sich entsprechend. Standardmäßig ist dies deaktiviert: InfraNest speichert ausschließlich den Programmnamen, niemals das, was danach folgt.
  3. Füge den Befehl in ein Terminal auf diesem Server ein und führe ihn aus. Unter Linux als root oder mit sudo, unter Windows PowerShell als Administrator ausführen.
  4. Warte etwa eine Minute und lade die Seite dann neu. Die ausgegrauten Regeln unter Alarmregeln werden verfügbar, und der Tab Metriken zeigt nun Arbeitsspeicher, Speicherplatz und Systemlast an.

Um jederzeit zu prüfen, ob alles funktioniert, öffne den Server und schau dir das Agent-Panel in der Übersicht an:

  • Sendet Daten (grün) — es treffen Messwerte ein.
  • Wartet auf die ersten Daten — gib ihm eine Minute Zeit.
  • Readings refused — der Agent erreicht InfraNest, aber die Uhr des Servers ist falsch eingestellt; das Panel zeigt den Befehl, der das behebt.
  • Läuft nicht, mit zuletzt gehört {time} — der Agent hat früher gemeldet und ist nun gestoppt.

Die Liste Server zeigt denselben Status für alle Server gleichzeitig an, sodass du sie nicht einzeln öffnen musst. Ein gelbes Band über der Liste zeigt an, wie viele Agenten über alle deine Server hinweg gestoppt sind; wähle Review, oder filtere die Liste nach Status, um nur die anzuzeigen, die nicht melden.

NoteFür die vollständige Anleitung — Ubuntu, Debian, die RHEL-Familie und Windows, den Prüfsummenpfad und Fehlerbehebung — siehe die ausführliche Schritt-für-Schritt-Installationsanleitung. Die obigen Schritte sind die Kurzversion.

Ist es sicher, ihn auf meinen Servern laufen zu lassen?

  • Er sendet ausschließlich Daten nach außen. Er öffnet keinen Port und hört auf nichts.
  • Ihm können keine Anweisungen erteilt werden — er ist ein Einweg-Report, kein Fernsteuerungswerkzeug.
  • Er sendet Zahlen, keine Inhalte: wie voll eine Festplatte ist, nicht was darauf liegt. Nur Prozessnamen, niemals vollständige Befehlszeilen.
  • Das Token funktioniert nur für einen Server und nur, um Messwerte für diesen Server zu senden. Es kann nichts anderes lesen oder ändern.
  • Er läuft mit einem eigenen, eingeschränkten Konto, nicht als Administrator.
  • Es ist ein kurzes, einfaches Skript — du kannst es lesen, bevor du es ausführst.

„Nicht zugeordnet“ bei der Festplattenaufschlüsselung verstehen

Die Festplattenkarte listet die größten Ordner auf deiner vollsten Festplatte auf. Manchmal fügt sie eine Zeile wie „15,9 GB nicht zugeordnet“ hinzu — das ist kein Fehler.

Da der Agent mit einem eingeschränkten Konto läuft, sind manche Ordner für ihn gesperrt — /var/lib/docker auf einem Docker-Host ist der übliche Fall, /root ein weiterer. Er kann erkennen, dass sie existieren, aber nicht, was darin liegt, daher teilt InfraNest dir mit:

  1. Wie viel Speicherplatz nicht zugeordnet werden konnte — die Lücke zwischen dem, was die Festplatte als belegt meldet, und dem, was der Agent tatsächlich erfassen konnte.
  2. Welche Ordner er nicht lesen konnte, namentlich, damit du weißt, wo du nachsehen musst.

Solltest du Zugriff gewähren?

Meist nicht. Die meisten verweigerten Zugriffe betreffen kleine, sensible Ordner (/etc/ssl/private, /etc/sudoers.d, /lost+found) — lass diese unangetastet.

Wenn es sich bei dem fehlenden Ordner um einen echten Datenordner handelt und du möchtest, dass er erfasst wird, gib dem Benutzer des Agenten Lese- und Ausführungsrechte für diesen Ordner; der nächste Scan (innerhalb einer Stunde) berücksichtigt ihn dann. Beachte, dass Docker auch Ordner innerhalb von /var/lib/docker schützt, daher reicht das Öffnen des übergeordneten Ordners allein meist nicht aus.

TipSpeziell für Docker führe sudo docker system df auf dem Server aus, um denselben Speicherplatz aufgeschlüsselt nach Images, Containern, Volumes und Build-Cache zu sehen, sowie sudo docker system prune, um ungenutzten Speicher freizugeben. Das ist fast immer die bessere Lösung, als Berechtigungen zu ändern.

Wie oft er meldet

Der Agent nimmt alle 60 Sekunden einen Messwert auf. Wie oft diese Messwerte gespeichert werden, hängt von deinem Plan ab — niedrigere Pläne speichern einen Wert alle paar Minuten, höhere Pläne behalten jeden Messwert. Das musst du nicht konfigurieren: InfraNest teilt dem Agenten die Rate mit, und der Agent passt sich an. Zusätzliche Messwerte gehen nicht in relevanter Weise verloren — sie werden einfach nicht gespeichert.

Deine Alarmregeln benötigen ein Zeitfenster, das lang genug ist, um ein paar Messwerte zu enthalten. Wenn dein Plan nur alle fünf Minuten einen Messwert speichert, benötigt eine Regel eine längere Dauer, um jemals genug Daten zum Auslösen zu haben — InfraNest teilt dir das Minimum mit, wenn du versuchst, eine kürzere zu speichern.

Was passiert, wenn der Server uns nicht erreichen kann?

Es geht nichts verloren. Der Agent behält die Messwerte auf dem Server und sendet sie, sobald die Verbindung wieder besteht, wobei er etwa acht Stunden an Daten vorhält, bevor er die ältesten verwirft.

Um dies direkt vom Server aus zu prüfen, führe aus:

infranest-agent status

Das funktioniert selbst dann, wenn nichts anderes funktioniert, da es InfraNest nicht kontaktiert. Zwei Antworten, die du kennen solltest:

  • „InfraNest rejected this token.“ Das Token wurde in InfraNest gelöscht — erstelle ein neues und führe den Installer erneut aus.
  • „This machine is about 8m ahead of InfraNest.“ Die Uhr ist falsch eingestellt, daher werden Messwerte abgelehnt. Aktiviere die Zeitsynchronisierung mit sudo timedatectl set-ntp true.

Es gibt niemals dein Token aus, daher kannst du es bedenkenlos in ein Support-Ticket einfügen.

Ausschalten

Lösche das Agent-Token im Agent-Panel in der Monitoring-Übersicht des Servers. Der Server wechselt sofort wieder zu den Provider-Metriken, und die Regeln für Arbeitsspeicher, Speicherplatz und Systemlast werden nicht mehr gemessen.

Um das Skript auch von der Maschine zu entfernen:

  • Linux — sudo sh install.sh --uninstall
  • Windows — in PowerShell als Administrator: .\install.ps1 -Uninstall

Benachrichtigt werden, wenn ein Server nichts mehr meldet

  1. Gehe zu Benachrichtigungen (entweder die organisationsweiten Alarmstandards oder den Tab Alarmregeln eines einzelnen Servers).
  2. Aktiviere die Regel dafür, wenn ein Server nichts mehr meldet, unter dem Abschnitt darüber, ob etwas kaputt ist.
  3. Wähle, wie lange die Stille andauern muss, bevor du benachrichtigt wirst.

TipGib ihm lieber ein paar Minuten als nur eine. Der Agent meldet sich etwa einmal pro Minute, daher kann eine Ein-Minuten-Frist fälschlich auslösen. Das kürzeste einstellbare Zeitfenster sind fünf Minuten (fünfzehn bei Plänen, bei denen der Agent alle fünf Minuten meldet) — zehn Minuten sind bei den meisten Plänen eine angenehme Wahl.

Fehlerbehebung

  • Bleibt bei „Wartet auf die ersten Daten“ hängen — gib ihm eine Minute; ändert sich nichts, prüfe, ob der Server InfraNest erreichen kann und ob der Installationsbefehl ohne Fehler ausgeführt wurde.
  • „Readings refused“ — die Uhr des Servers ist nicht synchron; führe den im Panel angezeigten Zeitsynchronisierungsbefehl aus.
  • „Läuft nicht“ — der Agent hat früher funktioniert und ist nun gestoppt; prüfe, ob der Server eingeschaltet ist und Netzwerkzugriff hat, und nutze dann infranest-agent status auf dem Server für Details.

Verwandte Artikel

In Sekunden startklar

Bring deine gesamte Infrastruktur in ein modernes Dashboard.

Kostenloser Plan · Keine Kreditkarte nötig · In Minuten eingerichtet