5 - Betriebs- und Wartungsaufgaben (v3.x) - Windows Server 2022



In diesem Kapitel erfahren Sie, wie Sie regelmäßig vorkommende Betriebs- und Wartungsaufgaben im Zusammenhang mit der PICTURE-Prozessplattform durchführen können.


Regelmäßiges Neustarten des Tomcat-Servers

  • Aus technischen Gründen ist es derzeit erforderlich, dass der Tomcat-Server, auf dem die PPP betrieben wird, einmal pro Tag neu gestartet wird. Hierzu kann mit der Windows Aufgabenplanung ein Job eingerichtet werden, der ein Skript aufruft, das den Tomcat-Server zunächst stoppt und anschließend wieder neu startet

@ECHO OFF NET STOP Tomcat10 PING -n 10 localhost> nul NET START Tomcat10
  • Werden zu Wartungszwecken die Inhalte der PPP-Datenbank direkt auf Datenbank-Ebene geändert (d. h. nicht über die GUI oder offiziell vom Hersteller zertifizierte Wartungsprogramme für Stapelverarbeitungsaufgaben; beim Einspielen eines Datenbank-Backups handelt es sich z. B. um einen solchen Fall), muss anschließend zwingend der Tomcat-Server, der die PPP-Webanwendung bereitstellt, neu gestartet werden.

Sicherheitskopien

Backup

Um einen sicheren Betrieb der PICTURE-Prozessplattform zu gewährleisten, ist die regelmäßige Anfertigung von Sicherheitskopien zwingend erforderlich! Bei der Erstellung solcher Kopien ist im Hinblick auf die PPP zwischen den folgenden Kategorien von Daten zu unterscheiden:

  • Betriebssystemumgebung und benötigte Drittanbieter-Software inkl. deren Konfigurationseinstellungen: Diese Daten ändern sich sehr selten (i. d. R. nur bei Sicherheits- oder Systemupdates). Dies ist bei der Häufigkeit der Sicherungen zu berücksichtigen. Bei der Anfertigung von Sicherungskopien für diese Daten sind keine PPP-spezifischen Anforderungen zu beachten. Daher wird in diesem Dokument nicht näher auf die Sicherung dieser Daten eingegangen und die Durchführung regelmäßiger Sicherungsmaßnahmen als gegeben vorausgesetzt.

  • PPP-Webanwendung (WAR-Datei und Konfigurationsdateien): Die WAR-Datei sowie die Lizenzdatei ändern sich nur im Rahmen von Updates der PICTURE-Prozessplattform. Es sollte jeweils die aktuell lauffähige Variante gesichert werden, gesonderten Sicherungsmaßnahmen sind nicht nötig. Die Konfigurationsdatei kann sich im Rahmen von Wartungsarbeiten ändern. Nach Durchführung dieser Arbeiten ist es daher empfehlenswert, eine Kopie auf einem externen Datenträger anzufertigen.

  • Nutzdaten der PPP:

    • Folgende Nutzdaten werden von der PPP verwendet:

      • Datenbank mit den in der PPP verwalteten Daten (primäres Speichermedium der PPP)

      • Dateianhänge, welche zu Informationsobjekten in der PICTURE-Prozessplattform hochgeladen werden können

      • Revisions-Repository mit den historischen Versionsständen der verwalteten Informationsobjekte, das im Dateisystem abgelegt wird

      • Konfigurationsdatei settings.json für interne Einstellungen der PPP-Webanwendungwelche zur Laufzeit über die grafische Benutzeroberfläche der PPP verändert werden können.

    • Diese unterliegen im Betrieb einer ständigen Änderung und müssen daher entsprechend häufig auf externe Datenträger gesichert werden (Empfehlung: i. d. R. mindestens einmal täglich). Zur Anfertigung eines kompletten lokalen Backups kann das mitgelieferte Skript create_backup.sh verwendet werden. Dieses lokale Backup sollte dann anschließend auf einen externen Datenträger kopiert werden. Es ist zu empfehlen, die Anfertigung des lokalen Backups sowie den Kopiervorgang auf einen externen Datenträger (z. B. Netzwerk-Dateifreigabe, die z. B. regelmäßig per Bandmaschine gesichert und archiviert wird) durch einen Cron-Job zu automatisieren.

  • Falls gewünscht, können ebenfalls die vom Server und der Web-Anwendung geschriebenen Log-Dateien bei einem Backup berücksichtigt werden.

Einrichtung eines Backup-Skripts

Erstellen Sie sich ein Backup-Skript (z.B. create_backup.cmd), welches Sie ebenfalls mit der Windows-Aufgabenplanung einplanen können. Als Vorlage können Sie folgendes Beispiel-Skript verwenden, ggf. müssen die Variablen individuell angepasst werden:

@ECHO OFF SETLOCAL enableextensions REM script variables - please edit so that they match your specific environment SET PATH=%PATH%;"C:\Program Files\MariaDB 10.11\bin" SET TOMCAT_UPLOADS_DIR=C:\PICTURE\documents SET DB_SCHEMA=ppp SET CONFIG_DIR=C:\PICTURE\config SET LOGS_DIR="C:\Program Files\Apache Software Foundation\Tomcat 10.1\logs\ppp" SET DB_USER=root SET DB_PASSWORD=geheim SET TARGET_BACKUP_DIR=Z:\PICTURE\backup SET BACKUP_LOG_DIR=Z:\PICTURE\backup\log SET BACKUP_LOG_FILE=%BACKUP_LOG_DIR%/backup.log SET CURRENT_TIME=%date:~-4%-%date:~-7,2%-%date:~-10,2%-%time:~-11,2%-%time:~-8,2%-%time:~-5,2% ECHO Erstelle Backups im Verzeichnis %TARGET_BACKUP_DIR% (%CURRENT_TIME%) CALL :create_uploads_backup CALL :create_database_backup CALL :create_revision_repository_backup CALL :create_config_backup CALL :create_log_backup ECHO Backuplauf von %CURRENT_TIME% beendet. ECHO. EXIT /B %ERRORLEVEL% :create_uploads_backup robocopy %TOMCAT_UPLOADS_DIR% %TARGET_BACKUP_DIR%/uploads /MIR /XD revisionRepository IF %ERRORLEVEL% LSS 8 ( ECHO Uploads wurden kopiert EXIT /B 0 ) ELSE ( ECHO ERROR -- Beim Erstellen des Backups für die Upload-Dateien ist ein Fehler aufgetreten -- ECHO. EXIT /B 1 ) :create_database_backup mysqldump -u%DB_USER% -p%DB_PASSWORD% %DB_SCHEMA% > %TARGET_BACKUP_DIR%/database.sql IF %ERRORLEVEL%==0 ( ECHO Datenbank-Dump wurde erstellt EXIT /B 0 ) ELSE ( ECHO ERROR -- Beim Erstellen des Datenbank Dumps ist ein Fehler aufgetreten -- ECHO. EXIT /B 1 ) :create_revision_repository_backup robocopy %TOMCAT_UPLOADS_DIR%/revisionRepository %TARGET_BACKUP_DIR%/revisionRepository /MIR IF %ERRORLEVEL% LSS 8 ( ECHO Revisions-Repository wurde kopiert EXIT /B 0 ) ELSE ( ECHO ERROR -- Beim Erstellen des Revision-Repository Backups ist ein Fehler aufgetreten -- ECHO. EXIT /B 1 ) :create_config_backup robocopy %CONFIG_DIR%/ %TARGET_BACKUP_DIR%/conf /MIR IF %ERRORLEVEL% LSS 8 ( ECHO Konfigurationen wurden kopiert EXIT /B 0 ) ELSE ( ECHO ERROR -- Beim Erstellen des Konfiguration Backups ist ein Fehler aufgetreten -- ECHO. EXIT /B 1 ) :create_log_backup robocopy %LOGS_DIR%/ %TARGET_BACKUP_DIR%/logs /MIR IF %ERRORLEVEL% LSS 8 ( ECHO Logs wurden kopiert EXIT /B 0 ) ELSE ( ECHO ERROR -- Beim Erstellen der Log Backups ist ein Fehler aufgetreten -- ECHO. EXIT /B 1 )

Restore

Zur Wiederherstellung eines Mandanten müssen folgende Schritte durchgeführt werden (bei abgeschaltetem Tomcat-Server):

Datenbank wiederherstellen:

# Alte Datenbank löschen mysql -u Benutzername -p -e "Drop database NameDerDatenbank" # Datenbank neu erstellen mysql -u Benutzername -p -e "Create database NameDerDatenbank" # Datenbankdump einspielen mysql -u Benutzername -p NameDerDatenbank < PfadZurBackupdatei

Konfigurationsdateien wiederherstellen:

Uploads wiederherstellen:

Revisions-Repository wiederherstellen:

Anschließend kann der Tomcat-Server wieder gestartet werden.

Überwachung bzw. Analyse von Log-Dateien

In der Referenz-Konfiguration legt die PPP-Webanwendung im Verzeichnis C:\Program Files\Apache Software Foundation\Tomcat 10.1\logs Protokoll-Dateien ab, in denen zentrale Systemereignisse und Systemfehler mit geschrieben werden. Relevant sind hier folgende Dateien: 

  • <contextNameDerWebanwendung>\PPP.log: Anwendungs-Log der Webanwendung der PICTURE-Prozessplattform. Primäre Anlaufstelle für Fehlersuche. Der konkrete Pfad dieser Datei wird definiert in der Datei log4j.xml im Konfigurationsverzeichnis der PPP-Webanwendung.

  • catalina.<yyyy-mm-dd>.log: Zentrale Log-Datei des Tomcat-Servers, in welchem die o.g. Webanwendung betrieben wird. Hier werden Fehler protokolliert, die aus technischen Gründen nicht in der o.g. Datei protokolliert werden können (z.B. Fehler, die während des Startens bzw. Stoppens der Webanwendung auftreten. 

  • localhost.<yyyy-mm-dd>.log: In dieser Datei lassen sich i.d.R. Hinweise auf Fehler finden, sie so schwerwiegend sind, dass sie bereits auftreten, bevor der Startvorgang der PPP-Webanwendung eingeleitet wurde (z.B. Einsatz einer inkompatiblen Version des Java Runtime Environment).

Überwachung des Systems

Zur Sicherstellung der Verfügbarkeits-Anforderungen an die PPP sollte die Verfügbarkeit der Webanwendung sowie der benötigten Drittsoftware mittels geeigneter Werkzeuge kontinuierlich überprüft werden. Somit können im Falle eines Ausfalls einer Komponente oder des gesamten Systems die verantwortlichen Personen zeitnah informiert werden und Maßnahmen zur Wiederherstellung der Verfügbarkeit ergriffen werden.

Wir empfehlen die Überwachung der folgenden Dienste:

  • Tomcat-Server

  • MariaDB-Server

Einspielen von Programm-Aktualisierungen

Gehen Sie zum Einspielen von Programm-Aktualisierungen, die wir über die Website https://download.prozessplattform.de/ppp bereitstellen, nach den folgenden Checklisten vor.

Vorbereitung (nur falls DB-Migration notwendig)

  • DB-Backup anfertigen und als separates DB-Schema einspielen

  • Probelauf der Datenbankmigration auf Basis der o.g. DB-Kopie durchführen (Beachten Sie die Migrationshinweise)

  • Log-Datei des Migrationstool auswerten

  • bei Fehlermeldungen mit dem PICTURE-Support Rücksprache halten und Klärung herbeiführen

Durchführung

  • DB-Backup anfertigen

  • Backup von Konfigurations- und Lizenzdateien anfertigen

  • Backup von Uploads anfertigen

  • Tomcat herunterfahren

  • alte WAR-Datei entfernen

  • expandiertes Verzeichnis der Webanwendung entfernen

  • DB-Migrations-Tool ausführen (Beachten Sie die Migrationshinweise)

  • Log-Datei des Migrationstool auswerten. Bei Fehlermeldungen ggf. Aktualisierung abbrechen, DB-Backup wieder einspielen und an PICTURE-Support wenden.

  • ggf. Konfigurations- und Lizenzdateien aktualisieren

  • neue WAR-Datei einspielen

  • Tomcat starten