Wie erhöht die metrische Überwachung die Betriebszeit von Servern?

Einführung

Jeder verachtet es, wenn er darauf warten muss, dass eine Anwendung geladen wird - oder wenn eine Anwendung nicht geladen werden kann. Und wenn dies bei Ihrer Anwendung passiert, verlieren Sie nicht nur Geschäfte, sondern auch den Wert Ihrer Marke. Die meisten Anwendungen sind heute online verfügbar. Folglich spielen Server eine wichtige Rolle bei der Aufrechterhaltung des Betriebs von Anwendungen.

Die Serverleistung steht in direktem Zusammenhang mit der Anwendungsleistung. Folglich ist die Überwachung und Verbesserung der Serverleistung von entscheidender Bedeutung. Es gibt verschiedene Aspekte der Serverleistung. In diesem Beitrag geht es um verschiedene Metriken, die bei der Analyse der Serverleistung helfen, und darum, wie wir sie verbessern können. Dann werden wir darüber sprechen, wie wichtig die Überwachung der Serverleistung ist und wie man damit anfängt.

Server-Leistung

Ein Maß für die Leistung eines Servers wird im Allgemeinen als Serverleistung bezeichnet. Doch was bedeutet "gut"? Jeder Server wird für einen bestimmten Zweck erstellt, eingerichtet und verwendet. So dienen Mailserver beispielsweise der Verwaltung und Verteilung von E-Mails, während Datenbankserver für die Speicherung, Verarbeitung und Interaktion mit Daten zuständig sind usw. Wenn ein Server den angeforderten Dienst zur gewünschten Zeit bereitstellt, wird er als effektiv arbeitend bezeichnet.

Bei der Messung der Serverleistung werden verschiedene Parameter kombiniert. Bevor Sie sich ein Urteil über die Leistung eines Servers bilden können, müssen Sie zunächst verschiedene Leistungskennzahlen des Servers messen. Betrachten wir nun einige der wichtigsten Leistungskennzahlen eines Servers und erörtern wir, wie sie verbessert werden können.

Was sind Metriken, Überwachung und Warnmeldungen?

Die Grundlage eines Überwachungssystems besteht aus den miteinander verknüpften Konzepten von Metriken, Überwachung und Alarmierung. Sie können Ihnen dabei helfen, Nutzungs- oder Verhaltenstrends und die Auswirkungen Ihrer Änderungen zu verstehen, indem sie Ihnen Einblick in den Zustand Ihrer Systeme geben. Diese Systeme können einen Bediener warnen, wenn die Metriken außerhalb der erwarteten Bereiche liegen, und können dabei helfen, Informationen zu finden, um mögliche Ursachen zu ermitteln.

Warum müssen wir Metriken sammeln, und was sind sie?

Metriken sind die unbearbeiteten Messungen des Ressourcenverbrauchs oder der Aktivität, die über Ihre Systeme hinweg gesehen und gesammelt werden können. Dabei kann es sich um vom Betriebssystem bereitgestellte Statistiken auf niedriger Ebene oder um Daten auf höherer Ebene handeln, die mit der genauen Funktionalität oder Aufgabe einer Komponente verknüpft sind, z. B. erfüllte Anfragen pro Sekunde oder die Teilnahme an einem Pool von Webservern. Andere Metriken werden als Rate angegeben, die die "Auslastung" einer Komponente widerspiegelt. Einige Metriken werden im Verhältnis zur Gesamtkapazität dargestellt.

Die Metriken, die Ihr Betriebssystem bereits zur Verfügung gestellt hat, um die zugrunde liegenden physischen Ressourcen widerzuspiegeln, sind häufig die einfachsten, mit denen man beginnen kann. Festplattenspeicher, CPU-Auslastung, Swap-Nutzung und andere Statistiken sind bereits verfügbar, haben einen unmittelbaren Wert und können mit wenig Aufwand an ein Überwachungssystem gesendet werden. Zahlreiche Webserver, Datenbankserver und andere Softwarekomponenten verfügen ebenfalls über unabhängige Metriken, die weitergeleitet werden können.

Möglicherweise müssen Sie Code oder Schnittstellen zu anderen Komponenten, insbesondere zu Ihren Anwendungen, hinzufügen, um die für Sie wichtigen Metriken bereitzustellen. Das Hinzufügen von Instrumenten zu Ihren Diensten ist eine andere Bezeichnung für das Sammeln und Bereitstellen von Metriken.

Metriken sind hilfreich, weil sie Aufschluss über den Betrieb und den Zustand Ihrer Systeme geben, insbesondere wenn sie gemeinsam betrachtet werden. Sie sind die wesentlichen Komponenten, die Ihr Überwachungssystem verwendet, um ein umfassendes Bild Ihrer Umgebung zu vermitteln, Reaktionen auf Veränderungen zu automatisieren und Personen bei Bedarf zu benachrichtigen. Metriken sind die grundlegenden Größen, die verwendet werden, um historische Muster zu analysieren, verschiedene Variablen zu vergleichen und Veränderungen bei Leistung, Verbrauch oder Fehlerquoten zu verfolgen.

Server-Leistungsmetriken

Durchsatz

Die Anzahl der Anfragen, die ein Server in einem bestimmten Zeitraum bearbeiten kann, wird als Durchsatz bezeichnet. Bei der Berechnung des Durchsatzes wird in der Regel eine Sekunde als Zeiteinheit verwendet. Je nach Anwendungsfall kann sich dies jedoch ändern. Der Durchsatz eines Servers ist z. B. 100, wenn er 100 Anfragen in einer Sekunde bearbeitet. Es kann jedoch vorkommen, dass er nicht in der Lage ist, den Durchsatz jede Sekunde zu ermitteln. In diesem Fall können Sie den durchschnittlichen Durchsatz verwenden. Das Verhältnis der Gesamtzahl der bearbeiteten Anfragen über eine bestimmte Zeit ist als durchschnittlicher Durchsatz bekannt.

Der durchschnittliche Durchsatz würde 30.000 Anfragen/10 Minuten betragen, oder 50 Anfragen pro Sekunde, wenn 30.000 Anfragen in 10 Minuten bearbeitet werden.

Durch eine Verringerung der Latenzzeit kann der Durchsatz verbessert werden. Die Netzwerkverzögerung ist eine der häufigsten Arten von Latenz, die den Durchsatz verringert. Es wäre hilfreich, wenn Sie die Ursache für die hohe Verzögerung untersuchen würden. Hardware, Speicher, Routing usw. könnten alle beteiligt sein. Sobald das Problem, das die übermäßige Verzögerung verursacht, behoben ist, wird der Durchsatz natürlich steigen.

CPU-Nutzung

 Was bedeutet die Server-CPU-Auslastung?

Das System hat eine Aufgabe für alles, was auf dem Server geschieht. Diese Aufgabe ist in Prozesse unterteilt, die der Server ausführt. Die verschiedenen Prozesse können unterschiedlich komplex sein und unterschiedliche Fertigstellungszeiten haben. Folglich benötigt die CPU eine gewisse Zeit, um die Aufgabe zu erledigen. Mit anderen Worten, der Vorgang wird über die CPU abgewickelt. Der prozentuale Anteil der Zeit, den die CPU für die Ausführung von Aufgaben benötigt, wird als CPU-Nutzung bezeichnet.

Die CPU-Auslastung ist die Zeitspanne, in der die CPU in Gebrauch ist. In der Regel wird der CPU-Verbrauch als Prozentsatz berechnet. Folglich kann der CPU-Verbrauch als der Anteil der Zeit beschrieben werden, in der die CPU zur Erfüllung ihrer Aufgaben eingesetzt wird.

Die folgende Liste enthält einige typische Ursachen für eine übermäßige CPU-Auslastung:

Prozesse, die viel CPU-Leistung benötigen

Einige Programme benötigen eine hohe CPU-Leistung. Der CPU-Verbrauch wird zweifellos steigen, wenn Sie versuchen, ein High-End-Videospiel auf einem PC mit schlechten Spezifikationen auszuführen. In ähnlicher Weise können mehrere Prozesse viel CPU-Leistung benötigen, um zu funktionieren. Eine der Ursachen könnte einer dieser Prozesse oder eine Gruppe von Prozessen sein, die zusammen eine hohe CPU-Leistung benötigen. Ein hoher CPU-Verbrauch auf Servern kann durch die Ausführung mehrerer Dienste zur Aufrechterhaltung des Serverbetriebs, Simulationen usw. entstehen.

Hintergrundoperationen

Systemprozesse und Anwendungsprozesse sind die beiden Hauptbereiche der Prozesse. Die Prozesse, die erforderlich sind, um Ihr System am Laufen zu halten, werden als Systemprozesse bezeichnet. Anwendungsprozesse sind diejenigen, die Sie für ein bestimmtes Ziel einsetzen. Diese Prozesse verbrauchen CPU-Ressourcen, wenn sie im Hintergrund weiterlaufen.

Auch nach dem Schließen des Anwendungsfensters laufen zahlreiche Anwendungsprozesse im Hintergrund weiter. Auf einem Server ist dies zwar weniger wahrscheinlich, da sie regelmäßig gewartet und bereinigt werden, um sicherzustellen, dass sie nur die benötigten Prozesse enthalten, aber es ist dennoch denkbar.

Malware

Malware (bösartige Software) ist ein Begriff für Programme, die von bösen Akteuren verwendet werden, um Ihr System anzugreifen oder unbefugte Aktionen durchzuführen. Malware verbraucht zunächst nicht viele CPU-Ressourcen, um sich zu verstecken, aber wenn sie anfängt, bösartig zu agieren, verbraucht sie eine Menge CPU. Laut dem Vorfall, den ich gesehen habe, begann die Malware einen Tag, nachdem sie eine Woche zuvor in den Server eingeschleust worden war, damit, alle sensiblen Daten vom Server in den Cloud-Speicher zu verschieben. Daher verbrauchte diese Malware nicht viel CPU-Leistung, während sie sich selbst konfigurierte und wichtige Daten ausfindig machte. Sobald sie jedoch alles gefunden hatte, was sie benötigte, verursachte die Datenübertragung einen erheblichen Anstieg des CPU-Verbrauchs.

Im Folgenden werden einige typische Techniken zur Optimierung der CPU-Nutzung beschrieben:
  • Starten Sie den Server erneut. Dies beendet den Großteil der sinnlosen Prozesse.
  • Finden Sie nicht benötigte Start- und Hintergrundprozesse, und halten Sie sie an oder deaktivieren Sie sie.
  • Schützen Sie sich vor Malware.

Warum sollten Sie die CPU-Auslastung Ihres Servers überwachen?

Zu den Aufgaben auf hoher Ebene, die ein Server ausführen muss, gehören Aufgaben des Benutzers und des Systems. Wenn ein Benutzer einen Dienst oder Daten vom Server anfordert, ist dies die Aufgabe des Benutzers. Nehmen wir an, Sie verwenden YouTube zur Suche. Die Videos, die mit Ihrer Suche in Zusammenhang stehen, müssen vom YouTube-Server abgerufen werden, der dann als Antwort auf Ihre Anfrage Daten bereitstellen muss. Bei dieser Datenübertragung wird CPU-Zeit verbraucht.

Die Aufgaben eines Servers gehen über die bloße Bearbeitung von Benutzeranfragen hinaus. Das Betriebssystem und die Webdienste werden auf seiner CPU ausgeführt. Server können jedoch auch zur Ausführung einiger Skripte verwendet werden, die Daten verarbeiten. Die Ausführung von Ansible-Playbooks ist ein typisches Beispiel dafür. Diese Playbooks können Aktionen ausführen, auch wenn der Benutzer nicht anwesend ist.

Warum sollten Sie die Speichernutzung des Servers überwachen?

Die Speichernutzung ist eine weitere wichtige und nützliche Kennzahl für die Serverbetriebszeit.

Denken Sie daran, dass, wenn die Speichernutzung des Servers aus irgendeinem Grund ansteigt und Sie dies nicht bemerken, der Server möglicherweise nicht mehr funktioniert und die Dienste eingestellt werden.

Schlussfolgerung

Die Einrichtung und Verwaltung einer Produktionsinfrastruktur erfordert die Erfassung von Metriken, Überwachungstools und die Konfiguration von Alarmen. Zu wissen, was in Ihren Systemen vor sich geht, welche Ressourcen Aufmerksamkeit erfordern und was zu Langsamkeit oder Ausfällen führt, ist eine wichtige Information. Auch wenn die Entwicklung und Implementierung eines Überwachungssystems eine Herausforderung sein kann, ist es eine Investition, die Ihrem Team helfen kann, Prioritäten zu setzen, die Kontrolle an ein automatisiertes System zu übergeben und zu verstehen, wie sich Ihre Infrastruktur und Software auf Ihre Stabilität und Leistung auswirken.

Xitoring bietet alle Arten von Lösungen zur Überwachung von Metriken auf Linux- und Windows-Servern mit einem darauf installierten leichtgewichtigen Agenten an, den Sie für immer kostenlos testen können. Sie können sich registrieren hier

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert