| |
15
- MBeans, MBean Server
- Agenten-Dienste, Protokoll Adapter und Konnektoren
Der MBean Server ist eine Datenbank von Objekten, die Managementoperationen in einem
Agenten ausgesetzt sind. Jedes im Server registrierte Objekt wird für die Management
Anwendungen sichtbar. Der MBean Server stellt nur die Management Schnittstelle des
MBeans zur Verfügung, niemals die direkte Objektreferenz.
Jede Ressource, die man von außerhalb der Java Virtual Machine managen möchte, muß als
MBean beim Server registriert werden. MBeans können von :
- einem anderen MBean
- einem JMX-Agenten
- der zu verwaltenden Ressource selbst
instantiiert werden.
Wenn ein MBean registriert wird, bekommt es einen eindeutigen Objektnamen. Eine Manage-
ment Anwendung benutzt den Namen, um das Objekt zu identifizieren, auf das es Manage-
ment Operationen ausführen wird.
Die Operationen die man auf MBeans ausführen kann sind:
- gesetzte Attribute, auf denen zugegriffen werden kann
- Operationen, die aufgerufen werden können
- Notifikationen, die gesendet werden können
- die Konstruktoren für die MBean Java Klassen
JMX definiert vier Typen von MBeans. Die Standard MBeans sind die am einfachsten zu
entwerfen und implementieren. An der Schnittstelle dieses Beans werden Methodenaufrufe
zugänglich gemacht. Im Gegensatz dazu werden bei dynamischen MBeans Attribute und
Signaturen von Operationen durch fest definierte Zugriffsfunktionen bekanntgegeben. Damit
ist es einfach, bestehende Anwendungen durch JMX-Agenten zu kapseln. Ein offenes MBean
ist eine Unterart des dynamischen MBeans, welches nur bestimmte, fest vordefinierte
Datentypen und Funktionen zur Verfügung stellt. Zusätzlich wird mit dem Interface MBeanInfo
detailierte Meta-Information zum entsprechenden MBean geliefert. Das Ziel hierbei ist es, sich
selbst beschreibende MBeans zu erhalten, die sehr einfach benutzt werden können. Das
Modell MBean - ein weiteres dynamisches MBean - stellt ein generisches und konfigurierbares
Management Template für Managementobjekte dar.
Die JMX Spezifikation definiert ein allgemeines Notifikations Modell, das sich auf das Java
Event Modell stützt. Ereignisse (Events) sind Java Objekte, die von einer Event Source
(Quelle) an einen oder mehrere Event Listener verschickt werden. Notifikationen können von
MBean Instanzen, wie auch von einem MBean Server gesendet werden. Mit einem Notification
Filter können dann bestimmte Typen von Events selektiert werden. Wenn sich der Wert eines
bestimmten MBean Attributes ändert oder wenn ein MBean erzeugt oder gelöscht wird, können
Events erzeugt werden.
Die Instrumentierung Spezifikation definiert Klassen, die benutzt werden, um die Management
Schnittstelle eines MBeans zu beschreiben. Die Metadaten-Klassen beinhalten die Strukturen,
um alle Komponenten einer MBean Management Schnittstelle zu beschreiben, die Attribute,
Operationen, Notifikationen und Konstruktoren. Für jede Komponente führen die Metadaten
einen Namen, eine Beschreibung und eine besondere Eigenschaft ein. Zum Beispiel ist die
Eigenschaft eines Attributes ob es lesbar, beschreibbar oder beides ist.
Diese Standard Informationen werden immer verfügbar sein, damit Management
Anwendungen, die wissen, wie sie Zugang zu den Subklassen bekommen können, diese
Extra Information benutzen.
Durch die Instrumentierung einer Ressource, wird sie durch den Agent Level managebar.
4.3.2 Agent Level
Diese Ebene baut auf das Instrumentation Level auf und definiert Agenten zum Management
JMX-managebarer Ressourcen. Die Schlüsselkomponenten eines JMX-Agenten sind:
|  |
|
| |
|
|