Die Beherrschung von Systemüberwachungstools für Ubuntu Server ist entscheidend für optimale Leistung, die Diagnose von Problemen und die Aufrechterhaltung der Systemzuverlässigkeit. In diesem Tutorial erkunden wir die besten Systemüberwachungstools für Ubuntu-Server, darunter Echtzeit-Ressourcenüberwachung, Festplatten-E/A, Netzwerkaktivität und Server-Dashboards.
Vorheriger Artikel:
01. Einführung in Ubuntu Server – SysOSX: AI & Cloud
02. So richten Sie Ihren ersten Ubuntu-Server ein: Ein Leitfaden für Einsteiger – SysOSX: AI & Cloud
03.Die Linux-Befehlszeile für Ubuntu Server beherrschen – SysOSX: AI & Cloud
05. Netzwerkgrundlagen für Ubuntu Server: Ein umfassender Leitfaden – SysOSX: AI & Cloud
07.Patchen und Aktualisieren von Ubuntu Server: Ein umfassender Leitfaden – SysOSX: AI & Cloud
08. Ihren Ubuntu-Server sichern: Praktische Schritte zur Härtung und zum Schutz – SysOSX: AI & Cloud
09. Überwachung und Protokollierung auf dem Ubuntu-Server
Verwenden von htop und top für die Echtzeit-Ressourcenüberwachung
Einführung in htop und top
Beide htop und top sind unverzichtbare Befehlszeilentools zur Überwachung von Systemressourcen in Echtzeit. Sie zeigen Informationen wie CPU-Auslastung, Speicherverbrauch und laufende Prozesse an.
Installieren und Ausführen von htop (es ist standardmäßig installiert)
Zum Installieren von htop, führen Sie Folgendes aus:
sudo apt update
sudo apt install htop
Zum Starten von htop, geben Sie einfach Folgendes ein:
htop
Hauptfunktionen und Anwendungsszenarien für htop
htop ist ideal für:
- Identifizieren ressourcenintensiver Prozesse: Sie können Prozesse nach CPU- oder Speicherauslastung sortieren, um Ressourcenfresser schnell zu finden.
- Beenden von Prozessen: Verwenden Sie
F9, um nicht reagierende oder problematische Prozesse direkt über diehtop-Oberfläche zu beenden. - Überwachen von Threads: Erweitern Sie Prozesse, um einzelne Threads und ihre Ressourcennutzung anzuzeigen.
- Anpassen von Spalten: Drücken Sie
F2, um die Anzeige zu konfigurieren und Metriken wie Festplatten-E/A oder Netzwerkauslastung hinzuzufügen oder zu entfernen.
Verwenden von top
top ist ein einfacheres Tool, das auf Ubuntu-Servern vorinstalliert ist. Um es auszuführen:
top
Wichtige Befehle für top:
- Drücken Sie
Shift + p, um nach CPU-Auslastung zu sortieren. - Drücken Sie
Shift + m, um nach Speicherauslastung zu sortieren. - Drücken Sie
q, um das Programm zu beenden.
Installieren und Konfigurieren von sysstat für Leistungsmetriken
Was ist sysstat?
sysstat ist eine Sammlung von Tools zum Erfassen und Melden von Systemleistungsmetriken im Laufe der Zeit. Sie enthält Dienstprogramme wie iostat, vmstat, und sar.
Installieren von sysstat
Zum Installieren von sysstat:
sudo apt update
sudo apt install sysstat
Konfigurieren von sysstat
Aktivieren Sie die Datenerfassung, indem Sie die Konfigurationsdatei bearbeiten:
sudo nano /etc/default/sysstat
Ändern Sie ENABLED="false" in ENABLED="true". Speichern und beenden Sie, und starten Sie den Dienst neu:
sudo systemctl restart sysstat
Verwenden von sysstat -Tools
iostat: Überwachen der Festplatten-E/A-Leistung.iostat

vmstat: Überwachen von Speicher-, CPU- und E/A-Statistiken.vmstat

sar: Erstellen historischer Berichte über Systemaktivitäten.sar -u 5 10 # CPU usage every 5 seconds for 10 intervals

Überwachung von Festplatten-E/A und Netzwerkaktivität
Überwachung der Festplatten-E/A mit iotop
Verwenden Sie Tools wie iostat (aus sysstat) oder iotop für die Echtzeitüberwachung der Festplatten-E/A.
Zum Installieren von iotop:
sudo apt update
sudo apt install iotop
Führen Sie iotop aus:
sudo iotop
Einige Benutzer erhalten jedoch möglicherweise den folgenden Fehler beim Ausführen von iotop:
CONFIG_TASK_DELAY_ACCT not enabled in kernel, cannot determine SWAPIN and IO %
Beheben des iotop -Fehlers
Dieses Problem tritt auf, weil dem Kernel die Funktion CONFIG_TASK_DELAY_ACCT fehlt, die für iotop erforderlich ist, um SWAPIN- und IO-Prozentsätze anzuzeigen. Glücklicherweise kann dies durch Aktualisieren der GRUB-Konfiguration behoben werden.
Schritte zur Behebung des Fehlers
- Bearbeiten Sie die GRUB-Konfigurationsdatei:
sudo nano /etc/default/grub
- Fügen Sie die Option
delayacctzum EintragGRUB_CMDLINE_LINUX_DEFAULThinzu. Wenn die Zeile anfangs leer ist (GRUB_CMDLINE_LINUX_DEFAULT=""), aktualisieren Sie sie wie folgt:GRUB_CMDLINE_LINUX_DEFAULT="delayacct"Wenn die Zeile bereits andere Optionen enthält, hängen Siedelayacctan die vorhandenen Optionen an, durch ein Leerzeichen getrennt. Zum Beispiel:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash delayacct"
- Aktualisieren Sie GRUB, um die Änderungen anzuwenden:
sudo update-grub
- Starten Sie den Server neu:
sudo reboot
Nach dem Neustart sollte der Fehler behoben sein und iotop ordnungsgemäß funktionieren.
Verwenden von `iotop
Sobald das Problem behoben ist, können Sie iotop zur Überwachung der Festplatten-E/A ausführen:
sudo iotop
Möglichkeiten mit iotop
- Identifizieren von Prozessen, die eine hohe Festplatten-E/A verursachen.
- Überwachen von Lese-/Schreibvorgängen in Echtzeit.
- Sortieren von Prozessen nach Festplattennutzung.
Überwachung der Netzwerkaktivität
Verwenden von iftop
Zum Installieren von iftop:
sudo apt update
sudo apt install iftop
Führen Sie iftop aus:
sudo iftop
Verwenden von nload
Zum Installieren von nload:
sudo apt update
sudo apt install nload
Führen Sie nload aus:
nload
Einrichten von Server-Dashboards mit Cockpit
Was ist Cockpit?
Cockpit ist ein webbasiertes grafisches Dashboard zur Überwachung und Verwaltung von Servern. Es bietet Echtzeiteinblicke in CPU, Speicher, Festplattennutzung und Netzwerkaktivität.
Installieren von Cockpit
So installieren Sie Cockpit:
sudo apt update
sudo apt install cockpit
Zugreifen auf Cockpit
Starten Sie den Cockpit-Dienst:
sudo systemctl start cockpit.socket
sudo systemctl enable cockpit.socket
Rufen Sie das Dashboard über folgende Adresse auf:
https://<your-server-ip>:9090
Funktionen von Cockpit
- Visuelles Überwachen der Systemleistung.
- Verwalten von Diensten, Protokollen und Benutzerkonten.
- Anzeigen von Festplattennutzung und Netzwerkaktivität.
Weitere empfohlene Überwachungstools
Während Tools wie htop, sysstat, und Cockpit für die meisten Anforderungen an die Serverüberwachung ausgezeichnet sind, gibt es andere erweiterte Tools, die tiefere Einblicke und eine bessere Visualisierung für komplexe Umgebungen bieten. Im Folgenden finden Sie einige weitere Überwachungstools, die Sie in Betracht ziehen können:
Prometheus und Grafana
Prometheus
Prometheus ist ein Open-Source-Toolkit für Überwachung und Alarmierung, das auf Zuverlässigkeit und Skalierbarkeit ausgelegt ist. Es wird häufig in Cloud-nativen Umgebungen eingesetzt und eignet sich besonders gut für die Überwachung verteilter Systeme und Microservices.
Hauptfunktionen:
- Zeitreihendatenbank: Speichert Metriken effizient mit Zeitstempeln.
- Leistungsstarke Abfragesprache (
PromQL) zur Analyse von Metriken. - Alarmsystem: Integriert mit Tools wie Alertmanager für Benachrichtigungen.
- Pull-basierte Architektur: Prometheus ruft Metriken aktiv von Zielen ab.
Anwendungsfälle:
- Überwachen von CPU-, Speicher- und Festplattennutzung auf mehreren Servern.
- Verfolgen anwendungsspezifischer Metriken (z. B. HTTP-Anfragelatenz, Fehlerraten).
- Erstellen von Warnungen bei ungewöhnlichen Metriken oder Systemausfällen.
Installationsanleitung:
So installieren Sie Prometheus unter Ubuntu:
sudo apt update
wget https://github.com/prometheus/prometheus/releases/download/v2.44.0/prometheus-2.44.0.linux-amd64.tar.gz
tar xvf prometheus-2.44.0.linux-amd64.tar.gz
cd prometheus-2.44.0.linux-amd64
./prometheus
Rufen Sie Prometheus über folgende Adresse auf:
http://<your-server-ip>:9090
Bitte beachten Sie, dass sowohl Prometheus als auch Cockpit standardmäßig Port 9090 verwenden; wenn Sie beide gleichzeitig verwenden, sollten Sie den Standardport ändern:
Beheben von Portkonflikten zwischen Prometheus und Cockpit
Option 1: Prometheus-Port ändern
Sie können Prometheus so konfigurieren, dass es einen anderen Port verwendet, indem Sie seine Konfigurationsdatei ändern.
- Öffnen Sie die Prometheus-Konfigurationsdatei:
nano prometheus.yml
- Fügen Sie das Flag
--web.listen-addressim Startbefehl oder in der Dienstdatei von Prometheus hinzu oder ändern Sie es, um einen anderen Port anzugeben (z. B.9091):
--web.listen-address=:9091
- Starten Sie Prometheus neu, um die Änderungen anzuwenden:
sudo systemctl restart prometheus
- Rufen Sie Prometheus über den neuen Port auf:
http://<your-server-ip>:9091
Option 2: Cockpit-Port ändern
Der Standardport von Cockpit kann ebenfalls geändert werden, wenn Sie Prometheus lieber auf Port 9090 belassen möchten.
- Erstellen Sie eine benutzerdefinierte Konfigurationsdatei für Cockpit:
sudo nano /lib/systemd/system/cockpit.socket
- Fügen Sie die folgenden Zeilen hinzu, um einen neuen Port anzugeben (z. B.
9092):ListenStream=9092 - Starten Sie den Cockpit-Dienst neu:
systemctl daemon-reload
systemctl restart cockpit.socket
- Rufen Sie Cockpit über den neuen Port auf:
https://<your-server-ip>:9092
Option 3: Verwenden eines Reverse-Proxys
Wenn das Ändern der Ports nicht ideal ist, können Sie einen Reverse-Proxy verwenden (z. B. Nginx oder Apache), um beide Dienste unterschiedlichen URLs zuzuordnen und dabei ihre Standardports beizubehalten.
Zum Beispiel:
- Prometheus:
http://<your-server-ip>/prometheus
- Cockpit:
http://<your-server-ip>/cockpit
Empfehlung
Wenn Sie beide Tools häufig verwenden:
Dokumentieren Sie die Portänderungen für spätere Referenz oder für andere Administratoren.
Ändern Sie Prometheus auf Port 9091 , da häufiger über den Standardport auf Cockpit zugegriffen wird 9090.
Grafana
Grafana ist eine leistungsstarke Visualisierungsplattform, die sich nahtlos in Prometheus integrieren lässt. Sie können damit dynamische Dashboards erstellen, um Metriken und Trends zu visualisieren.
Hauptfunktionen:
- Unterstützung mehrerer Quellen: Funktioniert mit Prometheus, Elasticsearch, MySQL und mehr.
- Benutzerdefinierte Dashboards: Erstellen Sie interaktive Diagramme, Heatmaps und Tabellen.
- Alarmierung: Richten Sie Warnungen basierend auf Schwellenwerten für wichtige Metriken ein.
- Freigabe: Teilen Sie Dashboards ganz einfach mit Teams.
Anwendungsfälle:
- Visualisieren von Serverleistungsmetriken, die von Prometheus erfasst wurden.
- Überwachen von Trends im Zeitverlauf für eine bessere Kapazitätsplanung.
- Anzeigen von Daten aus mehreren Quellen in einem einheitlichen Dashboard.
Installationsanleitung:
So installieren Sie Grafana unter Ubuntu:
sudo apt update
sudo apt install -y software-properties-common
sudo wget -q -O - https://packages.grafana.com/gpg.key | gpg --dearmor | sudo tee /usr/share/keyrings/grafana.gpg > /dev/null
sudo echo "deb [signed-by=/usr/share/keyrings/grafana.gpg] https://packages.grafana.com/oss/deb stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
sudo apt update
sudo apt install grafana
sudo systemctl start grafana-server
sudo systemctl enable grafana-server
sudo systemctl status grafana-server
Rufen Sie Grafana über folgende Adresse auf:
http://<your-server-ip>:3000
Nagios
Nagios ist eines der beliebtesten Tools zur Überwachung von Infrastrukturen. Es bietet umfassende Überwachung und Alarmierung für Server, Netzwerkgeräte und Anwendungen. Es ist hochgradig anpassbar und unterstützt Plugins für erweiterte Funktionen.
Hauptfunktionen:
- Überwachen des Serverzustands: Verfolgen von CPU-, Speicher- und Festplattennutzung und mehr.
- Netzwerküberwachung: Erkennen von Problemen mit Routern, Switches und Firewalls.
- Alarmierung: Senden von Benachrichtigungen per E-Mail, SMS oder Integrationen mit Slack.
- Umfangreiche Plugin-Bibliothek: Überwachen von Datenbanken, Webservern und anderen Diensten.
Anwendungsfälle:
- Überwachen kritischer Server und Anwendungen in Produktionsumgebungen.
- Erhalten von Warnungen bei knappem Festplattenspeicher oder hoher CPU-Auslastung.
- Überwachen von Betriebszeit und Verfügbarkeit von Netzwerkgeräten.
Installationsanleitung:
So installieren Sie Nagios unter Ubuntu:
sudo apt install nagios4 nagios-plugins
sudo a2enmod rewrite cgi
systemctl restart apache2
sudo systemctl status nagios4
sudo systemctl enable nagios4
sudo systemctl start nagios4
Nagios erfordert zusätzliche Konfiguration, um Überwachungsziele einzurichten. Ausführliche Informationen zur Konfiguration finden Sie in der Nagios-Dokumentation.
Netdata: Echtzeit-Tool zur Systemüberwachung
Netdata ist ein leichtgewichtiges Echtzeit-Überwachungstool, das detaillierte Einblicke in die Systemleistung bietet. Es ist einfach zu installieren und verfügt über eine ansprechende Weboberfläche zur Visualisierung von Metriken.
Schritt 1: Systempakete aktualisieren
Stellen Sie sicher, dass Ihr System auf dem neuesten Stand ist, indem Sie die folgenden Befehle im Terminal ausführen:
sudo apt update
sudo apt upgrade
Schritt 2: Netdata installieren
Installieren Sie Netdata aus dem Standard-Ubuntu-Repository:
sudo apt install netdata
Schritt 3: Netdata konfigurieren
Bearbeiten Sie die Netdata-Konfigurationsdatei, um Fernzugriff zu ermöglichen:
sudo nano /etc/netdata/netdata.conf
Suchen Sie das Feld bind socket to IP und ersetzen Sie 127.0.0.1 durch die IP-Adresse Ihres Servers:
[global]
bind socket to IP = <your-server-ip>
Speichern Sie die Datei und starten Sie den Netdata-Dienst neu:
sudo systemctl restart netdata
Schritt 4: Firewall konfigurieren
Erlauben Sie den Zugriff auf den Standardport von Netdata (19999) und aktivieren Sie die Firewall:
sudo ufw allow 19999
sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw status
Schritt 5: Auf die Netdata-Weboberfläche zugreifen
Öffnen Sie Ihren Webbrowser und rufen Sie folgende Adresse auf:
http://<your-server-ip>:19999

Vergleich der Tools
| Tool | Am besten geeignet für | Benutzerfreundlichkeit | Visualisierung | Alarmierung |
|---|---|---|---|---|
| Prometheus | Erfassung von Metriken in großem Maßstab | Mittel | Begrenzt | Ja |
| Grafana | Erweiterte Dashboards | Einfach | Ausgezeichnet | Ja |
| Nagios | Infrastrukturüberwachung | Mittel | Grundlegend | Ja |
| Netdata | Leichtgewichtige Echtzeitüberwachung | Einfach | Ausgezeichnet | Ja |
Fazit
Die Überwachung Ihres Ubuntu-Servers ist entscheidend für die Aufrechterhaltung der Leistung, die Diagnose von Problemen und die Vermeidung von Ausfallzeiten. Tools wie htop, top, sysstat, Cockpit und andere bieten Administratoren die Möglichkeit, Ressourcen effektiv zu überwachen. Ob Sie Befehlszeilentools oder grafische Dashboards bevorzugen – diese Anleitung behandelt alles, was Sie für den Aufbau eines robusten Überwachungssystems benötigen.
Als Nächstes: Zentralisierte Protokollierung und Überwachung
Im nächsten Artikel konzentrieren wir uns auf zentralisierte Protokollierung und Überwachung , um die Serververwaltung und die Leistungsverfolgung weiter zu optimieren. Zu den Themen gehören:
- Einrichten von rsyslog oder syslog-ng für die zentrale Protokollierung.
- Weiterleiten von Protokollen an einen Remote-Protokollserver für bessere Organisation und Analyse.
- Integrieren Ihres Ubuntu-Servers in robuste Überwachungsplattformen wie Nagios, Zabbix, oder Prometheus , um tiefere Einblicke in den Systemzustand und die Leistung zu gewinnen.
Bleiben Sie dran und erfahren Sie, wie Sie Ihre Protokollinfrastruktur zentralisieren und Überwachungstools nutzen, um den Serverbetrieb effektiv zu optimieren!










2 thoughts on “10. System Monitoring Tools for Ubuntu Server: A Comprehensive Guide”