Überwachung mit Hyperic

Überwachung von komplexen IT Strukturen und Applikationen ist bei unserer Arbeit ein absolutes Muss.

Wenn es vor ein paar Jahren noch ausreichte zu wissen, ob ein Server an ist oder nicht, sind die heutigen Anforderungen immens gestiegen.

Nehmen wir das Beispiel einer typischen Mediendatenbank: Hier müsste man eigentlich zu jeder Zeit wissen, ob der eigentliche Server läuft und natürlich über das Netzwerk erreichbar ist. Nur, was heißt “laufen”? Meistens reicht dies nicht aus. Sobald die Applikation z.B. zu langsam wird, weil bestimmte Ressourcen nicht zur Verfügung stehen oder ausgebaut werden müssten, häufen sich Beschwerden von Benutzern. Diese Anfragen laufen bei der IT auf und müssen bearbeitet werden. Das heißt, der Admnistrator wird auf der einen Seite mit Fragen bombardiert und auf der anderen Seite soll er das Problem lösen.


Anforderungen:

  • Plattformunabhängig
  • Viele Dienste, Applikationen automatisch erkennen
  • Einfache Konfiguration
  • Komplexe IT Strukturen überwachen und kontrollieren
  • Auswertung, Reporting & Berichtswesen

Besser wäre es natürlich, der Administrator wird proaktiv gewarnt oder aber ein Dienst reagiert auf bestimmte Sachen selbsttätig und informiert den Admin lediglich. Aber auch hier ist die Tücke im Detail. Insbesondere, wenn die Mediendatenbank z.B. unter einer Applikationsserver läuft, der wiederum mit einer SQL Datenbank kommunizieren muss. Die binären Daten liegen zudem auf einem separaten Fileserver. So gesehen muss ein Überwachungsdienst in der Lage sein zu erkennen, welche dieser Komponenten ausgefallen ist und was getan werden muss.

Fällt z.B. der Applikationsserver der Mediendatenbank aus, genügt es, diesen neu zu starten. Ist die Verbindung zum SQL Server unterbrochen, muss in jedem Fall der SQL Server neu gestartet werden. Vorab wäre es jedoch ratsam, den Mediendatenbankserver herunter zu fahren und erst dann neu zu starten, wenn der SQL Server wieder funktioniert.

Wird der Speicher des Fileserver zu knapp, hilft kein Neustart – hier muss der Admin dann eine Benachrichtigung erhalten, damit er eine Erweiterung der Speicherkapazitäten einplanen kann.

Als Schwierigkeit dazu kann es sehr gut sein, dass die Mediendatenbank unter Mac oder Windows läuft, der SQL Server unter Linux und der Fileserver unter Solaris.

Ein modernes Überwachungswerkzeug muss also plattformunabhängig sein, dem Admin genaue Kennzahlen geben, z.B. wie viel Speicherplatz für Daten pro Woche zusätzlich hinzukommt, und eine Warnung auswerfen, falls ein Dateisystem zu 85% ausgelastet ist.

Für eine plattforumübergreifende Überwachung setzen wir Hyperic ein. Über einen zentralen Hyperic HQ Server werden Server und Dienste über ein Agentenmodell überwacht. Auf dem Zielsystem sammelt ein Java-Agent Daten und leitet diese zum Hyperic Server weiter. Server und Agenten verfügen über eine Vielzahl von mitgelieferten Modulen und Templates, um bestimmte Dienste wie z.B. MySQL, Oracle, Apache Webserver, Tomcat 6 etc. zu überwachen und Informationen zu sammeln. Vorgefertigte Installer für Linux, Windows, Mac OS X und Solaris, wo eine Java 1.5 JRE mitgeliefert wird, sind verfügbar. Man kann jedoch auch ein plattformunabhängiges Paket ohne mitgelieferte Java Version herunter laden.

Das Setup ist hierbei äußerst einfach. Sobald der Server einmal installiert ist, kann man anfangen, die Agenten auf den zu überwachenden Server zu installieren. Sobald ein Agent sich mit dem Server verbunden hat, erkennt er automatisch die meisten laufenden Standarddienste und Applikationen. Tomcat und MySQL Dienste werden normalerweise sofort erkannt. In den Konfigurationstabs im Server erhält man nun Tipps und Informationen, wie man z.B. bei einer Tomcat Instanz JMX zur Überwachung aktiviert.

Man kann jedoch auch jederzeit manuell Dienste hinzufügen und über eigene Skripte so ziemlich alles überwachen, was man benötigt.

Wenn einmal die Server und Dienste erkannt wurden, kann man nun festlegen, wann was für Aktionen ausgeführt werden sollen, z.B. kann man eine Benachrichtigung konfigurieren, wenn der Tomcat nicht mehr verfügbar ist (Availability < 100%) oder Fehler in den Logdateien auftauchen.

Somit kann man relativ einfach seine Applikationen und Server zentral überwachen.

In der Opensource Variante werden hier nur Benachrichtigungen ausgelöst und Dienste können dann manuell über den Hyperic HQ Server neu gestartet werden.

In der Enterprise Variante erhält man die Möglichkeit, auch Aktionen – wie z.B. ein Restart des Tomcat Dienstes – als Reaktionen zu Warnungen zu definieren. Zudem erhält man Zugriff zu einem umfangreichne Reporting Tool, womit man detaillierte Listen und Charts mit einer genauen Auswertungen über Auslastungen und Nutzung auf Knopfdruck erstellen kann.

Und das ganze zum kleinen Preis. Es wird nach Anzahl der Agenten abgerechnet – also Servern – und der Preis richtet sich nach dem gewünschten Support Level.

So würde die Überwachung unseres Beispiels mit 3 Servern unter 1.000 Euro Lizenzsumme pro Jahr kosten.

Weitere Informationen finden Sie unter www.hyperic.com

Tags: ,

Hinterlasse eine Antwort