Serverüberwachung – Die Leistung der Server im Blick
Fast alle Überwachungsverfahren sollen die Funktionsfähigkeit der Server und ihr Antwortverhalten aufrechterhalten. Abhängig von der Verfügbarkeit aller dazu benötigten Komponenten wird die entsprechende Meldung versendet oder der entsprechende Programmaufruf ausgelöst.
Handelt es sich beim Überwachungstool um eine geschlossene Applikation, die vollständig auf einem Rechnersystem, wie etwa einem Großrechner ausgeführt wird, so mag es genügen, die Applikation und gegebenenfalls die angeschlossene Datenbank zu überwachen. Bei verteilten mehrschichtigen Applikationen, die vielleicht auch noch im Internet bereitgestellt werden, ist die Situation weitaus schwieriger. Diese Applikationen beruhen in der Regel auf der korrekten Kooperation mehrerer Softwaresysteme und deren Server. Ausgehend vom Benutzergerät und dem Browser umfasst dies meist einen Internetserver, einen Applikationsserver und schließlich die Datenhaltung in der Datenbank. Hinzu kommen häufig noch Lastverteiler (Load Balancer), Sicherheitssysteme wie etwa Firewalls, Intrusion Detection oder Prevention Systeme und im Backend ein Speichersubsystem. Dabei ist offensichtlich, dass die Monitoring-Tools hierbei weitaus komplexere Abläufe überwachen müssen. Falls die Anwendung virtualisiert ist, kommt auch noch die Virtualisierungsschicht dazu, die überwacht werden muss.
Betrachtet man die Überwachungswerkzeuge aus technischer Hinsicht, so lassen sich verschiedene Tools abgrenzen. Die unterste Stufe stellen dabei die Netzwerkanalyse-Werkzeuge dar. Diese Tools analysieren und überwachen meist lediglich den Netzwerkstrom und liefern Antworten zur Auslastung des Netzwerks und der Netzwerkkarten, Router oder Switches. Ein Beispiel dafür ist der Netzwerkmonitor des Windows Task Manager.
Stattet man die Tools mit mehr Intelligenz aus, so dass sie auch die Protokolle untersuchen und auswerten können, so lässt sich der Netzwerkverkehr den Programmen und damit den Anwendern zuordnen. Damit lassen sich Aussagen treffen, welche Server und Applikationen welchen Datenaufwand nach sich ziehen, wo es Engpässe gibt oder welche Applikationen von welchen Benutzern verwendet werden. Die Analyse der Protokolle ist aber auch die Grundlage für das Traffic-Management, eine Flussoptimierung und den Sicherheitseinrichtungen wie Firewalls.
Eine weitere Klasse der Monitoring-Werkzeuge überwacht gezielt die auf dem Server liegenden Software-Dienste. Dies kann das Betriebssystem mit seinen Prozessen, die Basissoftware wie etwa eine Datenbank oder das Mailsystem, aber auch jegliche Applikation sein. Diese Überwachung reicht von der reinen Prüfung auf die Existenz eines Prozesses bis hin zu dessen Antwortverwalten. Um die Überwachung zu vereinfachen, fassen viele der gängigen Überwachungstools die Ergebnisse aller zu überwachenden Serversysteme in zentralen Managementkonsolen zusammen. Dazu werden häufig eigene Agenten auf den Zielsystemen hinterlegt. Diese greifen dann die Leistungswerte direkt am überwachten Rechner ab und senden sie an ihre zentralen Managementkonsolen. Ganz ohne Agenten geht es durch die Verwendung von SNMP-Traps oder durch WMI (Windows Management Instrumentation).
Dennoch werden damit nur einzelne Serverdienste überwacht. Ein Aussagen über einen vollständigen Geschäftsprozess, der wie oben vermerkt mehrere Server und Netzwerkkomponenten benötigen mag, ist hiermit noch nicht zu treffen. Dies passiert erst dann, wenn alle für einen Geschäftsprozess notwendigen IT-Komponenten zusammengefasst und als Einheit überwacht werden.
Hierbei erlauben die Werkzeuge meist eine Gruppierung dieser Dienste und der Schaffung von Abhängigkeiten. Im End-to-End-Monitoring wird dabei die gesamte Prozesskette, vom Daten-Backend bis zum Benutzer-Frontend einbezogen. Häufig erfolgt diese Überwachung auch über längere Zeiträume. Diese Ergebnisse lassen sich dann in Profilen auswerten und können als Nachweis für die Einhaltung der Service-Vereinbarungen oder aber des Kapazitäts-Managements herangezogen werden.