Update einer bestehenden Installation - Migration

Diese Seite beschreibt, wie Sie eine bestehende Installation auf eine neuere Version aktualisieren.

Vor dem Update

Beachten Sie die Update-Hinweise in den Release Notes der aktuellen Version sowie aller Versionen die zwischen der aktuellen und der bislang bei Ihnen installierten Version liegen.

Ermitteln der aktuell verwendeten Version

Um die Versionsnummer einer bestehenden Installation zu prüfen, geben Sie /info.txt hinter dem Basis-Pfad der Installation ein, z.B. https://<yourserver>/ct-smartfinder-sdi-client-webapp-%VERSION%/info.txt.

Grundsätzliches Vorgehen

Unabhängig von der jeweiligen Version können Sie ein Update des smart.finder SDI wie folgt durchführen:

Aktualisierung der Web-Applikationen

Die nachfolgende Erläuterung nimmt folgende allgemeinen Versionsbezeichnungen an:

  • [ALT] = ihre installierte smart.finder SDI Version

  • [NEU] = die neue smart.finder SDI Version

Folgende Schritte sind erforderlich:

  1. Stoppen Sie Apache Tomcat

  2. Verschieben Sie die Web-Applikationen der Version [ALT] in ein temporäres Verzeichnis.

  3. Entpacken Sie smart.finder SDI [NEU] nach [TOMCAT_HOME]/webapps (bzw. in das Autodeploy-Verzeichnis des Apache Tomcat).

  4. Überprüfen Sie, dass das Property data.directory.location in den Dateien custom-application.properties auf das von Ihnen verwendete User-Home Verzeichnis zeigt.

  5. Ergänzen Sie neue Properties in [USER_HOME]/application.properties und passen Sie ggf. bestehende Werte an. Falls neue Properties für die Version [NEU] zu ergänzen sind, ist dies weiter unten auf dieser Seite explizit erklärt.

  6. Übernehmen Sie die Capabilities Datei aus dem smartfinder-csw[ALT] in die neue Instanz. Diese finden Sie unter: smartfinder-csw[ALT]/WEB-INF/classes/capabilities/Capabilities.xml.

  7. Ergänzen Sie die Properties für den Datenbank-Zugriff im Data-Import Handler entsprechend der von Ihnen verwendeten Datenbank. Die Dateien befinden sich unter: /ct-finder-iso-webapp-[ALT]/WEB-INF/solr.home/iso/conf und beginnen mit dih-*.

  8. Starten Sie Apache Tomcat

Die Version [NEU] des smart.finder SDI steht nun grundsätzlich zur Verfügung. Im folgenden Abschnitt wird beschrieben, wie Sie die existieren Indexierungss-Jobs übernehmen können.

Aktualisierung der Indexes

smart.finder SDI besitzt zwei Cores, die die Indexes verwalten: iso und indexingmanagement. Eine Übernahme des Cores iso ist nicht notwendig, da dieser durch die erneute Ausführung der Indexierungs-Jobs wieder hergestellt werden kann.

Die Übernahme der Indexierungs-Jobs lohnt sich nur bei einer Vielzahl von Jobs. Falls Sie nur wenige Jobs verwalten, können Sie diese in der neuen Instanz auch händisch neu eintragen.
Wenn Sie solr.home außerhalb der Webapp smartfinder-search gespeichert haben, müssen Sie den hier lokalisierten Core iso löschen und die neuen Dateien von /solr.home/iso hierhin kopieren.

Zur Übernahme der Indexierungs-Jobs aus der Version [ALT] gehen Sie wie folgt vor:

  1. Öffnen Sie http://[HOST]:[PORT]/smartfinder-search [NEU] und melden Sie sich als Administrator an.

  2. Wählen Sie den Menüpunkt "Core-Admin"

  3. Wählen Sie den Core indexingmanagement aus

  4. Klicken und bestätigen Sie "Unload"

  5. Löschen Sie nun alle Inhalte im NEUEN Solr Home Verzeichnis unter folgendem Pfad: /solr.home/indexingmanagement/data/*

  6. Kopieren Sie den alten Index auf die neue Instanz:

    • ALTE VERSION/Instanz: /solr.home/indexingmanagement/data/index

    • NEUE Instanz: /solr.home/indexingmanagement/data/index

      Danach sieht die Dateistruktur in der neuen Instanz wie folgt aus:

      /solr.home
          /indexingmanagement
              /conf
              /data
                  /index
  7. Öffnen Sie http://[HOST]:[PORT]/smartfinder-search

  8. Wählen Sie den Menupunkt "Core-Admin"

  9. Klicken Sie "Add Core", ergänzen Sie folgende Werte im Dialogfenster, und bestätigen Sie anschließend mit "Add Core":

    name = indexingmanagement
    instanceDir = indexingmanagement
  10. Der neue Core wurde hinzugefügt, auf der rechten Seite steht unter Index→numDocs die Anzahl der Indexierungs-Jobs.

  11. Rufen Sie den smart.finder SDI Client auf und öffnen Sie den Menüpunkt "Indexierungs-Jobs verwalten". Starten Sie die Indexierungs-Jobs neu, um die Zeitstempel zu aktualisieren und den iso Core neu zu befüllen.

Damit ist die Übernahme der Indexierungs-Jobs abgeschlossen.

Von smart.finder SDI 2.2.1 nach 2.2.2

Es müssen keine verpflichtenden Properties ergänzt oder geändert werden.

Von smart.finder SDI 2.2.0 nach 2.2.1

Diese Version entspricht einem vollständigen (Sicherheits-)Update.

Von smart.finder SDI 2.1.1/2.1.2 nach 2.2.0/2.2.1

Neue Properties

Es müssen keine verpflichtenden Properties ergänzt oder geändert werden.

Umbenennung

Beachten Sie die Umbenennung der .war-Dateien mit dieser Auslieferung.

Von smart.finder SDI 2.1.0 nach 2.1.1

Neue Properties

Es müssen keine verpflichtenden Properties ergänzt oder geändert werden.

Von smart.finder SDI 2.0.2 nach 2.1.0

Neue Properties

Einen Überblick über sämtliche Properties finden Sie in den Web-Applikationen jeweils in der Datei /WEB-INF/classes/default-application.properties. Folgende Properties sind für die Migration relevant und müssen in Ihrer globalen application.properties Datei ergänzt werden:

  • secman.db.jdbc.driver

  • secman.db.jdbc.url

  • secman.db.jdbc.username

  • secman.db.jdbc.password

  • secman.db.hibernate.dialect

  • secman.db.use

  • usermgr.type

  • mailing.host

  • mailing.port

  • mailing.username

  • mailing.password

  • mailing.senderaddress

Wenn der Zugriff auf die security.manager Datenbank per JNDI erfolgt ist folgende Property notwendig:

  • secman.db.jndi.name

Wenn der UserManager ldap oder hybrid ist folgende Property notwendig:

  • usermgr.ldapstorage

Die globale Datei application.properties finden Sie in ihren User-Home Verzeichnis. Dieses ist in den custom-application.properties Dateien über das Property data.directory.location definiert. Die Datei custom-application.properties finden Sie in den Web-Applikationen unter dem Pfad /WEB-INF/classes.

Eine ausführliche Erklärung der Properties finden Sie unter Konfigurationsdateien.

Von smart.finder SDI 2.0.1 nach 2.0.2

Beachten Sie für das Update auf Version 2.0.2 Folgendes:

  • Installationen mit Oracle oder Microsoft SQL Server Datenbank: nur die Backend-Services (iso, Editor und CSW) sind zu aktualisieren

  • Installationen mit PostgreSQL: Die Backend-Services und der Client sind zu aktualisieren

Durch das Update ist es erforderlich im Manager Indexierungs-Jobs den Data Import Handler erneut anzulegen und aktiv anzustoßen. Richten Sie nur den Data Import Handler ein, um die Datenbank kontinuierlich zu indexieren. Beachten Sie das neue Property catalog.name (s.u.) bei der Vergabe des Job-Namens. Eine detaillierte Anleitung zur Indexierung finden Sie im Kapitel Indexierung der Datenbank.

Hibernate-Dialekt für PostgreSQL

Falls Sie smart.finder SDI mit PostgreSQL verwenden, müssen Sie einen neuen Hibernate-Dialekt für den Zugriff auf die Datenbank konfigurieren:

db.hibernate.dialect=de.conterra.sdi.common.db.dialect.PostgreSQL9MapDialect

Nehmen Sie dies in der Datei application.properties vor. Falls Sie Metadatenbestände aus smart.finder SDI 1.x übernommen haben, führen Sie das Migrationstools erneut aus (siehe Abschnitt Migration).

Data Import Handler konifgurieren

Stellen Sie sicher, dass die Datenbank-Parameter des entsprechenden Data Import Handler korrekt definiert sind: [TOMCAT_HOME]/webapps/ct-finder-iso-webapp-[VERSION]/WEB-INF/solr.home/iso/conf.

Neues Property

Es wurde ein neues Property für den Name des lokalen Datenbestandes eingeführt:

catalog.name

Der Name des lokalen Katalogs.
Dieser Name wird in der Facette "Katalog" für die Metadatendokumente ausgegeben, die zum lokalen Datenbestand gehören, also in der Datenbank gespeichert sind.

Der Default-Wert ist: Lokaler Datenbestand

Dieses Property ist in der Datei data.directory.location=$\{user.home\}/.smartfinder/application.properties einzutragen.

schema.xml
catalog.name=Meine\ Daten

Von smart.finder SDI 2.0.0 nach 2.0.1

Um lokale Dokumente von Dokumenten aus externen Quellen unterscheiden zu können, wurde ein zusätzliches Feld dem Schema hinzugefügt. Aus diesem Grund ist der Re-Import der alten Metadaten (inkl. Benutzerinformationen) erforderlich. Mit dem Migrationstool können Sie nun auch Benutzer-/Sichtbarkeitsinformationen übernehmen.

Anpassung des Indexierungsschemas

Die angepasste Schema-Datei befindet sich nach dem Deployment im Tomcat unter /ct-finder-iso-webapp/WEB-INF/solr.home/iso/conf/schema.xml.

schema.xml
<?xml version="1.0" encoding="UTF-8" ?>
<schema name="iso" version="1.6">
    <uniqueKey>id</uniqueKey>
    <fields>
		[...]
		<field name="local" type="boolean" indexed="true" stored="true" multiValued="false" required="true" default="false"/>
		[...]
    </fields>
    <types>
		[...]
        <fieldType name="boolean" class="solr.BoolField" sortMissingLast="true" omitNorms="true"/>
		[...]
    </types>
</schema>

Falls Sie Änderungen in den Dateien /WEB-INF/solr.home/iso/conf/schema.xml vorgenommen haben, müssen Sie diese Änderungen entsprechend übernehmen. Stellen Sie sicher, dass sowohl Feldtyp boolean als auch Feld local übereinstimmen.

Existierende Indexierungsjobs bleiben erhalten, die Jobs müssen zwecks Neuindexierung nach dem Update/der Migration erneut ausgeführt werden.

Migration von smart.finder SDI 1.x zu smart.finder SDI 2.x

Dieser Abschnitt beschreibt das Vorgehen, um von smart.finder SDI mit einer Version 1.x auf den neuen smart.finder SDI ab Version 2.0.0 zu migrieren.

Ermitteln der aktuell verwendeten Version: Um die Versionsnummer einer bestehenden Installation zu prüfen, geben Sie /info.txt hinter dem Basis-Pfad der Installation ein, z.B. https://<yourserver>/smartfinderSDI/info.txt.

Migration

Ein einfaches Update einer Version der Linie 1.x auf Linie 2.x ist nicht möglich. smart.finder SDI muss auf ihrem System vollständig neu installiert werden.

Mit der smart.finder SDI Version 2.0.0 wurde die Metadatenhaltung vereinfacht. Um die bestehenden Metadaten weiterhin zu nutzen, müssen diese zunächst in die neue Datenbank überführt werden. Dazu wird ein Migrationswerkzeug mitgeliefert.

Zur Zeit werden Adress- und Bounding Box-Templates noch nicht unterstützt, sodass eine Migration nicht möglich ist.
Der thematische Browser (Themenbaum) wurde durch den Themenbaum ersetzt und muss daher zukünftig in JSON statt wie bisher in XML konfiguriert werden.

Vorgehen bei der Migration

Folgendes Vorgehen bei der Migration wird empfohlen:

  1. Exportieren Sie die Metadaten mit Besitzerinformationen aus der alten smart.finder SDI Instanz.

  2. Installieren Sie smart.finder SDI 2.x parallel zur bestehenden smart.finder SDI 1.x Installation. Ersetzen Sie die lokale HSQL-Datenbank durch eine eigene Datenbank für die Produktionsumgebung und stellen Sie sicher, dass der Austausch erfolgreich war (siehe Datenbank-Verbindung).

  3. Nun können Sie die Migration und den Import der Metadaten mit Hilfe des Migrationstools durchführen. Das Migrationstool finden Sie im Order resources der smart.finder SDI Lieferung. Kopieren Sie diesen Ordner auf den selben Host, auf dem Sie smart.finder SDI installiert haben. Führen Sie innerhalb dieses Ordners folgende Schritte aus:

    1. Kopieren Sie den JDBC Treiber für ihre Datenbank in das lib Verzeichnis

    2. Passen Sie die Konfigurationseinstellungen in der Datei config\application.properties an:

      • spring.datasource.username: Name des Datenbanknutzer

      • spring.datasource.password: Passwort des Datenbanknutzers

      • spring.datasource.url: JDBC URL (die Syntax ist von der verwendeten Datenbank abhängig)

      • spring.jpa.database-platform: Der Datenbankdialekt ihrer Plattform (abhängig von der verwendeten Datenbank)

      • spring.datasource.driver-class-name: Klassenname des JDBC Treibers (abhängig von der verwendeten Datenbank)

      • security.manager properties (diverse): Die Werte der aufgeführten Properties des security.managers müssen hier übernommen werden. Diese können Sie den Konfigurationsdateien der security.manager Instanz entnehmen, welche von smart.finder SDI 1.x verwendet wird.

    3. Öffnen Sie eine Konsole/Eingabeaufforderung und navigieren Sie mit cd in den Ordner, in dem sich die readme.txt. Führen Sie dort folgenden Befehl aus:

      Unter Windows:

      > bin\start.bat <exported-ZIP-file>

      Unter Linux:
      Stellen Sie sicher, dass bin/start.sh ausführbar ist.

      > ./bin/start.sh <exported-ZIP-file>
    4. Nun ist die Migration der Metadaten abgeschlossen und diese in die Datenbank importiert. Informationen über den Erfolg bzw. Probleme während des Imports finden Sie im Verzeichnis logs\import.log.

Vorschaubilder

Wenn Sie in der alten smart.finder Instanz die Upload Funktion des smartEditors für Vorschaubilder genutzt haben, müssen Sie die Vorschaubilder in die neue Version des smartEditors kopieren. Standardmäßig liegen die Bilddatein im preview Verzeichnis innerhalb der smartEditor Webapplikation. Kopieren Sie die Bilder aus dem preview Verzeichnis der alten Instanz in das preview Verzeichnis der neuen smartEditor Instanz.