Einführung / Konfiguration des FirstSpirit-Servers / Konfigurationsdateien (FirstSpirit-Server) / FirstSpirit-Server (fs-server.conf) / JMX

Bereich: JMX

Inhaltsverzeichnis
#####
# JMX
#####
# Listen host and port. If port is empty, JMX is disabled
jmx.host=${HOST}
jmx.port=
 
# SSL and keystore
jmx.ssl=false
jmx.ssl.needClientAuth=false
javax.net.ssl.keyStore=
javax.net.ssl.keyStorePassword=
 
# User authentication and access level. If password file is empty,
# authentication is disabled
jmx.password.file=
jmx.access.file=

Konfiguration des JMX-Connectors zur (Remote-)Überwachung der JVM des FirstSpirit-Servers (siehe FirstSpirit JMX-Konsole). JMX dient zur Abfrage des Systemstatus und liefert aktuelle Systeminformationen des FirstSpirit-Servers und Java-Systems. Als Client kann z. B. jconsole (enthalten im JDK) verwendet werden oder andere System-Monitore, die das JMX-Protokoll unterstützen.

jmx.host

Der Parameter weist den FirstSpirit-Server an, ankommende Anfragen am angegebenen jmx.port (s.u.) und auf dem hier definierten Hostnamen (bzw. IP-Adresse) entgegenzunehmen. Standardmäßig nimmt er Verbindungen auf allen IP-Interfaces entgegen. Die Konfiguration von jmx.host ist notwendig, wenn der JMX-Connector aus Sicherheitsgründen auf ein bestimmtes Interface eingeschränkt werden soll. Die Angabe ist außerdem notwendig, wenn keine Remote-JMX-Verbindung z. B. von jconsole aus aufgebaut werden kann, weil der eigene Hostname des Servers nicht über DNS auflösbar ist oder nur mit lokaler IP-Adresse in /etc/hosts eingetragen ist. In diesem Fall muss hier die eigene IP-Adresse oder der eigene Hostname des Servers eingetragen werden.

jmx.port

Angabe einer freien Portnummer für die JMX- / RMI-Verbindung (JMX-Connector). Wird kein Port angegeben, ist kein JMX-Zugriff möglich.

jmx.ssl

Die Verwendung von Secure Sockets Layer (SSL) ist standardmäßig deaktiviert (Standardwert: false). 

jmx.ssl.needClientAuth

Die Verwendung einer Client-SSL-Authentifizierung ist standardmäßig deaktiviert (Standardwert: false). Um die Client-SSL-Authentifizierung für das Remote-Monitoring per JMX zu aktivieren, muss dieser Parameter auf true gesetzt werden.

javax.net.ssl.keyStore

Über den Parameter wird der Dateisystem-Pfad zum Zertifikatsspeicher (Keystore) angegeben.

javax.net.ssl.keyStorePassword

Angabe eines Passworts für die Keystore-Datei.

jmx.password.file

Aktiviert die Benutzerauthentifizierung für den JMX-Zugriff auf dem FirstSpirit-Server. Über den Parameter wird der Dateisystem-Pfad zur JMX-Passwort-Datei angegeben. Die JMX-Passwort-Datei verwaltet verschiedene Rollen/Benutzer und deren Passwörter.
Hinweis: Da die in dieser Datei hinterlegten Passwörter im Klartext gespeichert werden, sollten hier nicht die Standard-Authentifizierungsinformationen hinterlegt werden, sondern speziell für den JMX-Zugriff definierte Rollen und Passwörter (siehe jmx.access.file). Das JRE enthält eine Vorlage für eine Passwort-Datei mit dem Namen jmxremote.password.template. Diese Vorlage kann nach JRE_HOME/lib/ Management/jmxremote.password kopiert und um Passwörter für die Rollen ergänzt werden, die in der JMX-Access-Datei definiert sind. Ist kein Wert angegeben (Standardfall), ist die JMX-Authentifizierung deaktiviert.

jmx.access.file

Über diesen Parameter wird der Dateisystem-Pfad zur JMX-Access-Datei (jmxremote.access) angegeben. Die Access-Datei verwaltet verschiedene Rollen/Benutzer und deren Zugriffsrechte. Die hier verwalteten Rollen müssen den Rollen in der Passwort-Datei entsprechen. Der zugehörige Wert muss entweder readonly oder readwrite sein. So kann beispielsweise eine „monitorRole“ definiert werden, die ausschließlich den Lesezugriff für die Überwachung erlaubt und eine „controlRole“, die den Lese-und Schreibzugriff für die Überwachung und Verwaltung gewährt.

Hinweis zur JMX-Konfiguration von Cluster-Knoten: Cluster-Knoten besitzen keine eigene Konfigurationsdatei, d. h. sämtliche Properties werden vom Master geladen. Der JMX-Zugriff auf den bzw. die Cluster-Knoten muss in der fs-server.conf des Master-Servers konfiguriert werden. Dazu müssen alle JMX-Parameter für diesen Knoten mit dem Präfix cluster.<Slave-Server-Name> versehen werden. Der Slave-Server-Name ist der Name des Slave-Servers, der innerhalb der Servereigenschaften im Bereich „Clustering“ für den Knoten hinterlegt wurde (siehe Clustering). Beispiel:

cluster.<Slave-Server-Name>.jmx.host=castor.e-spirit.com
cluster.<Slave-Server-Name>.jmx.port=1088

Für den Parameter cluster.<Slave-Server-Name>.jmx.host muss in diesem Fall der vollqualifizierte Hostname des Slave-Servers bzw. dessen IP-Adresse eingetragen werden.

Wichtig Für den Betrieb der JMX-Konsole in einer Produktionsumgebung sollten immer die Benutzerauthentifizierung und ggf. der verschlüsselte SSL-Zugriff aktiviert werden. Sind diese Parameter deaktiviert (Standardeinstellung), ist der Zugriff auf den JMX-Port nicht geschützt und unberechtigte Benutzer könnten über den JMX-Port den Server beenden.

Weitere Informationen zur Konfiguration von JMX siehe:                                                    
http://docs.oracle.com/javase/6/docs/technotes/guides/management/agent.html#gdemv

© 2005 - 2022 Crownpeak Technology GmbH | Alle Rechte vorbehalten. | FirstSpirit 2023.1 | Datenschutz