Systemmanagement mit RHQ

Lets go

Nach der Installation (Kasten: „Installation“) und dem Einloggen landet der Benutzer auf dem Dashboard (Abb. 3). Sofern ein Agent neue Ressourcen der Kategorien Platform oder Server gefunden hat, werden diese im Auto-Discovery-Portlet angezeigt und können mittels Import in die zentrale Inventarbibliothek übernommen werden. Dies ist notwendig, damit diese Ressourcen (und ihre Kind-Ressourcen) überwacht werden können.

Installation

Die Installation von RHQ gestaltet sich relativ einfach, setzt aber eine installierte Java-SE-6-Laufzeitumgebung voraus. Hier lädt man das RHQ-Server-Zip-Paket herunter und packt es danach aus (unter Windows empfiehlt es sich, einen kurzen Pfad zu nehmen, da die erzeugten Pfade in RHQ bereits teilweise sehr lang sind und Probleme bereiten können; gibt es später beim Starten Probleme, sollte man überprüfen, ob das Auspacken mittels WinZip erfolgreicher ist).

Nach dem Auspacken wechselt man in das Basisverzeichnis und startet den Server mittels bin/rhq-server.sh console bzw. binrhq-server.bat console.

Nach kurzer Zeit ist der Server gestartet und man kann sich unter http://localhost:7080/ einloggen. Hier bekommt man eine Webseite angezeigt, auf der man die nötigen Einstellungen zur Datenbank und beispielsweise dem SMTP-Server vornehmen kann. Für einen ersten Test empfiehlt es sich, die eingebettete H2-Datenbank und den eingebetteten Agent zu verwenden; diese Einstellungen sind allerdings nicht für den produktiven Betrieb geeignet. Als produktive Datenbanken werden aktuell Postgres 8.2.4+ oder Oracle 10/11 unterstützt.

Nach dem Klick auf INSTALLIEREN, wird die Installation des Servers vervollständigt. Nachdem eine entsprechende Nachricht angezeigt wurde, kann man sich in den Server einloggen; Benutzername und Passwort sind hier rhqadmin/rhqadmin. In der Entwicklerversion wird noch nicht automatisch auf Deutsch umgeschaltet. Hier muss man als Start-URL http://localhost:7080/coregui/CoreGUI.html?locale=de auswählen. Dies soll aber in der endgültigen Version behoben sein.

Agent installieren

Die Installation eines Agents ist ebenfalls einfach: Sobald der Server läuft, bietet dieser einen Agent-Download unter http://localhost:7080/agentupdate/download an. Nach dem Auspacken des Downloads mittels unzip, kann der Installer aufgerufen werden: java -jar agentdownload.jar -install. Hierbei wird dann ein Verzeichnis rhq-agent erzeugt. Gestartet wird der Agent dann mittels

cd rhq-agent

bin/rhq-agent.sh

Der Agent erfragt dann einiges bezüglich der Adresse des Servers und beginnt danach, die Plug-ins herunterzuladen. Wenn dies geschehen ist, werden die Plug-ins gestartet und fangen an, nach Ressourcen zu suchen, die dann im Auto-Discovery-Bereich des UI angezeigt und zum Import bereitgestellt werden.

Für den produktiven Einsatz wird der Agent (nach der Konfiguration) über ein vorhandenes Wrapper-Skript (aus den Systemstartskripten) gestartet. Danach läuft er im Hintergrund und ist bei einem Serverupdate in der Lage, sich selbst zu aktualisieren. Eine ausführlichere Installationsanleitung findet man hier.

Abb. 3: Dashboard mit Portlets

Nachdem Ressourcen im Inventar sind, kann man über die Schaltfläche INVENTAR im Menü zur Ressourcenübersicht gelangen, wo sie entsprechend der Kategorien gelistet werden und von da auch ausgewählt werden können. Direkt unterhalb der Menüleiste gibt es auch die Möglichkeit, applikationsweit nach Ressourcen, Gruppen von Ressourcen und anderen Artefakten zu suchen. Klickt man auf eine Ressource, gelangt man zu deren ZUSAMMENFASSUNG-Reiter, der allgemeine Informationen und eine Übersicht der wichtigsten Daten zur Ressource liefert (Abb. 4). Links auf der Seite gibt es nun einen Baum, der die Ressourcen zu der Plattform zeigt, die die ausgewählte Ressource beinhaltet, sodass hier schnell zwischen Ressourcen dieser Plattform hin- und hergeschaltet werden können. Der Baum zeigt bewusst nur eine Plattform an, da in der Praxis mehrere hundert Plattformen verwaltet werden und der Baum damit sehr unübersichtlich würde.

Abb. 4: Übersichtsseite pro Ressource
Subsysteme

Auf der rechten Seite in Abbildung 4 sieht man die Reiter, die den verschiedenen Subsystemen in RHQ entsprechen. Welche Subsysteme aktiv sind, hängt davon ab, welche im zugehörigen ResourceType definiert wurden. Die Benutzeroberfläche und auch die Agent-Funktionalität ist hier sehr generisch gehalten; weder der Server noch der Agent haben Informationen über einen ResourceType oder gar über eine Ressource hart einkodiert. Das erste Subsystem ist das Monitoring. Hier werden periodisch Messwerte durch das Plug-in ermittelt und an den Server gemeldet. Die gemessenen Werte werden in der Datenbank gespeichert und können als Graphen dargestellt werden (Abb. 5).

Abb. 5: Graphen auf dem Monitoring-Reiter

Oberhalb der Graphen zeigt ein Band die Verfügbarkeit der Ressource im ausgewählten Zeitraum am. Über den Subreiter ZEITPLAN kann die Messfrequenz für die Metriken angepasst werden (dies kann sowohl per Ressource als auch für Gruppen von Ressourcen gleichen Typs und global für alle Ressourcen des Typs in verschiedenen Abschnitten des UI geschehen). Metriken gibt es in drei Ausprägungen:

1. Numerische Werte: werden jedes Mal in der Datenbank gespeichert und können als Graphen dargestellt werden.
2. Traits: werden als Strings in der Datenbank gespeichert, allerdings nur wenn der Wert sich geändert hat. Anwendungsfälle sind Betriebssystemversionen oder -namen
3. CallTime: sind Antwortzeiten von Webseiten oder SessionBean-Methoden. Hier werden die Minimum-, Durchschnitt- und Maximumwerte gespeichert und angezeigt

In allen drei Fällen kümmert sich der Agent darum, dass die Messwerte regelmäßig ermittelt und an den Server gemeldet werden. Das INVENTAR zeigt die Kind-Ressourcen der ausgewählten Ressource und erlaubt es auch, neue Ressourcen zum System hinzuzufügen, die nicht automatisch von den Agents gefunden wurden. Zusätzlich werden hier die Verbindungseinstellungen zur gemanagten Ressource (z. B. URL, Username und Login) angegeben bzw. modifiziert.

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.