Freunde, die sich mit Serverwartung befassen, wünschen sich oft eine Plattform zur Überwachung der Serverleistung, die einen Gesamtüberblick bietet, damit sie die Laufdynamik der Server des Unternehmens in Echtzeit erfassen können. Derzeit gibt es auf dem Markt viele Plattformen zur Überwachung der Netzwerkleistung von Drittanbietern, wie Alibaba Cloud, Tencent Cloud, Linode, Vultr und andere VPS-Hosting-Anbieter mit eigenen Diensten zur Überwachung der Serverleistung.
Wenn Sie Ihre eigene Serverüberwachungsplattform erstellen, können Sie die zuvor freigegebenen Tools zur Serverprotokollanalyse ausprobieren: ngxtop und GoAccess, die uns dabei helfen können, Serveranomalien aus der Perspektive der Serverprotokollanalyse zu betrachten. Sie können das Smokeping-Tool auch verwenden, um den Status der Netzwerkleitung des Servers zu überwachen, z. B. herkömmliches Ping, Dig, Echoping, Curl usw.
In diesem Artikel werden zwei hervorragende Serverüberwachungstools vorgestellt: Das eine ist das kostenlose Open-Source-PHP probe-x-prober. Es gibt viele PHP-Sonden im Internet, aber x-Prober eignet sich für „Schönheitsliebhaber“. Das andere ist Netdata, ein Echtzeit-Überwachungstool für die Leistung von Linux-Servern mit einer coolen Benutzeroberfläche und einem schönen Stil. Diese beiden Arten der Überwachung können die Leistung von Betriebs- und Wartungsarbeiten erheblich verbessern.
Weitere Befehle und Überwachungstools zur Serverleistung und Netzwerküberwachung finden Sie hier:
- Zusammenfassung der Linux-Systemüberwachungsbefehle – Master-CPU, Speicher, Festplatten-E/A usw., um Leistungsengpässe zu finden
- Smokeping-Installation und -Konfiguration – kostenloses Open-Source-Tool zur visuellen Master/Slave-Bereitstellung zur Überwachung der Netzwerkleistung
- Tools zur Serverprotokollanalyse: ngxtop und GoAccess – Echtzeitüberwachung und visuelle Verwaltung, um die Ursache von Ausnahmen schnell zu finden
1. Kostenlose Open-Source-PHP-Sonde: x-prober
Webseite:
- Projekt: https://github.com/kmvan/x-prober
- Download: https://api.inn-studio.com/download?id=xprober
- Demo: https://tz.inn-studio.com/
Dies ist eine PHP-Probe, die die Yahei-Probe ersetzen kann. Sie verfügt über eine schöne Benutzeroberfläche, einfache, aber praktische Funktionen und ist für grundlegende Server-Probe-Anforderungen geeignet. (Klicken um zu vergrößern)
Das x-prober-Probe kann Serverstatus, Verkehrsstatistiken, Serverinformationen, PHP-Informationen, PHP-Erweiterungen, Datenbanken, Serverleistungswerte usw. anzeigen.
2. Installation und Verwendung des Linux-Echtzeitüberwachungstools Netdata
Webseite:
- Offizielle Website: https://my-netdata.io/
- Demo: https://my-netdata.io/#demosites
- Startseite: https://github.com/firehol/netdata
2.1 Einführung in die Netdata-Funktion
Netdata ist ein Linux-Server-Leistungsüberwachungstool mit einer sehr coolen Oberfläche, sehr leistungsstarken Funktionen und einer sehr einfachen Installation. Es aktualisiert sich in Echtzeit, lässt sich mit einem Klick installieren, erfordert keine Wartung und zeigt Überwachungsdaten direkt im Browser an. Netdata sammelt Tausende von Indikatoren pro Sekunde, deckt jedoch nur 1 % eines einzelnen CPU-Kerns, eine kleine Speichermenge und überhaupt keine Festplatten-E/A-Lesen und -Schreiben ab. Wie unten gezeigt: (zum Vergrößern anklicken)
Netdata überwacht viele Inhalte, hauptsächlich darunter:
CPU: Auslastung, Interrupts, Softirqs, Frequenz, Gesamt- und CPU-Status pro Kern
Speicher: RAM, Swap- und Kernel-Speichernutzung, KSM (Kernel Same Page Merging), NUMA
Festplatten: Pro Festplatte: E/A, Vorgänge, Rückstand, Auslastung, Speicherplatz, Software-RAID (md)
Netzwerkschnittstellen: Pro Schnittstelle: Bandbreite, Pakete, Fehler, Drops
IPv4-Netzwerk, IPv6-Netzwerk: Bandbreite, Paket, Fehler, Fragment, TCP: Verbindung, Paket, Fehler, Handshake, UDP: Paket, Fehler, Broadcast: Bandbreite, Paket, Multicast: Bandbreite, Paket
netfilter/iptables Linux-Firewall: Verbindungen, Verbindungs-Tracker-Ereignisse, Fehler
NFS-Dateiserver und -Clients: NFS v2, v3, v4: I/O, Caching, Read-Ahead, RPC-Aufrufe
Apache- und Lighttpd-Webserver: Mod-Status (v2.2, v2.4) und Cache-Protokollstatistiken für mehrere Server
Nginx-Webserver: Stub-Status für mehrere Server
Tomcat: Zugriff, Threads, verfügbarer Speicher, Volumes
Webserver-Protokolldateien: Extrahieren Sie Webserver-Leistungsmetriken in Echtzeit und führen Sie mehrere Integritätsprüfungen durch
MySQL-Datenbank: mehrere Server, jeder Server zeigt: Bandbreite, Abfragen/Handler, Sperren, Probleme, TMP-Vorgänge, Verbindungen, Binlog-Metriken, Threads, Innodb-Metriken und mehr
Postgres-Datenbank: mehrere Server, jeder Server zeigt: Statistiken pro Datenbank (Verbindungen, zurückgegebene Lese-/Schreib-Tuple, Transaktionen, Sperren), Backend-Prozesse, Indizes, Tabellen, Vorausschreiben, Hintergrundschreiber und mehr
Redis-Datenbank: mehrere Server, jeder Server zeigt an: Vorgänge, Trefferquote, Speicher, Schlüssel, Client, Slave-Server
CouchDB: Lesen/Schreiben, Anforderungsmethoden, Statuscodes, Aufgaben, Replikation, pro Datenbank usw.
memcached-Datenbank: mehrere Server, jeder Server zeigt: Bandbreite, Verbindungen, Projekte
NSD-Nameserver: Abfragen, Zonen, Protokolle, Abfragetypen, Transporte usw.
PowerDNS: Abfragen, Antworten, Caching, Latenz und mehr
Postfix-E-Mail-Server: Nachrichtenwarteschlange (Eintrag, Größe)
Unterbrechungsfreie Stromversorgungen NUT und APC: Last, Kapazität, Batteriespannung, Temperatur, Netzanzeigen, Ausgangsanzeigen
PHP-FPM: mehrere Instanzen, die jeweils Verbindungen, Anfragen und Leistung melden
smartd: Festplatten-S.M.A.R.T.-Wert
2.2 Netdata-Installationsmethode
Alle Linux-Systeme können die folgende Methode verwenden, um Netdata mit einem Klick zu installieren (keine Notwendigkeit, sudo zu verwenden):
# 基础安装 bash <(curl -Ss https://my-netdata.io/kickstart.sh) # 或者 # 安装所有的组件 bash <(curl -Ss https://my-netdata.io/kickstart.sh) all
Die Verzeichnisstruktur von Netdata ist wie folgt:
– der Daemon unter /usr/sbin/netdata
– Konfigurationsdateien in /etc/netdata
<x2 > – Webdateien in /usr/share/netdata
– Plugins < x2> in /usr/libexec/netdata
– Cache-Dateien in /var/cache/netdata
< x2> – Datenbankdateien in /var/lib/netdata
– Protokolldateien <x2 > in /var/log/netdata
– PID-Datei unter /var /run/netdata.pid
– Logrotate-Datei unter /etc/logrotate.d/netdata
Wie nachfolgend dargestellt:
Die folgende Eingabeaufforderung zeigt an, dass Netdata erfolgreich installiert wurde.
2.3 Netdata-Nutzungsvorgänge
Verwenden Sie nach der Installation die IP:19999. Es ist ersichtlich, dass die Seite sehr intuitiv ist. Sie können auch schnell auf die entsprechenden Indikatoren klicken Schau es dir an. (Klicken um zu vergrößern)
Alle Überwachungsdaten werden in Echtzeit aktualisiert. Sie können auch mit der Maus klicken, um Details anzuzeigen.
Netdata verfügt über eine Import- und Exportfunktion. Sie können Überwachungsdaten für einen bestimmten Zeitraum exportieren und auch Backup-Daten importieren.
Wenn Sie mehrere Maschinen installiert haben und über einen Browser darauf zugreifen möchten, klicken Sie oben links auf my-netdata. Klicken Sie dann auf das Symbol mit den drei vertikalen Balken.
Notieren Sie sich die Registrierungs-ID, und wenn Sie nach Hause kommen, geben Sie jede Registrierungs-ID zu Hause in Ihren Browser ein und fügen Sie sie hinzu.
3. Zusammenfassung
Das größte Problem bei der Netdata-Überwachung ist wahrscheinlich das Sprachproblem. Derzeit ist die offizielle Website nur auf Englisch verfügbar, und es gibt keine anderen Sprachen. Wenn Sie das Gefühl haben, dass das Englische nicht gut aussieht, können Sie es selbst übersetzen in diesem Verzeichnis abgelegt.
Die X-Prober-Sonde ähnelt in ihrer Funktion in gewisser Weise der Yahei-Sonde. Der Hauptvorteil besteht darin, dass sie viel schöner ist und als Ersatz für die Sonde verwendet werden kann. Netdata kann zur Serverüberwachung auf Unternehmensebene verwendet werden, ist jedoch für den persönlichen Gebrauch etwas „verschwendet“.