Aktualisieren

Es gibt zwei verschiedene Szenarien, um eine neuere OTRS-Version zu erhalten:

  • Patch-Level-Update: Sie verwenden OTRS 8 oder OTRS und möchten die neueste OTRS Version haben.

  • Großes Upgrade: Sie verwenden ein OTRS 7 und möchten die neueste OTRS Version haben.

Aktualisierung von einer früheren Version von OTRS 8 oder OTRS

Sie können direkt von einem früheren Patch-Level-Release auf das neueste verfügbare Patch-Level-Release aktualisieren.

Bemerkung

Es wird empfohlen, zuerst ein Test-Update auf einem separaten Testsystem durchzuführen.

Von OTRS 7 umsteigen

Sie können von jedem OTRS 7 Patch Level-Release auf das neueste verfügbare OTRS Patch-Level-Release aktualisieren.

Bemerkung

OTRS wird durch das Customer Solutions Team aktualisiert. Bitte kontaktieren Sie uns über support@otrs.com oder im OTRS Portal.

Umstieg von OTRS 6 oder früher

OTRS kann nicht von OTRS 6 oder früher direkt auf OTRS aufgerüstet werden. Stattdessen müssen Upgrades auf alle verfügbaren Hauptversionen nacheinander durchgeführt werden. Wenn Sie beispielsweise von OTRS 5 kommen, muss OTRS zuerst auf OTRS 6, dann auf OTRS 7 und schließlich auf OTRS aktualisiert werden.

Bemerkung

OTRS wird durch das Customer Solutions Team aktualisiert. Bitte kontaktieren Sie uns über support@otrs.com oder im OTRS Portal.

Schritt 1: Alle relevanten Dienste und den OTRS Deamon beenden

Stellen Sie sicher, dass keine weiteren Dienste oder Cron-Jobs mehr vorhanden sind, die versuchen, auf OTRS zuzugreifen. Dies hängt von Ihrer Dienstkonfiguration und der OTRS-Version ab.

Die folgenden systemctl -Befehle sind nur Beispiele und können sich auf dem Zielsystem unterscheiden, wenn es einen anderen Mailer oder Webserver verwendet.

root> systemctl stop postfix
root> systemctl stop apache2
root> systemctl stop otrs-daemon
root> systemctl stop otrs-webserver

Schritt 2: Dateien und Datenbank sichern

Erstellen Sie eine Sicherung der folgenden Dateien und Ordner:

  • Kernel/Config.pm

  • Kernel/WebApp.conf

  • var/*

  • Dateien, die nicht Teil des offiziellen Release-Pakets sind, aber manuell dem System hinzugefügt werden (benutzerdefinierte Sprachdateien, Logos, CSS-Stylesheets, XML-Konfiguration usw.)

  • ebenfalls die Datenbank

Bemerkung

Es wird empfohlen, eine aktuelle Liste von Dateien zu haben, die manuell hinzugefügt oder im System geändert werden.

Warnung

Fahren Sie nicht ohne eine vollständige Sicherung Ihres Systems fort. Verwenden Sie dazu das Skript Datensicherung.

Schritt 3: Das neue Release installieren

Sie können entweder otrs-patchlevel-update-x.y.z.tar.gz oder otrs-patchlevel-update-x.y.z.tar.bz2 erhalten. Entpacken Sie das Quellarchiv (z. B. mit tar ``) in das Verzeichnis ``/opt und erstellen Sie einen symbolischen Link /opt/otrs , der auf /opt/otrs-x.y.z verweist.

Vergessen Sie nicht die Versionsnummern zu ersetzen!

Bemerkung

Paket bzip2 ist in einigen Systemen standardmäßig nicht installiert. Stellen Sie sicher, dass bzip2 installiert ist, bevor Sie otrs-patchlevel-update-x.y.z.tar.bz2 entpacken.

Befehl für entpacken von otrs-patchlevel-update-x.y.z.tar.gz:

root> tar -xzf otrs-patchlevel-update-x.y.z.tar.gz -C /opt

Befehl für entpacken von otrs-patchlevel-update-x.y.z.tar.bz2:

root> tar -xjf otrs-patchlevel-update-x.y.z.tar.bz2 -C /opt

Es wird empfohlen, einen symbolischen Link mit dem Namen /opt/otrs zu erstellen, der immer auf die neueste OTRS-Version verweist. Die Verwendung eines symbolischen Links erleichtert die Verwaltung der OTRS-Updates, da Sie das Verzeichnis der vorherigen Version unberührt lassen können, nur der symbolische Link muss geändert werden.

Führen Sie diesen Befehl aus, um einen symbolischen Link zu erstellen:

root> ln -fns /opt/otrs-x.y.z /opt/otrs

Wenn Sie das Update rückgängig machen müssen, können Sie das Ziel des symbolischen Links ändern, wenn Sie das Migrationsskript bereits in Schritt 4 nicht ausgeführt haben. Wenn das Migrationsskript ausgeführt wurde, muss die Datenbank im Falle eines Rollbacks aus dem Backup wiederhergestellt werden.

Alte Konfigurationsdateien wiederherstellen

Copy the following files from the backup created in step 2 into the same destination:

  • Kernel/Config.pm

  • Kernel/WebApp.conf

  • Dateien, die nicht Teil des offiziellen Release-Pakets sind, aber manuell dem System hinzugefügt werden (benutzerdefinierte Sprachdateien, Logos, CSS-Stylesheets, XML-Konfiguration usw.)

Warnung

Copy only custom files added by you manually, not the files shipped with OTRS. Overwriting the default files may lead to issues after the update.

Suchen Sie nach versteckten Dateien mit dem Befehl ls -a wie .fetchmailrc, .mailfilter, .procmailrc im vorherigen OTRS-Verzeichnis. Wenn diese Dateien ohne die Erweiterung .dist existieren, kopieren Sie sie mit dem Befehl cp -p in den OTRS-Ordner, um die Berechtigungen zu erhalten.

Artikeldaten wiederherstellen

Wenn Sie OTRS so konfiguriert haben, dass Artikeldaten im Dateisystem gespeichert werden, müssen Sie den Ordner article nach /opt/otrs/var/ (oder in dem in der Systemkonfiguration angegebenen Ordner) wiederherstellen.

Bereits installierte Standardstatistik wiederherstellen

Wenn Sie zusätzliche Pakete mit Standardstatistiken haben, müssen Sie die XML-Statistikdateien mit dem Suffix *.installed in /opt/otrs/var/stats wiederherstellen.

root> cd OTRS-BACKUP/var/stats
root> cp *.installed /opt/otrs/var/stats

Dateiberechtigungen festlegen

Führen Sie den folgenden Befehl aus, um die Datei- und Verzeichnisberechtigungen für OTRS festzulegen. Es wird versucht, die richtigen Gruppen- und Benutzereinstellungen zu ihrem Setup zu ermitteln.

root> /opt/otrs/bin/otrs.SetPermissions.pl

Erforderliche Programme und Perl-Module installieren

Verwenden Sie das folgende Skript, um einen Überblick über alle installierten und erforderlichen CPAN-Module und andere externe Abhängigkeiten zu erhalten.

root> perl /opt/otrs/bin/otrs.CheckEnvironment.pl
Checking for Perl Modules:
  o Archive::Tar.....................ok (v1.90)
  o Archive::Zip.....................ok (v1.37)
  o Crypt::Eksblowfish::Bcrypt.......ok (v0.009)
...

Bemerkung

Bitte beachten Sie, dass OTRS eine funktionierende Perl-Installation mit allen core Modulen wie dem Modul version erfordert. Diese Module werden vom Skript nicht explizit geprüft. Auf einigen Systemen wie RHEL, die die Perl-Core-Pakete standardmäßig nicht installieren, müssen Sie möglicherweise ein perl-core-Paket installieren.

Um die erforderlichen und optionalen Pakete zu installieren, können Sie entweder CPAN oder den Paketmanager Ihrer Linux-Distribution verwenden.

Führen Sie diesen Befehl aus, um einen Installationsbefehl zum Installieren der fehlenden Abhängigkeiten zu erhalten:

root> /opt/otrs/bin/otrs.CheckEnvironment.pl --list

Für OTRS muss eine unterstützte stabile Version von Node.js installiert sein. Bitte beachten Sie die Node.js installation instructions.

Schritt 4: Migrationsskript ausführen

Das Migrationsskript führt viele Überprüfungen auf Ihrem System durch und gibt Ihnen Ratschläge, wie Sie fehlende Perl-Module usw. installieren können, falls dies erforderlich ist. Erfolgten alle Prüfungen, werden die notwendigen Migrationsschritte durchgeführt.

Bemerkung

Bitte führen Sie dieses Skript auch im Falle von Patch-Level-Updates aus.

Migrationsskript ausführen:

otrs> /opt/otrs/scripts/DBUpdate.pl

Warnung

Setzen Sie den Aktualisierungsvorgang nicht fort, wenn dieses Skript nicht ordnungsgemäß für Sie funktioniert hat. Andernfalls können Fehlfunktionen oder Datenverlust auftreten.

Das Migrationsskript überprüft auch, ob ACLs und Systemkonfigurationseinstellungen korrekt sind. Im Falle einer ungültigen Systemkonfigurationseinstellung bietet das Skript eine Möglichkeit zur Korrektur, indem es aus einer Liste möglicher Werte ausgewählt wird. Wenn das Skript in einem nicht interaktiven Modus ausgeführt wird, werden ungültige Einstellungen automatisch korrigiert. Wenn dies fehlschlägt, werden Sie aufgefordert, die Einstellung nach der Migration manuell zu aktualisieren.

Wenn veraltete ACLs vorhanden sind, kann das System sie nicht automatisch korrigieren. Sie müssen vom Administrator korrigiert werden. Weitere Informationen finden Sie im letzten Schritt für manuelle Änderungen.

Schritt 5: Installierte Pakete aktualisieren

Bemerkung

Pakete für OTRS 7 sind nicht kompatibel mit OTRS und müssen aktualisiert werden.

Sie können den folgenden Befehl verwenden, um alle installierten Pakete zu aktualisieren. Dies funktioniert für alle Pakete, die in Online-Repositorys verfügbar sind. Sie können andere Pakete später über den Paketmanager aktualisieren (dies erfordert einen laufenden OTRS-Daemon).

otrs> /opt/otrs/bin/otrs.Console.pl Admin::Package::UpgradeAll
otrs> /opt/otrs/bin/otrs.Console.pl Admin::Package::ReinstallAll

Schritt 6: Ihre Dienste starten

Danach können die Services gestartet werden. Dies hängt von Konfiguration Ihrer Services ab. Hier ein Beispiel:

root> systemctl start postfix
root> systemctl start apache2

Bemerkung

Der OTRS Daemon ist für den korrekten Betrieb von OTRS erforderlich, beispielsweise für das Senden von E-Mails. Bitte aktivieren Sie den Daemon wie im nächsten Schritt beschrieben.

Schritt 7: OTRS-Daemon und Webserver starten

Die OTRS-Webanwendung wird beim ersten Start für die neue Version erstellt. Dies kann eine Weile dauern und verursacht eine Zeitüberschreitung, wenn es mit den systemd-Befehlen gestartet wird. Um dies zu verhindern, starten Sie den OTRS-Webserver einmal als „ OTRS ‚` -Benutzer, um die OTRS-Webanwendung zu erstellen, und stoppen Sie sie anschließend. Dann kann es mit den systemd-Befehlen als „ root „ user gestartet werden.

otrs> ~/bin/otrs.WebServer.pl --deploy-assets
otrs> ~/bin/otrs.WebServer.pl --stop

OTRS enthält Beispiel Systemd-Konfigurationsdateien, mit denen sichergestellt werden kann, dass der OTRS-Daemon und der Webserver nach dem Systemstart automatisch gestartet werden.

root> systemctl start otrs-daemon
root> systemctl start otrs-webserver

Jetzt können Sie sich in Ihrem System anmelden.

Schritt 8: Manuelle Migrationsaufgaben und -änderungen

Warnung

Lesen Sie diesen Schritt sorgfältig durch und wenden Sie die Maßnahmen nur an, wenn sie für Ihr System relevant sind.

Die Systemwartungsfunktion wurde gestrichen.

Mit OTRS 8 ist eine neue Standard-Passwortrichtlinie für Agenten und Kundenbenutzer in Kraft getreten. Die Regeln der Passwortrichtlinien können in der Systemkonfiguration geändert werden (PreferencesGroups###Password und CustomerPersonalPreference###Password).

Regel zur Passwort-Richtlinie

Standard

PasswordMinSize

8

PasswordMin2Lower2UpperCharacters

Ja

PasswordNeedDigit

Ja

PasswordHistory

10

PasswordTTL

30 Tage

PasswordWarnBeforeExpiry

5 Tage

PasswordChangeAfterFirstLogin

Ja

Es ist auch möglich, einige Ausnahmen von der Passwortrichtlinie für Agenten oder Kundenbenutzer hinzuzufügen. Bitte überprüfen Sie die folgenden Konfigurationsoptionen für Details:

  • PasswordPolicy::ExceptAgentPasswordComplexity

  • PasswordPolicy::ExceptAgentPasswordTTL

  • PasswordPolicy::ExceptAgentPasswordHistory

  • PasswordPolicy::ExceptAgentPasswordChangeAfterFirstLogin

  • PasswordPolicy::ExceptCustomerPasswordComplexity

  • PasswordPolicy::ExceptCustomerPasswordTTL

  • PasswordPolicy::ExceptCustomerPasswordHistory

  • PasswordPolicy::ExceptCustomerPasswordChangeAfterFirstLogin

Da die alten Bildschirmmasken der Kundenoberfläche nicht mehr vorhanden sind, müssen einige ACLs vom Administrator manuell korrigiert werden. Das Migrationsskript hat Sie bereits informiert, wenn dies der Fall ist.

Betroffene ACLs sind solche, die sich auf eine nicht vorhandene Bildschirmmaske für die Kundenoberfläche in ihrer „Action“-Einstellung beziehen. Diese Frontend-Regel muss durch eine entsprechende Endpunkt-Regel ersetzt werden. Eine Tabelle mit möglicher Zuordnung finden Sie nachfolgend.

Aktion

Endpunkt

AgentAppointmentCalendarOverview

Kein Ersatz (Funktion entfällt)

AgentLinkObject

Kein Ersatz (Funktion entfällt)

AgentSplitSelection

AgentFrontend::TicketArticle::Action::Split

AgentTicketBounce

AgentFrontend::TicketArticle::Action::Redirect

AgentTicketBulk

AgentFrontend::TicketList::Bulk

AgentTicketClose

AgentFrontend::Ticket::Action::Close

AgentTicketCompose

AgentFrontend::TicketArticle::Action::Reply

AgentFrontend::TicketArticle::Action::ReplyAll

AgentTicketCustomer

AgentFrontend::Ticket::Action::Customer

AgentTicketEmail

AgentFrontend::TicketCreate::Email

AgentTicketEmailOutbound

AgentFrontend::Ticket::Action::EmailOutbound

AgentTicketEmailResend

Kein Ersatz (Funktion entfällt)

AgentTicketForward

AgentFrontend::TicketArticle::Action::Forward

AgentTicketFreeText

AgentFrontend::Ticket::Action::FreeText

AgentTicketHistory

AgentFrontend::Ticket::Action::TicketHistory

AgentTicketLink

AgentFrontend::Ticket::Action::Link

AgentTicketLock

AgentFrontend::Ticket::Action::Lock

AgentFrontend::Ticket::Action::Unlock

AgentTicketMerge

AgentFrontend::Ticket::Action::Merge

AgentTicketMove

AgentFrontend::Ticket::Action::Move

AgentTicketNote

AgentFrontend::Ticket::Action::Note

AgentFrontend::TicketArticle::Action::ReplyToNote

AgentTicketOwner

AgentFrontend::Ticket::Action::Owner

AgentTicketPending

AgentFrontend::Ticket::Action::Pending

AgentTicketPhone

AgentFrontend::TicketCreate::Phone

AgentTicketPhoneInbound

AgentFrontend::Ticket::Action::PhoneCallInbound

AgentTicketPhoneOutbound

AgentFrontend::Ticket::Action::PhoneCallOutbound

AgentTicketPlain

AgentFrontend::TicketArticle::Action::Plain

AgentTicketPrint

AgentFrontend::Ticket::Action::Print

AgentFrontend::TicketArticle::Action::Print

AgentTicketPriority

AgentFrontend::Ticket::Action::Priority

AgentTicketProcess

AgentFrontend::TicketCreate::Process

AgentFrontend::ProcessTicketNextStep

AgentTicketResponsible

AgentFrontend::Ticket::Action::Responsible

AgentTicketSearch

Kein Ersatz (Funktion entfällt)

AgentTicketWatcher

AgentFrontend::Ticket::Action::Watch

AgentFrontend::Ticket::Action::Unwatch

AgentTicketZoom

AgentFrontend::TicketDetailView

AgentFrontend::TicketDetailView::Property

Elasticsearch upgraden

Aktualisieren Sie Ihre Elasticsearch-Installation, wenn eine neuere Version verfügbar ist. Weitere Informationen finden Sie im Kapitel Upgrade Elasticsearch in der offiziellen Dokumentation.

Siehe auch

Die unterstützten Versionen finden Sie im Kapitel Hardware- und Software-Anforderungen.

Darüber hinaus erfordert OTRS, dass Plugins in Elasticsearch installiert werden. Wenn eine neuere Elasticsearch-Version installiert ist, müssen die Plugins entfernt und erneut installiert werden.

In Elasticsearch 7:

root> /usr/share/elasticsearch/bin/elasticsearch-plugin remove analysis-icu
root> /usr/share/elasticsearch/bin/elasticsearch-plugin remove ingest-attachment
root> /usr/share/elasticsearch/bin/elasticsearch-plugin install --batch ingest-attachment
root> /usr/share/elasticsearch/bin/elasticsearch-plugin install --batch analysis-icu

In Elasticsearch 8:

root> /usr/share/elasticsearch/bin/elasticsearch-plugin remove analysis-icu
root> /usr/share/elasticsearch/bin/elasticsearch-plugin remove ingest-attachment
root> /usr/share/elasticsearch/bin/elasticsearch-plugin install --batch analysis-icu

Bemerkung

Starten Sie Elasticsearch anschließend neu, da sonst keine Indizes aufgebaut werden.

Um die Installation von Elasticsearch zu überprüfen, können Sie den folgenden Befehl verwenden:

otrs> /opt/otrs/bin/otrs.Console.pl Maint::DocumentSearch::Check
Trying to connect to cluster...
  Connection successful.

One of the Elasticsearch options is explicitly interesting for OTRS, which is the maximum amount of open scroll contexts, that has a value of 500.

In normalen Situationen sollte dieser Wert nicht erreicht werden, aber wir empfehlen, diesen Wert wieder auf 1000 zu setzen mit der folgenden Option, die der Konfigurationsdatei elasticsearch.yml hinzugefügt werden muss:

search.max_open_scroll_context: 1000

Empfehlung: Konvertieren Sie Ihre MySQL-Datenbank

OTRS 7 und frühere Versionen unterstützten nur den utf8 MySQL-Datenbank-Zeichensatz, der nicht in der Lage ist, alle Unicode-Zeichen zu speichern. Seit OTRS 8 wird auch der Zeichensatz utf8mb4 unterstützt, wodurch diese Einschränkung aufgehoben wird. Es wird empfohlen, Ihre Datenbank nach Belieben mit dem eingebauten Migrationsskript zu konvertieren.

Wenn Sie das Migrationsskript ohne Optionen ausführen, wird nur angezeigt, wenn etwas konvertiert werden muss.

otrs> /opt/otrs/bin/otrs.Console.pl Maint::Database::MySQL::UTF8MB4Migration
The following tasks need to be done:
  - 1 table(s) need to be converted to 'DYNAMIC' row format
  - the database needs to be converted to 'utf8mb4'
  - 411 column(s) need to be converted to 'utf8mb4'
  - 156 table(s) need to be converted to 'utf8mb4'

Verwenden Sie die Option --force, um die eigentliche Migration durchzuführen.

otrs> /opt/otrs/bin/otrs.Console.pl Maint::Database::MySQL::UTF8MB4Migration --force
...

Nachdem die Migration abgeschlossen ist, müssen Sie einen neuen Schalter zur Datei Kernel/Config.pm hinzufügen, um die utf8mb4` Unterstützung zu aktivieren.

$Self->{'Database::mysql::utf8mb4'} = 1;

Bemerkung

OTRS kann im utf8-Zeichensatz betrieben werden, ohne diese Migration. Zukünftige Versionen werden jedoch nur noch den Zeichensatz utf8mb4 unterstützen. Daher muss diese Migration irgendwann durchgeführt werden.

Sichere Ausführung des Programms zulassen

Externe Programme, die von OTRS ausgeführt werden sollen, sind aus Sicherheitsgründen standardmäßig blockiert. Sie müssen das Programm in die Liste der erlaubten Programme aufnehmen, wie im Kapitel Programm sicher erlauben des Administrationshandbuchs beschrieben.

Nach oben scrollen