Zum Inhalt

Admin.migrationshinweise

In diesem Kapitel erhalten Sie wichtige Hinweise für die Migration von einer imperia-Version zum nächst höheren (Major-)Release.

Im Gegensatz zum Installationshandbuch, wo Sie Anleitungen zur allgemeinen Vorbereitung und Durchführung einer Migration bzw. zur Erst-Installation erhalten, finden Sie hier konkrete Hinweise zu den einzelnen Versionen auf diese Sie migrieren bzw. upgraden möchten.

Generell unterstützen wir im Support die aktuelle Version der letzten 2 Major-Releases. Bsp.: "End-of-Lifetime" für imperia 10 ist demnach erst bei Erscheinen von imperia 12.


Zusammenfassung

Update Update-Hinweise, die ab dieser Version gültig sind.
Update von i10.2.3 auf i10.2.4 Mit imperia 10.2.4 verfügt das Skript perl site_rebuild_db.pl -m -t -b nun über weitere Parameter (-m für "Minimaler Neuaufbau").

Lesen Sie dazu auch im Admin-Handbuch site_rebuild_db.pl.

Volltextsuche ignoriert Base64 enkodierte, interne Daten. Optional deaktivierbar mit der Index.conf-Variable: keepbase64content
Update von i10.2.1 auf i10.2.2 Mit der Version 10.2.2 gab es Änderungen in der Datenbank. Nach dem Update müssen Sie diese mit site_doctree_admin.pl -U neu aufbauen.
Dies erfolgt in Ihrem System unter ./imperia.de/site/bin/site_doctree_admin.pl -U.
Update von i10.2.0 auf i10.2.1 Aktualisieren Sie – falls möglich – Ihre SQLite auf eine Version >3.8.3. Sie verbessern damit u.a. die Suchergebnisse im Dokumenten-Browser.
Update von i10.1 auf i10.2 Mit einem Update auf i10.2 ist eine Hermes.conf Pflicht.
Wichtig: Das Skript wird beim Update/bei einer Erstinstallation NICHT automatisch ausgeführt.

Um sicherzustellen, dass diese auch generiert wird, führen Sie folgende Schritte durch:

1. Führen Sie das Skript site/bin/site_hermes_plugins_list.pl aus:
Windows: C:\Strawberry\perl\bin\perl.exe C:/imp/projects/926/webs/dev/site_hermes_plugins_list.pl -g -q -i Monitor\|Analyzer
UNIX: perl /imp/projects/926/webs/dev/site/bin/site_hermes_plugins_list.pl -g -q -i Monitor\|Analyzer
Bitte beachten
Der Backslash muss vorangestellt werden, damit die Shell das Symbol | nicht als Pipe interpretiert.
Dieses Skript erzeugt nicht mehrere parallele Hermes-Worker, sondern nur eine Instanz mit ALLEN Plug-ins.

2. Kopieren Sie den Output der Liste manuell in die site/config/hermes.conf.sample:
perl site/bin/site_hermes_plugins_list.pl > site/config/hermes.conf.sample

3. Ändern Sie hermes.conf.sample zu hermes.conf ab.

Bitte beachten
Folgende Hinweise sind für die Weiterarbeit mit den Plug-ins relevant:
Das Aufteilen der Hermes-Worker ist nicht ganz trivial - zumindest nicht in allen Fällen! Lesen Sie daher auch die generelle Dokumentation unter: site/config/hermes.conf.sample
Die Anwendung des Hermes-Dienstes wird im Admin-Handbuch ausführlichst beschrieben.
Update von 10.0.0 auf 10.0.3 Bei Updates von imperia 10.0.0-10.0.3 müssen Sie unter Umständen die Datenbank neu aufbauen (mit site_doctree_admin.pl -U), falls es bei Ihnen Probleme mit der Reihenfolge der Master- und Copyseiten im Dokumenten-Browser gibt oder es zu Berechtigungsproblemen kommt.
___

Version 10.2.3

  • In 10.2.2 und 10.2.3 gab es Änderungen in der Datenbank. Nach dem Update müssen Sie diese mit site_doctree_admin.pl -U neu aufbauen.
    Dies erfolgt in Ihrem System unter ./imperia.de/site/bin/site_doctree_admin.pl -U.

  • Volltextsuche ignoriert Base64 enkodierte, interne Daten. Optional deaktivierbar mit der Index.conf-Variable: keepbase64content

Version 10.2.2

In 10.2.2 und 10.2.3 gab es Änderungen in der Datenbank. Nach dem Update müssen Sie diese mit site_doctree_admin.pl -U neu aufbauen. Dies erfolgt in Ihrem System unter ./imperia.de/site/bin/site_doctree_admin.pl -U.

Version 10.2.1

Aktualisieren Sie – falls möglich – Ihre SQLite auf eine Version >3.8.3. Sie verbessern damit u.a. die Suchergebnisse im Dokumenten-Browser.

Version 10.2

Mit einem Update auf i10.2 ist eine Hermes.conf Pflicht.

Um sicherzustellen, dass diese auch generiert wird, führen Sie folgende Schritte durch:

Version 10.1.3

Keine besonderen Hinweise vorhanden.

Version 10.1.2

Keine besonderen Hinweise vorhanden.

Version 10.1.1

Keine besonderen Hinweise vorhanden.

Version 10.1.0

Migration von 10.0.x auf 10.1

Die Migration von 10.0.4 auf imperia 10.1 unterscheidet sich nicht von einem Update. Sie stoppen die Hermesdienste, führen das Perlskript install.pl auf Ihre imperia-Instanzen aus und starten anschließend den Webserver neu.

Migration von 9.2.x auf 10.1

Wie bei jedem neuen Major-Release, erfordert ein Upgrade auf imperia 10.1 eine Migration des Datenkbankschemas. Andere Daten müssen nicht migriert werden, sofern Sie von der neuesten Version von imperia 9 kommen.
Ein direktes Upgrade von Imperia 8.6 kann evtl. funktionieren, wird aber von Imperia nicht supportet.

Schema-Upgrade Datenbank

Wie schon bei früheren Versionen, wird das Datenbankschema auf imperia 10.1 mit dem Skriptaufruf site/bin/site_doctree_admin.pl --upgrade --auto aktualisiert. Die Option --auto ist neu in imperia 10.1 und bewirkt, dass das Skript - soweit notwendig - alle Tabellen automatisch neu aufbaut. Dies ist in erster Linie für Installationen mit Datenhaltung im Dateisystem und der Embedded-Datenbank SQLite3 interessant.

Wichtig

*imperia 10.1* verwendet in den Tabellendefinitionen Fremdschlüssel. Falls Sie kein Client-Server-RDBMS sondern die Embedded-Datenbank SQLite3 verwenden, sollten Sie bei manueller Manipulation der Datenbank unbedingt daran denken, dass Sie am Anfang Ihrer Session Fremdschlüssel in SQLite3 mit dem Statement `pragma foreign_keys on` aktivieren, um eine Korrumpierung Ihrer Daten zu vermeiden.

Upgrade User-Management

Das User-Management erfordert keine Migration. Sie sollten allerdings bedenken, dass die Primärquelle für alle User- und Gruppendaten nun die Datenkbank für die Dokumentenhaltung ist. Infolgedessen, werden alle Anmeldeversuche vor einem Upgrade des Datenbankschemas scheitern.

  • Lokales User-Management:
    Sie können jederzeit einen Neuaufbau der User- und Gruppendaten in der Datenbank mit dem Skriptaufruf site/bin/site_rebuild_db --todo --batch --um-only erzwingen.

    Wichtig

    Aus Sicherheitserwägungen werden fehlgeschlagene Logins aufgrund eines inkompatiblen Datenbankschemas nicht über die Oberfläche gemeldet, sondern sind nur aus dem Error-Log des Web-Servers ersichtlich.

  • LDAP:
    Das Format der Konfigurationsdatei site/bin/LDAP.conf hat sich geringfügig geändert. Der Installer passt die Datei automatisch an das neue Format an. Die Systemvariablen UMLIGHT_PLUGIN und DATABASE_STORAGE_PLUGIN werden nicht mehr benötigt. imperia wird die neue Systemvariable UM_PROVIDERS automatisch auf “LDAP” setzen, wenn in Ihrer Installation LDAP-Authentifizierung aktiviert ist.
    Nach dem Datenbank-Upgrade, sowie nach jeder Änderung der Gruppenstruktur in Ihrem LDAP, sollten Sie die LDAP-Daten mit dem Kommando site/bin/site_replicate_um.pl --backend=LDAP in imperia replizieren. Die Replizierung findet ebenfalls regelmäßig um 01:00 Uhr nachts statt. Sie können diese Zeit auch mit der neuen Systemvariable UM_REPLICATION_EXEC_TIME (Format HH:MM oder “no”, um die automatische Replizierung abzuschalten) Ihren Bedürfnissen entsprechend setzen.

    Wichtig

    Mit der zusätzlichen Option --debug erzeugen Sie mehr informative Ausgaben des Replizierungsskripts.

    Durch Setzen der Umgebungsvariablen LDAP_DEBUG auf einen wahren Wert, aktivieren Sie in allen Bereichen von imperia informative Debugausgaben.

Perl-Code anpassen

Die umfangreichste API-Änderung in imperia 10 ist das API des User- und Gruppen-Managements. Allerdings werden die alten Klassendateien Roles.pm, Users.pm und Groups.pm vom Installer absichtlich nicht angetastet und funktionieren für die wichtigsten lesenden Zugriffe auf die User- und Gruppendaten weiter.

Nichtsdestotrotz sollten Sie existierenden Perl-Code an das neue API anpassen. Konsultieren Sie hierfür den “Hitchhiker's Guide To The New User Management in imperia 10.1” in der Datei site/docs/UM-i10.txt für erschöpfende Informationen. Der an das neue API angepasste Perl-Code wird in aller Regel kürzer, besser lesbar und stabiler sein.

Version 10.0.4

Keine besonderen Hinweise vorhanden.

Version 10.0.3

Bei Migrationen von imperia 10.0.0 – 10.0.3 müssen Sie unter Umständen die Datenbank neu aufbauen (mit site_doctree_admin.pl -U), falls es bei Ihnen Probleme mit der Reihenfolge der Master- und Copyseiten im Dokumenten-Browser gibt oder es zu Berechtigungsproblemen kommt.

Version 10.0.2.1

Keine besonderen Hinweise vorhanden.

Version 10.0.2

Keine besonderen Hinweise vorhanden.

Version 10.0.1

Keine besonderen Hinweise vorhanden.

Version 10

  • Upgraden Sie auf die aktuellste Version von imperia 9.2 bevor Sie auf imperia 10 migrieren.
  • Die LDAP-Anbinding in imperia 10 wurde vollständig überarbeitet. Starten Sie im Falle von Problemen bitte das Skript site_replicate_um.pl --backend=LDAP
  • Erweiterte Zugriffskontrolle: Insbesondere für Zielsysteme lässt sich die Zugriffskontrolle wie in Apache 2.4 über Rulesets einstellen. Kopieren Sie hierzu die Datei /site/config/access.conf.sample und passen Sie sie an die eigenen Bedürfnisse an.
  • Schema-Upgrade Datenbank: Wie schon bei früheren Versionen, wird das Datenbankschema auf imperia 10 mit dem Skriptaufruf site/bin/site_doctree_admin.pl --upgrade --auto aktualisiert. Die Option --auto ist neu in imperia 10 und bewirkt, dass das Skript - soweit notwendig - alle Tabellen automatisch neu aufbaut. Dies ist in erster Linie für Installationen mit Datenhaltung im Dateisystem und der Embedded-Datenbank SQLite3 interessant.

    Wichtig

    imperia 10 verwendet in den Tabellendefinitionen Fremdschlüssel. Falls Sie kein Client-Server-RDBMS sondern die Embedded-Datenbank SQLite3 verwenden, sollten Sie bei manueller Manipulation der Datenbank unbedingt daran denken, dass Sie am Anfang Ihrer Session Fremdschlüssel in SQLite3 mit dem Statement pragma foreign_keys on aktivieren, um eine Korrumpierung Ihrer Daten zu vermeiden.

  • Die umfangreichste API-Änderung in imperia 10 ist das API des User- und Gruppen-Managements. Allerdings werden die alten Klassendateien Roles.pm, Users.pm und Groups.pm vom Installer absichtlich nicht angetastet und funktionieren für die wichtigsten lesenden Zugriffe auf die User- und Gruppendaten weiter.
    Nichtsdestotrotz sollten Sie existierenden Perl-Code an das neue API anpassen. Konsultieren Sie hierfür den “Hitchhiker's Guide To The New User Management in imperia 10.1” in der Datei site/docs/UM-i10.txt für erschöpfende Informationen. Der an das neue API angepasste Perl-Code wird in aller Regel kürzer, besser lesbar und stabiler sein.

  • In imperia 9 personalisierte Dashboards werden in Version 10 nicht übernommen. Grund dafür ist eine Anpassung der Dashboards, um die Konfigurationsmöglichkeiten der Widgets erweitern zu können.
    Lesen Sie auch Upgrade User-Management.

  • Wenn imperia 10 über ein existentes imperia 9 System installiert wird, wird ein sog. "Kompatibilitätslayer" mit installiert.
    Dieser Kompatibilitätslayer interpretiert noch einige der System-Conf-Variablen, die es in imperia 10 nicht mehr gibt.
    Somit können unter anderem Projektskripte weiter funktionieren. In einem "frischen" imperia 10-System stehen diese Variablen nicht mehr zur Verfügung.
    Bitte beachten Sie, dass der Kompatibilitätslayer nur mit eingeschränkter Funktionalität ausgestattet ist, um den Umstieg zu erleichtern.

Version 9.2.12

Im MAM werden nun auch Vorschaubilder von SVG-Dateien generiert. Dazu muss allerdings die folgende System.conf-Variable gesetzt werden: MAM_THUMBNAIL_SVG_TO_MIME = 'png'
Im Falle von Icons eigens erstellter Menüpunkte, müssen diese neu ausgewählt werden, d.h. die Ersetzungen müssen manuell vorgenommen werden.

Version 9.2

  • Mit imperia 9.2 wurde der Zugriff auf das Benutzermanagement beschleunigt. Nach dem Update führen Sie bitte das Skript site_doctree_admin.pl -U aus.
    Lesen Sie dazu auch die Release 9.2-Dokumentation.

  • Mit der Einführung des HTML5-Grids werden die Konfigurationsdialog der Workflow-Schritte in regulärem HTML definiert. Eigene Konfigurationsdialoge müssen deshalb mit Hilfe des Skripts site/bin/site_migrate_fxml_to_html.pl migriert werden. Jedes Plug-in muss einzeln migriert werden!
    Zusätzlich benötigen Sie die Perl-Module XML::LibXML und XML::LibXSLT, damit die Migration funktioniert. Diese Module sollten Sie vor der Migration Ihrer Konfigurationsdialoge installieren.
    Lesen Sie dazu auch das Kapitel Workflows.

Version 9

  • Wenn imperia 9 über ein existentes imperia 8 System installiert wird, wird ein sog. "Kompatibilitätslayer" mit installiert.
    Dieser Kompatibilitätslayer interpretiert noch einige der System-Conf-Variablen, die es in imperia 9 nicht mehr gibt.
    Somit können unter anderem Projektskripte weiter funktionieren. In einem "frischen" imperia 10-System stehen diese Variablen nicht mehr zur Verfügung.
    Bitte beachten Sie, dass der Kompatibilitätslayer nur mit eingeschränkter Funktionalität ausgestattet ist, um den Umstieg zu erleichtern.

  • in allen Perl-Erweiterungen empfehlen wir ein Codegerüst, das ungefähr so aussieht:

    use strict;
    
    use Imperia;
    
    use vars qw ($new $metainfo);
    


    An die wichtigsten Objekte kommen Sie mit folgenden Statements:

    my $system_conf = $imperia->common->
    {system_conf}
    
    ;
    my $doctree_plugin = $imperia->common->
    {doc_tree}
    
    ;
    my $user_info = $imperia->common->
    {user}
    
    ;
    


    Der Aufruf der Variablen erfolgt dann entsprechend:

    my $liveServer = $system_conf->
    {'ABS-DOC-ROOT'}
    
    ;
    my $doc_root = $system_conf->
    {'DOCUMENT-ROOT'}
    
    ;
    


    Restlicher Code ...

    $new = "Ergebnis";
    


    Weitere Methoden für Perl Erweiterungen finden Sie unter perldoc site/modules/core/Imperia.pm.