Sie können in einer Replikatgruppe eine Verbundcontroller-Include-Datei server.xml konfigurieren und automatisch die Konfiguration der übrigen Replikate in der
Gruppe aktualisieren. Die automatische gemeinsame Nutzung einer Konfiguration bedeutet, dass die Konfiguration der anderen Replikate nicht manuell aktualisiert werden muss. Die automatische gemeinsame Nutzung
einer Konfiguration ist besonders nützlich für Verbünde mit automatischer Skalierung.
Informationen zu diesem Vorgang
Sie können die Include-Datei für eine Controllerkonfiguration im Verzeichnis
configDropins/defaults des jeweiligen Controllers ablegen, um die Konfiguration von Replikaten automatisch zu aktualisieren. Alternativ können Sie ControllerConfigMBean-Operationen verwenden,
um die gemeinsam genutzten Konfigurationsdateien eines Verbundcontrollers aufzulisten, hinzuzufügen oder zu entfernen.
Vorgehensweise
- Erstellen Sie für den Controller, dessen Konfiguration auch von den Replikaten verwendet werden soll, ein Verzeichnis
configDropins.
Wenn es für den Controller der Replikatgruppe noch kein Verzeichnis
configDropins/defaults gibt, erstellen Sie das Verzeichnis
$WLP_USER_DIR/servers/Servername/configDropins/defaults für den Controller.
Anmerkung: Informationen zur Rangfolge der Dateien in
Unterverzeichnissen von
configDropins finden Sie unter
Ordner 'dropins' für Serverkonfiguration angeben. In dem Abschnitt
wird sowohl das Verzeichnis
configDropins/defaults als auch ein Verzeichnis
configDropins/overrides erwähnt. In einem Verzeichnis
configDropins/overrides abgelegte Controllerkonfigurationen werden nicht von Replikaten gemeinsam genutzt. Wenn Replikate eine Konfiguration gemeinsam nutzen sollen,
müssen Sie das Verzeichnis
configDropins/defaults verwenden.
- Geben Sie die Controllerkonfiguration für andere Replikate der Replikatgruppe frei.
- Legen Sie die Konfiguration des Replikatgruppencontrollers im Verzeichnis configDropins/defaults des Controllers ab.
Kopieren Sie beispielsweise
die Include-Datei server.xml des Controllers in das Verzeichnis
configDropins/defaults des Controllers.
- Verwenden Sie ControllerConfigMBean-Operationen,
um die gemeinsam genutzten Konfigurationsdateien eines Verbundcontrollers aufzulisten, hinzuzufügen oder zu entfernen.
Konfigurationsdateien werden im Verzeichnis
$WLP_USER_DIR/servers/Servername/configDropins/defaults der Controller gespeichert und zusammen mit dem Verzeichnis
configDropins/defaults der Replikate gemeinsam genutzt.
Verwenden Sie Jython-Scripts oder einen Java-Client wie JConsole, um die folgenden
ControllerConfigMBean-Operationen für Verbundcontroller auszuführen:
- listSharedConfig
- Die Operation listSharedConfig listet die Dateien im gemeinsam genutzten Konfigurationsverzeichnis des Replikats auf.
- addSharedConfig
- Die Operation addSharedConfig fügt eine Konfiguration zu einer Datei hinzu und speichert die Datei im Verzeichnis
configDropins/defaults jedes Replikats. Für die Operation müssen Sie die beiden folgenden Parameter angegeben:
- fileName
- Dies ist der Dateiname der Controllerkonfiguration, die gemeinsam genutzt werden soll. Wenn Sie den Namen einer Datei angeben, die
im gemeinsam genutzten Konfigurationsverzeichnis vorhanden ist, wird die vorhandene Datei überschrieben. (String)
- config
- Dies ist der Inhalt einer gültigen Include-Datei server.xml. (String)
Beispiel:
<?xml version="1.0" encoding="UTF-8" ?>
<server>
<logging traceSpecification="com.ibm.ws.collective.repository.internal.SharedConfigManager=all"/>
</server>
- removeSharedConfig
- Die Operation removeSharedConfig entfernt eine Datei aus dem Verzeichnis
configDropins/defaults jedes Replikats. Für die Operation müssen Sie den folgenden Parameter angeben:
- fileName
- Dies ist der Dateiname der Controllerkonfiguration, die aus dem gemeinsam genutzten Konfigurationsverzeichnis jedes Replikats gelöscht werden soll. (String)
Die Controllerkonfiguration wird automatisch mit den configDropins-Verzeichnissen jedes andren Replikats
in der Replikatgruppe synchronisiert. Wenn Sie zu einem Controller ein Replikat hinzufügen, das automatisch die Konfiguration des Controllers mit nutzt, wird der Inhalt des Verzeichnisses
configDropins/defaults des Controllers im neuen Replikat repliziert. Alle Änderungen, die Sie an Skalierungsrichtliniendefinitionen für einen Controller vornehmen,
werden automatisch mit Konfigurationen in den configDropins-Verzeichnissen der anderen Replikate synchronisiert.
Wenn die Controllerkonfiguration nicht automatisch mit der Konfiguration anderer Replikate synchronisiert wird, überprüfen Sie die Controller- und Replikatprotokolle. Wenn Sie
das Verzeichnis configDropins/defaults für die gemeinsame Nutzung der Controllerkonfiguration verwendet haben, stellen Sie außerdem sicher, dass die Konfigurationsüberwachung
eingeschaltet ist. Die Konfigurationsüberwachung ist standardmäßig aktiviert.
Wenn die Konfigurationsüberwachung inaktiviert ist, können Sie den Controller mit der FileNotificationMBean über Konfigurationsänderungen informieren, die dann von den Replikaten
gemeinsam genutzt werden. Mit ControllerConfigMBean-Operationen gespeicherte Konfigurationen werden unabhängig von der Aktivierung/Inaktivierung der Konfigurationsüberwachung automatisch von Replikaten gemeinsam genutzt. Weitere Informationen hierzu finden Sie unter Dynamische Aktualisierungen steuern.
Beispiel: JConsole für die gemeinsame Nutzung der Controllerkonfiguration durch Replikate verwenden
Im folgenden Beispiel ist beschrieben, wie Sie
JConsole verwenden können, um die Include-Datei server.xml im Controllerverzeichnis
configDropins/defaults mit allen Replikaten gemeinsam zu nutzen.
- Verbinden Sie JConsole mit dem Verbundcontrollerprozess.
- Stellen Sie sicher, dass der Verbundcontroller aktiv ist.
wlp/bin/server status Name_des_Verbundcontrollers
Es müssen keine Replikate
aktiv sein. Nicht aktive Replikate führen beim Start eine Synchronisation mit der gemeinsam genutzten Konfiguration durch.
- Starten Sie JConsole, wenn sie noch nicht aktiv ist. Führen Sie unter Windows die Datei Java-Installation\bin\jconsole.exe aus.
- Wählen Sie den Prozess für den Verbundcontroller aus.
Wenn Sie den REST-Connector mit JConsole verwenden möchten, um über eine zugrunde liegende HTTPS-Verbindung fern auf MBeans zugreifen zu können, lesen Sie die Informationen unter Creating remote JMX connections in Liberty.
- Führen Sie die ControllerConfigMBean-Operation addSharedConfig in
JConsole aus, um die Controller-Include-Datei server.xml zum Verzeichnis
configDropins/defaults jedes Replikats hinzuzufügen.
- Wählen Sie auf der JConsole-Registerkarte MBeans die
ControllerConfigMBean-Operation addSharedConfig aus.
- Geben Sie für fileName den Pfad der Include-Datei server.xml an, z. B.
$WLP_USER_DIR/servers/Name_des_Verbundcontrollers/trace.xml
- Geben Sie für config die hinzuzufügende Konfiguration an. z. B.
<?xml version="1.0" encoding="UTF-8" ?>
<server>
<logging traceSpecification="com.ibm.ws.collective.repository.internal.SharedConfigManager=all"/>
</server>
- Klicken Sie auf addSharedConfig, um die Operation auszuführen.
- Vergewissern Sie sich, dass die Controllerkonfiguration nach der Operation erfolgreich gemeinsam von den Replikaten genutzt wird.