Einführung / Konfiguration des FirstSpirit-Servers / Konfigurationsdateien (FirstSpirit-Server) / Java-VM und -Wrapper (fs-wrapper*.conf) / (Java-) versionsabhängige Konfiguration
(Java-) Versionsabhängige Konfiguration
(Java-) Versionsabhängige Übergabe von Parametern an die Java-VM
Inhaltsverzeichnis |
Mit jeder neuen Java-Version werden neue Startparameter unterstützt, während andere Parameter entfallen. Die Konfigurationseinstellungen für den Serverstart sind damit immer auch abhängig von der eingesetzten Java-Version.
Vor dem Wechsel auf eine neue Java Version sollten die Startparameter der Java VM geprüft und ggf. angepasst werden, da ein Start der Java VM mit veralteten Parametern nicht möglich ist (siehe Migration).
In FirstSpirit kann dazu eine Konfigurationsdatei verwendet werden, die eine Konfiguration für unterschiedliche Java-Versionen beinhaltet (empfohlen).
Für ältere Versionen des Tanuki Java Service Wrappers (< Version 3.5.36), konnte eine versionsabhängige Konfiguration durch zusätzlichen Include-Dateien fs-wrapper.isolated-j#.include.conf erfolgen (siehe Getrennte Konfigurationsdateien). Crownpeak empfiehlt in diesen Fällen eine Aktualisierung des Java Service Wrappers auf Version >= 3.5.36 und eine Umstellung der Konfiguration. |
Eine Konfigurationsdatei für unterschiedliche Java-Versionen (empfohlen)
Voraussetzung
Für die Verwendung einer Konfigurationsdatei für unterschiedlichen Java-Versionen ist ein Java Service Wrapper ab Version 3.5.36 notwendig:
- Mit dem FirstSpirit Aktualisierungsverzeichnis erhalten sie immer eine aktuelle Version des Wrappers (siehe FirstSpirit aktualisieren (→Installationsanleitung)).
- Die Version des Java Service Wrappers, die auf dem Server aktuell verwendet wird, kann über das FirstSpirit ServerMonitoring ermittelt werden. Unter ServerMonitoring - Übersicht - Status wird unter „Grundinformationen (System)“ die „Wrapper-Version“ eingeblendet.
- Entspricht die verwendete Wrapper-Version nicht der vom FirstSpirit-Server empfohlenen, wird dies durch rote Schrift und den Zusatz veraltet angezeigt. In der Datei fs-wrapper.log wird dies ebenfalls festgehalten.
In diesem Fall sollte der Java Service Wrapper zeitnah aktualisiert werden (siehe dazu Das FirstSpirit-Backend aktualisieren).
Versionsabhängige Übergabe von Parametern
Der Tanuki Java Service Wrapper ermöglicht durch die Angabe zusätzlicher Parameter, dass alle Startparameter in einer einzelnen Konfigurationsdatei übergeben werden können, diese Parameter aber nur für bestimmte Java-Versionen ausgewertet werden.
Die Auswertung der Java-spezifischen Parameter kann durch die Angabe wrapper.java.additional.<n>.java_version.min bzw. wrapper.java.additional.<n>.java_version.max auf bestimmte Java-Versionen eingeschränkt werden (s.u.).
Hinweis zu Include-Dateien:
Bei bestehenden FirstSpirit-Installationen können zusätzliche Include-Dateien fs-wrapper.isolated-j#.include.conf vorhanden sein. Diese Dateien wurden für Java 9 eingeführt, da die benötigten Startparameter mit den Startparametern der Version 8 nicht kompatibel waren.
Mit der neuen Konfiguration bzw. nach einer Anpassung der Konfiguration können diese alten Dateien gelöscht werden.
Hinweis zur Konfigurationsdatei fs-wrapper-vendor.conf:
Die Konfigurationsdatei fs-wrapper-vendor.conf enthält die empfohlenen Hersteller-Startoptionen der Java VM und ist Bestandteil des FirstSpirit Aktualisierungsarchivs fs-update-[version].tar.gz. Diese Parameter sind wichtig für den ordnungsgemäßen Start des FirstSpirit-Servers und werden von Crownpeak Technology GmbH überwacht und auf einem aktuellen Stand gehalten. So werden beispielsweise die Parameter für die Garbage Collection oder die Timeout-Zeiten auf Werte angepasst, die aufgrund unserer Erfahrungen für die meisten FirstSpirit Server sinnvoll sind.
Bei der Aktualisierung des FirstSpirit-Servers über das Aktualisierungsarchiv fs-update-[version].tar.gz werden die Startoptionen automatisch aktualisiert. Damit sind diese Konfigurationsanpassungen ohne manuelle Anpassung auch für bestehende FirstSpirit-Installationen verfügbar.
Weiterführende Dokumentation siehe FirstSpirit aktualisieren (→Installationsanleitung).
Die Konfigurationsdatei fs-wrapper-vendor.conf sollte nicht geändert werden. Sollte es in Einzelfällen notwendig sein, die empfohlenen Hersteller-Startoptionen anzupassen, sollten die entsprechenden Startparameter in der Konfigurationsdatei fs-wrapper[.isolated].conf erneut definiert werden (und nicht in der fs-wrapper-vendor.conf überschrieben werden). |
Syntax (Beispiele)
FirstSpirit darf nur mit Java-Versionen >= 11 gestartet werden:
wrapper.java.version.min=11
Dieser Parameter wird nur für Java-Version 11 verwendet. Ab Java-Version 12 wird der Parameter ignoriert:
wrapper.java.additional.40=-XX:+UseConcMarkSweepGC
wrapper.java.additional.40.java_version.max=11
Dieser Parameter wird nur für Java-Versionen >= 11 verwendet. Für Java-Version 10 wird der Parameter ignoriert:
wrapper.java.additional.60=--add-exports=java.base/sun.security.util=ALL-UNNAMED
wrapper.java.additional.60.java_version.min=11
Dieser Parameter wird nur für Java-Version 11 verwendet. Für alle anderen Java-Versionen wird er ignoriert:
wrapper.java.additional.65=--add-modules=java.activation
wrapper.java.additional.65.java_version.min=11
wrapper.java.additional.65.java_version.max=11
Weiterführende Informationen
Eine vollständige Beschreibung der Parameter und weiterführende Informationen finden Sie unter:
https://wrapper.tanukisoftware.com/doc/english/prop-java-additional-n.html
Getrennte Konfigurationsdateien für unterschiedliche Java-Versionen (Veraltete Konfiguration)
Vor der versionsabhängigen Konfiguration von Parametern in einer Konfigurationsdatei, konnte eine versionsabhängige Konfiguration auch durch unterschiedliche Konfigurationsdateien erfolgen.
Dabei wird die verwendete Java-Version automatisch ermittelt. Abhängig vom Ergebnis werden unterschiedliche Konfigurations-Dateien ausgewertet, z. B.
- die Datei conf/fs-wrapper-j1.include.conf (für Oracle Java 8) oder
- die Datei conf/fs-wrapper-j2.include.conf (für Oracle Java Versionen >= 9)
Crownpeak empfiehlt in diesen Fällen eine Aktualisierung des Java Service Wrappers auf Version >= 3.5.36 und eine Umstellung der Konfiguration.
Migration
Wann ist die Umstellung sinnvoll?
Wie empfehlen eine Anpassung der bestehenden Konfiguration auf die neuen Parameter:
- nach einem Update des Java Service Wrappers auf Version >= 3.5.36 und
- bei Nutzung einer Java-Versionen >= 9
Wie stellt man eine bestehende Konfiguration um?
Über die Datei <FirstSpiritROOT>/conf/conf-all/fs-wrapper.conf.default.txt wird bei der Installation eine von Crownpeak vorgegebene Standardkonfiguration mit der neuen Syntax bereitgestellt. Diese Standardkonfiguration kann als Grundlage für die neue Konfiguration verwendet werden.
Die bereitgestellte Standardkonfiguration des Java Service Wrappers kann von der Konfiguration in konkreten Kunden-Installationen abweichen. Die konkreten Parameter und Werte der Dateien fs-wrapper.conf bzw. fs-wrapper.isolated.conf und der Include-Dateien fs-wrapper-j#.include.conf müssen in die neue Konfiguration übernommen und an die neue Syntax angepasst werden (sofern sie von der Standardkonfiguration abweichen).
Es sollten so wenige Parameter wie möglich übernommen werden. |
Folgendes Vorgehen wird empfohlen:
- Die Datei <FirstSpiritROOT>/conf/conf-all/fs-wrapper.conf.default.txt (bzw. deren Isolated-Version) in das Verzeichnis <FirstSpiritROOT>/conf/ kopieren.
- Die relevanten Parameter aus der bestehenden fs-wrapper.conf übernehmen, insbesondere:
- wrapper.java.maxmemory und wrapper.java.initmemory (bitte den höheren Wert in der neuen Datei für beide Parameter verwenden)
- evtl. wrapper.java.command
- individuell konfigurierte Parameter, die für den Betrieb notwendig sind.
- Nach der Anpassung die bisherige Datei umbenennen (z. B. in fs-wrapper.conf.old) und anschließend die neue Datei in fs-wrapper.conf bzw. fs-isolated-wrapper.conf umbenennen.
- FirstSpirit starten.
Bei jeder Anpassung der Startparameter sollte die Performance des FirstSpirit-Servers in den folgenden Tagen kritisch geprüft werden. |
Fehleranalyse - FirstSpirit-Server startet nicht mehr: Startet der FirstSpirit-Server nach der Änderung nicht mehr, muss zunächst wieder die bisherige fs-wrapper.conf verwendet werden.
Eine Fehleranalyse kann anschließend anhand der Logdatei /log/fs-wrapper.log durchgeführt werden (ggf. zusammen mit Technical Support) - siehe auch Protokollierung. In diese Logdatei protokolliert der Wrapper Auffälligkeiten zur Java VM, z. B. längere Wartezeiten auf die Java VM sowie Ausgaben, die von der Java VM auf die Konsole erfolgen würden (u. a. die Ausgaben, die bis zur Initialisierung des LoggingManagers beim Start des FirstSpirit Servers ausgegeben werden).