Einleitung
Diese Dokumentation gliedert sich in 2 Teile:
- Teil 1 beschreibt das eigentliche Update der Container und gibt es in zwei Varianten
- Option 1, falls Sie unser empfohlenes Docker Compose-Setup verwenden.
- Option 2 für den Fall, dass Sie ein benutzerdefiniertes Setup haben. Er beschreibt die relevanten Änderungen, die mit Simplifier 9 einhergehen, auf generische Weise.
- Teil 2 beschreibt Schritte, die unabhängig vom Container-Orchestrierungsmodus durchgeführt werden müssen.
Teil 1: Upgrade von Simplifier
Option 1: Upgrade mit dem standardmäßigen Docker Compose
Schritt 1 – Herunterfahren der Simplifier-Instanz
Wechseln Sie in das Verzeichnis, in dem Sie die docker-compose-Datei abgelegt haben.
Wechseln Sie in diesen Ordner:
cd docker-compose
Um Simplifier zu stoppen, führen Sie
docker compose -f simplifier-standalone.yml down
Schritt 2 – Abrufen der Simplifier-Setup-Dateien
Aktualisieren Sie den Inhalt, und wechseln Sie zum neuen Release-Zweig:
git pull git checkout --track origin/release/LTS
Der Dateiname simplifier-standalone.yml wurde in docker-compose.yml geändert, um den Docker-Standards zu entsprechen. Sie können jetzt den Parameter -f <filename> weglassen, um docker compose-Befehle auszuführen.
Schritt 3: .env aktualisieren
Erstellen Sie eine Kopie Ihrer .env-Datei
cp .env .env.8.0
Kopieren Sie die Vorlage als neue .env-Datei.
cp .env.template .env
Bearbeiten der neuen .env-Datei
nano .env
Es ist zwingend erforderlich, dass Sie die ersten 3 Einträge an Ihre Bedürfnisse anpassen:
# these 3 variables need to be changed SIMPLIFIER_HOSTNAME=example.simplifier.cloud DB_PASSWORD=MySecret123 DB_ROOT_PASSWORD=MySuperSecret
Legen Sie diese drei Werte auf die gleichen Werte fest, die Sie in Ihrer vorherigen .env-Datei verwendet haben. DB-Passwörter werden nicht automatisch geändert, wenn Sie sie hier ändern. Optional: eine Liste aller env-Variablen mit einer kurzen Beschreibung. Ändern Sie diese nach Bedarf.
SIMPLIFIER_HOSTNAME
|
Simplifier Hostname, FQDN, ohne Protokoll. Um auf Simplifer zugreifen zu können, muss https://${SIMPLIFIER_HOSTNAME} verwendet werden |
DB_PASSWORD
|
Passwort für die MySQL-Datenbank |
DB_ROOT_PASSWORD
|
Passwort für den MySQL-Root-Benutzer |
DB_NAME
|
Datenbankname für die Simplifier-Datenbank. Wird als Präfix für alle Plugin-/Moduldatenbanken verwendet. |
SIMPLIFIER_VERSION
|
Version von Simplifier, die Sie installieren möchten. Daran sollten Sie nichts ändern. Wenn Sie eine andere Simplifier-Version haben möchten, schauen Sie sich bitte stattdessen den entsprechenden Zweig an |
HOST_DATA_PATH
|
Pfad, in dem alle Daten auf dem Host gespeichert sind. |
PLUGIN-LISTE
|
Liste aller Plugins, die gestartet werden sollen. Technisch gesehen handelt es sich bei der Workflow Engine nicht um ein Plugin, daher wird sie hier nicht erwähnt |
SIMPLIFIER_JVM_HEAP_GB
|
Wie viel Heap-Speicherplatz für Simplier App Server in GB |
TZ
|
Zeitzone. Wird nur im Workflow-Kontext verwendet |
WF_RT_JVM_HEAP_GB
|
Wie viel Heap-Speicherplatz für Workflow Runtime in GB |
WF_ARCHIVE_ENABLED
|
Informationen zu archivbezogenen Einstellungen finden Sie in dieser Dokumentation. |
WF_ARCHIVE_INTERVAL
|
|
WF_ARCHIVE_MAX_AGE_COMPLETED
|
|
WF_ARCHIVE_TIME
|
|
WF_DT_JVM_HEAP_GB
|
Wie viel Heap-Speicherplatz für Workflow Designtime in GB |
LAUNCHPAD_JVM_HEAP_GB
|
Wie viel Heap-Speicherplatz für Launchpad in GB |
FEATURE_SSBO_JS_DEBUGGING
|
Soll das experimentelle Feature “Debuggen von serverseitigen Business Objekten” aktiviert werden? (Weiterlesen) |
DEBUG_CHROME_DEV_TOOLS_EXPOSED_PORT
|
Port, der zum Herstellen einer Verbindung mit dem Debugger verwendet wird. Dieser Port muss in Ihrem Firewall-Setup geöffnet sein. (Weiterlesen) |
PDFPLUGIN_SECURITY_ALLOW_JAVASCRIPT
|
Sollte die Ausführung von Javascript in PDF-Vorlagen erlaubt sein? (Weiterlesen) |
DYNAMIC_TAB_TITLES_ENABLED
|
Sollen die dynamischen Tab-Icons und Tab-Titel aktiviert werden? (Weiterlesen) |
Schritt 4 – Umbenennen des Datenordners
Bis Release 7 gab es nur einen Speicherordner mit dem Namen data. Mit Release 7 EHP 1 und Release 8 wurden neue Container-Images mit eigenem persistenten Speicher hinzugefügt. Aus historischen Gründen hieß der Ordner für den Simplifier in unserem Standard-Setup noch data, aber die anderen Ordner wurden entsprechend den Namen der Container benannt. Um eine konsistente Benennung zu gewährleisten, verwendet unser Standard-Setup jetzt simplifier als Ordnernamen für den simplifier-Container. Passend dazu sollten Sie den vorhandenen Ordner umbenennen. Wenn Sie die empfohlene Ordnerstruktur verwendet haben, müssen Sie Folgendes tun:
mv /var/lib/simplifier/data /var/lib/simplifier/simplifier
Schritt 5 – Erstellen eines freigegebenen Ordners
Es ist ein neuer Ordner erforderlich, der als freigegebenes Volume fungiert.
mkdir /var/lib/simplifier/shared
Bemerkung
Seit Release 8 EHP 2 werden die Monitoring-Daten auf eine separate Datenbank verschoben. In der Standardkonfiguration wird derselbe MySQL-Server verwendet und automatisch konfiguriert.
Option 2: Allgemeine Upgrade-Anweisungen, wenn Sie nicht unser Standard-Docker-Compose-Setup verwenden
Schritt 1: Konfigurieren der Überwachungsdatenbank
Seit Release 8 EHP 2 werden die Monitoring-Daten auf eine separate Datenbank verschoben. Bei dieser Datenbank muss es sich um eine MySQL-Datenbank handeln, die sich möglicherweise auf demselben MySQL-Server wie die Hauptdatenbank der Vereinfachung befindet, sich aber auch auf einem anderen MySQL-Server befindet. In beiden Fällen muss die Verbindung separat konfiguriert werden. Um diese Datenbank zu konfigurieren, müssen die folgenden Umgebungsvariablen gesetzt werden:
- MONITORING_DBMS=mysql // fixed string - MONITORING_DB_HOST=<hostname> - MONITORING_DB_PORT=<port> // by default MySQL uses 3306 - MONITORING_DB_USER=<dbUserName> - MONITORING_DB_PASS=<password> - MONITORING_DB=<databaseName>
Die Datenbank muss auf dem konfigurierten MySQL-Server vorhanden sein.
Schritt 2 – Aktualisieren Sie den Reverse-Proxy
Erweitern der Konfiguration header access-control-expose-headers
OData-Version muss zu access-control-expose-headers hinzugefügt werden.
Die vollständige Liste ist jetzt
access-control-expose-headers: remainingTokenLifetime,OData-Version
Erweitern Sie die Konfiguration header-access-control-allow-headers
OData-MaxVersion, OData-Version müssen zu access-control-allow-headers hinzugefügt werden. Die vollständige Liste ist jetzt
access-control-allow-headers: DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,SimplifierToken,SimplifierApp,SimplifierModule,SimplifierModuleInterface,SimplifierClientBusinessObject,SimplifierClientBusinessObjectFunction,sap-cancel-on-close,sap-contextid-accept,MaxDataServiceVersion,DataServiceVersion,Content-Length,SimplifierApiKey,OData-MaxVersion,OData-Version,MIME-Version,X-CSRF-Token
Schritt 3 – Freigegebenen Ordner erstellen
Es ist ein neuer Ordner erforderlich, der als freigegebenes Volume fungiert. Sie können z.B. /var/lib/simplifier/shared erstellen:
mkdir /var/lib/simplifier/shared
Sie müssen diesen Pfad in den Simplifier-Container und in den Workflow-Designtime-Container einbinden. Für den Simplifier-Container:
/var/lib/simplifier/shared:/opt/simplifier/shared
Für den Workflow-Entwurfszeit-Container :
/var/lib/simplifier/shared:/home/workflowDesigntime/shared
Sie können /var/lib/simplifier/shared in einen beliebigen Ordner ändern, den Sie bevorzugen. Sie müssen die Mount-Ziele /opt/simplifier/shared und /home/workflowDesigntime/shared unverändert lassen!
Teil 2: Vorgehensweisen nach dem Upgrade
Schritt 1: Keystores neu erstellen (optional)
Das Neuerstellen von Keystores ist nur erforderlich, wenn Sie in Ihrem aktuellen Setup einen benutzerdefinierten Keystore verwenden. Wenn Sie dies nicht implementiert haben, können Sie diesen Schritt überspringen. Mit dem Simplifier Release 8 EHP 1 hat sich die JVM-Version geändert. Aus diesem Grund änderte sich das Keystore-Format sowie der korrekte Speicherort für den Keystore. Um den Keystore zu bearbeiten, verwenden Sie bitte immer das keytool aus dem Container heraus. Der Pfad zum keytool lautet
/usr/lib/jvm/graalvm-community-openjdk-20.0.1+9.1/bin/keytool
Der Pfad der Datei cacerts lautet
/usr/lib/jvm/graalvm-community-openjdk-20.0.1+9.1/lib/security/cacerts
Schritt 2: Aktualisieren von Simplifier-Standardinhalten
Laden Sie die neuesten Standardinhalte aus dem Marketplace herunter und importieren Sie sie in Ihre Simplifier-Instanz. Stellen Sie sicher, dass Sie die Importszenarien ‘Alle überschreiben’ oder ‘Unverändert überspringen’ (empfohlen) verwenden.
Schritt 3: Implementieren der Änderungen, die in den Versions- und Migrationshinweisen erwähnt werden
Folgen Sie unseren Release Notes und Migration Notes und setzen Sie die dort beschriebenen notwendigen Änderungen um.