GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Effektive Überwachung von Netzwerkbandbreite, CPU und Speicher

Hier sind ein paar praktische Tipps für heute, die wahrscheinlich für immer in deiner Waffenkammer bleiben werden.

Als Linux-Systemadministrator ist es manchmal schwierig, sich vorzustellen, was genau ein Leistungsproblem verursacht. Sicher, es ist leicht genug zu sehen, welcher Prozess die CPU mit Tools wie „top“ oder seinem schickeren Bruder htop in Beschlag nimmt. Wenn es darum geht, die langfristige Belastung eines Computers herauszufinden oder zu verstehen, wie viel Speicher und Netzwerkbandbreite verwendet werden, kann dies eine etwas größere Herausforderung sein, wenn Sie die verfügbaren Tools nicht kennen.

CPU- und Speicherüberwachung mit (h)top 

Verwenden Sie die F6-Taste in htop, um nach CPU oder Speicher usw. zu sortieren.

Analyse von CPU, Speicher und Festplatten-E/A über einen gemessenen Zeitraum

Verwenden Sie das vmstat-Tool, um die durchschnittliche CPU-, Arbeitsspeicher- und Festplatten-E/A-Last über einen gemessenen Zeitraum zu analysieren. Es sieht im Vergleich zu htop hässlich aus, aber sobald Sie die Anzeige verstanden haben, kann es sehr effektiv sein, zu verstehen, was mit dem System vor sich geht, außer der Netzwerknutzung. Beachten Sie auch, dass virtualisierte Gastserver möglicherweise nicht die wahren CPU- und E/A-Zahlen liefern, da diese basierend auf den Hypervisor-Einstellungen dynamisch variieren können.

Wie oben ist vmstat für jede Linux-Version fast allgegenwärtig verfügbar. Vmstat akzeptiert normalerweise zwei Argumente:die Abtastzeit und die Anzahl der zu messenden Abtastungen. Also zum Beispiel Laufen 

vmstat 1 100

Erstellt jede Sekunde ein Sample und führt das Sample 100 Mal durch. Standardmäßig zeigt Ihnen vmstat die Ausgabe der CPU-Last, Speicher/Auslagerung und Block-I/O, wenn es seine 100 Samples ausführt, gibt es Ihnen die Durchschnittswerte über die Zeit-Samples für, in diesem Fall 100 Sekunden. Wenn Sie vmstat kontinuierlich ausführen möchten, verwenden Sie 0 als Beispielnummer. Weitere Informationen zur Syntax und Ausgabe von vmstat finden Sie hier (oder verwenden Sie man vmstat).

Schließlich können Sie diese Funktion als textbasierte Alternative in Ihre .bashrc oder in ein Shell-Skript einbauen, damit Sie sie in Intervallen mit dem Befehl at oder mit cron planen oder vielleicht mit einem anderen Skript kombinieren können, um weitere Analysen durchzuführen Zeit.

memcpu() { echo „— Top 10 CPU-Essensprozess —“; ps auxf | sortieren -nr -k 3 | head -10;
echo „— Top 10 Speicherfressprozesse —“; ps auxf | sortieren -nr -k 4 | Kopf -10; }
 

Netzwerkauslastung schnell analysieren

Die Überwachung der Netzwerkauslastung ist wohl genauso wichtig wie Ihre CPU und Ihr Arbeitsspeicher. Die Anzahl der eingebauten Tools, die dies tun, variiert zwischen den Distributionen. Es gibt eine Vielzahl von Tools, die Sie über yum oder apt-get in den jeweiligen Distributionen installieren können. Sie können es mit ntop oder nmon versuchen. Heute schauen wir uns nload an. Obwohl ntop sich selbst als „Top“-Befehl für Netzwerke bezeichnet, ist es ein webbasiertes Tool, das zwar gut ist, aber nicht so einfach in Gang zu bringen ist wie nload. Um nload auszuführen, führen Sie es einfach ohne Argumente aus und es wird die Last auf der aktuellen Netzwerkschnittstelle ausgeben.

Nload tut genau das, was es verspricht. Die historische Analyse macht es einfach zu sehen, wie ausgelastet das Netzwerk ist, leider zeigt Ihnen das nicht, welche Anwendung die Last verursacht, aber es gibt Apps, die auch dort helfen können, wie die ausgezeichnete Nethogs-App. Es sieht genauso aus und funktioniert genauso wie die Anzeige von Prozessen nach Namen und sortiert nach der Reihenfolge, welche Prozesse die meiste Bandbreite verbrauchen.

Fazit und weitere Optionen

Was ich hier gezeigt habe, sind einige großartige, schnelle Analysetools, die Sie aus einem möglicherweise schwer zu diagnostizierenden Problem herausholen. Wenn Sie eine längerfristige Analyse von fast jedem messbaren Aspekt benötigen, sollten Sie nach etwas wie Nagios suchen und es mit rrdtool kombinieren, um historische Trendanalysen grafisch darzustellen. Sehen Sie sich Cacti (rrd graphing) und Munin (ähnlich wie Nagios + rrdtool + Cacti in einem einfachen Paket) an.


Linux
  1. Finden Sie die am häufigsten ausgeführten Prozesse nach höchster Speicher- und CPU-Auslastung in Linux

  2. So finden Sie die am häufigsten ausgeführten Prozesse nach Speicher- und CPU-Auslastung

  3. 16 nützliche Tools zur Bandbreitenüberwachung zur Analyse der Netzwerknutzung in Linux

  4. 24 iostat-, vmstat- und mpstat-Beispiele für die Linux-Leistungsüberwachung

  5. Begrenzen Sie Speicher und CPU mit lxc-execute

So erhöhen Sie Speicher und CPU auf Vagrant Machine

So finden Sie die Top 10 der laufenden Prozesse nach Speicher- und CPU-Auslastung

So installieren Sie die Iftop-Netzwerkbandbreitenüberwachung unter Linux

So finden Sie die am häufigsten ausgeführten Prozesse nach Speicher- und CPU-Auslastung in Linux

Einführung in die Linux-Leistungsüberwachung und -optimierung

Speicherlimit und CPU-Limit im Docker-Container