GSB 7.0 Standardlösung

Installation

In diesem Dokument ist die Installation des GSB in der Version 7.5 beschrieben. Die Anleitung beschränkt sich dabei aus Gründen der Übersicht absichtlich auf die Installationsschritte und lässt die zugrundeliegenden Konzepte aussen vor.

1 Lieferung

Es gibt zwei Möglichkeiten der Lieferung des GSB 7.5:

  1. Die einzelnen Komponentenartefakte können aus einem Nexus-Repository abgerufen werden
  2. Wenn kein Zugriff auf ein entsprechendes Nexus-Repository zur Verfügung steht, kann eine Zip-Datei einer Sammlung der einzelnen Komponentenartefakte der Lieferung zur Verfügung gestellt werden.

Die Artefakte müssen in einem vorgegebenen Verzeichnis abgelegt werden. Per Default ist das /home/cmadmin/software. Dort wird für den Kern das Verzeichnis gsbcm und für jeden Mandanten ebenfalls ein eigenes Verzeichnis angelegt.

In diesen Kern- und Mandantenverzeichnissen findet sich ein Unterordner für jede abgelegte Version. In den Unterordnern werden dann die einzelnen Komponentenartefakte abgelegt. Die Sammel-Zip Liefereinheit gibt diese Verzeichnisstruktur schon vor und kann daher direkt im Verzeichnis /home/cmadmin/software ausgepackt werden.

Beim Download aus einem Nexus-Repository muss diese Struktur selbst erzeugt werden. Alternativ kann das Script /opt/gsb/active/infrastructure/install/scripts/download-from-nexus genutzt werden.

Weitere Informationen zu den Komponenten kann im Kapitel Aufbau des Release gefunden werden.

2 Installationsvoraussetzungen

Diese Voraussetzungen müssen im Vorfeld der Installation erfüllt werden:

  • Wenn HTTPS terminiert werden soll, müssen TLS-Zertifikate und Private-Keys erstellt werden.
  • Die Coremedia-Lizenzen müssen vorliegen.
  • Datenbanken und Datenbanknutzer für Preview-, Master- und Replication-Content, Maildistributor und die AppDB (Preview und Live) müssenangelegt sein. Die Default-Namen für Datenbank und Nutzer sind CMCONTENT , CMMASTER , CMSLAVE , MAILDISTRIBUTOR , CMCONTENTPREVIEW und CMCONTENTLIVE .
  • Für den Start der Komponenten per Systemd wird eine Python3-Installation auf allen Servern benötigt

Die folgenden Schritte müssen in Vorbereitung der Installation in der Regel mit erweiterten Rechten ( root/SuperUser ) ausgeführt werden.

  1. Den Nutzer cmadmin mit der Hauptgruppe cmadmin und dem Homeverzeichns /home/cmadmin einrichten.
  2. Die Verzeichnisse /opt/gsb und /space/gsb mit Eigentümer und Gruppe cmadmin anlegen.
  3. Den Start der Nutzersession für den Nutzer cmadmin beim Boot einrichten. Dies ermöglicht das Starten des GSB beim Bootvorgang ohneerweiterte Rechte und die Pflege der Systemd-Dateien für die meisten GSB-Dienste im Homeverzeichns: loginctl enable-linger cmadmin
  4. Java-11 installieren, z.B. mit dem Befehl dnf install java-11-openjdk-headless (Red Hat Enterprise Linux 8)
  5. Die Apache2.service Datei aus dem systemd Ordner des infrastructure Lieferungsartefakt nach /etc/systemd/system kopieren.
  6. Die sudo-Rechte für den Nutzer cmadmin zum Kontrollieren des Apache2.service konfigurieren. Zum Beispiel indem die nachfolgende Zeile in der Datei /etc/sudoers.d/cmadmin angelegt wird: cmadmin ALL=(ALL) NOPASSWD: /usr/bin/systemctl * Apache2*
  7. Den LDAP-Service installieren und einrichten (nach Anleitung).
  8. sudo-Rechte für den Nutzer cmadmin zum kontrollieren des LDAP einrichten.

3 Installationsanleitung

Die folgenden Schritte müssen als Nutzer cmadmin ausgeführt werden:

Schritt 1:

Damit das Tool systemctl die Nutzersession finden kann, müssen zwei Umgebungsvariablen gesetzt werden. Dazu sind diese beiden Zeilen in der Datei /home/cmadmin/.bash_profile einzufügen :

Schritt 1:

und anschließend muss der Nutzer cmadmin einmal neu einloggt werden.

Schritt 2:

Die Variable JAVA_HOME muss für die Management-Tools gesetzt sein.
Dazu muss in der Datei /home/cmadmin/.bash_profile z.B. diese Zeile einfügen

Schritt 2:

und anschließend muss der Nutzer cmadmin einmal neu einloggt werden.

Der Wert der JAVA_HOME Variable ist abhängig von der eingesetzten Java-Version und dem Betriebssystem und muss auf das jeweilige System angepasst werden.

Schritt 3:

Wie im obigen Abschnitt Lieferung beschrieben, müssen die Liefereinheiten unter /home/cmadmin/software abgelegt werden.

Schritt 4:

Für Scripts, die im Nutzerkontext ausführbar sind, muss das Verzeichnis /home/cmadmin/bin angelegt werden:

Schritt 4:

Schritt 5:

Die Artefakte documentation und infrastructure werden für den Installationsprozess benötigt und können schon jetzt ausgepackt werden:

Schritt 4:

Schritt 6:

Die Hilfsscripte für die Installation sowie das Starten/Stoppen des GSB können nach /home/cmadmin/bin verlinkt werden:

Schritt 6:

Schritt 7:

Das Konfigurationsverzeichnis muss angelegt werden:

Schritt 7:

Schritt 8:

Die Datei config muss aus dem Ordner /opt/gsb/active/infrastructure/install/config in den Ordner /home/cmadmin/config kopiert und wie folgt angepasst werden: Hier können die Pfade für die Installation angepasst werden sowie die einzusetzende Version des Kerns und die zu installierenden Mandanten mit ihren Versionen konfiguriert werden.

Schritt 9:

Der GSB liefert Konfigurationsvorlagen für verschiedene Betriebsarchitekturen mit. Diese finden sich in den Unterordnern ref und prod im Ordner /opt/gsb/active/infrastructure/install/config. Der Ordner prod enthält Konfigurationen für eine verteilte Architektur, wie sie auf größeren Produktivsystemen zu erwarten ist. Jede Konfiguration besteht dabei aus einer components und einer instances Datei. Die Art des zu installierenden Systems ist durch einen Suffix gekennzeichnet. Vorgegeben sind diese Systemarten:

ServerBeschreibung
previewRedaktionsserver
adminAdministrationsserver
masterMasterserver
replicationReplikationsserver
caeCAE-Server
deliveryWebserver
cmis-serverCMIS-Server

Die beiden zum zu installierenden System passenden Dateien müssen nach /home/cmadmin/config als Dateien components und instances kopiert werden.

Beispiel für einen Redaktionsserver:

Schritt 9:

Der Ordner ref enthält eine Konfiguration, die alle Komponenten der Systeme preview , admin , master , cae und delivery auf einem System installiert.

Schritt 10:

In den Dateien /home/cmadmin/config/config, /home/cmadmin/config/components und home/cmadmin/config/instances können jetzt bei Bedarf Anpassungen vorgenommen werden.

Schritt 11:

Die GSB-Komponenten werden mit install-gsb nach Vorgabe der Konfiguration in /home/cmadmin/config nach /opt/gsb/active installiert.

Das Installationsscript sichert dabei zunächst das /opt/gsb/active Verzeichnis nach /opt/gsb/active-<Modifikationszeit>. Damit entspricht das Datum der Sicherung in der Regel dem Installationsdatum. Anschließend wird das Verzeichnis neu angelegt und die Artefakte des Kerns und der Mandanten in das neue Verzeichnis entpackt. Es wird immer zuerst das Kernartefakt entpackt und im Anschluss vorhandene Mandantenartefakt in der Reihenfolge der Mandanten, wie sie in der Datei /home/cmadmin/config/config angegeben sind, darüber entpackt.

Das Installationsscript gibt eine Warnung aus, wenn Dateien durch einen Mandanten überschrieben werden.

Wenn nur bestimmte Komponenten installiert werden sollen, können diese dem Installationsscript als Argument übergeben werden. In diesem Fall wird keine Sicherung des /opt/gsb/active Verzeichnisses erstellt, sondern nur der Komponentenordner gelöscht.

Für die Komponente Apache2 werden beim Installationsprozess weitere Schritte ausgeführt. Im Gegensatz zu den restlichen GSB-Komponenten ist der Apache2 keine Java-Software und ist deshalb nicht betriebssystemunabhängig. Daher muss ein zum eingesetzten Betriebssystem passender Apache2 installiert werden. Dies wird ermöglicht, in dem nicht das Packet Apache2 selber installiert wird, sondern ein betriebssystemspezifisches Paket Apache2-<os>. Dieses wird dann beim Installationsprozess nach /opt/gsb/active/Apache2 verlinkt. Der GSB-7.5 liefert die Pakete Apache2-rhel8.zip , Apache2-rhel7.zip und Apache2-sles.zip für die Betriebssysteme Red Hat Enterprise Linux 7 bzw. 8 sowie SuSe Linux 12 mit.

Alle Schritte der Installationsskripte werden nach /space/gsb/logs/infrastructure geloggt.

Schritt 12:

Mit install-instances wird die Systemd-Konfiguration im Verzeichins /home/cmadmin/.config/systemd/user nach den Vorgaben der Datei /home/cmadmin/config/instances initialisiert und Abhängigkeiten konfiguriert.

Außerdem wird die Default-Runtime nach /opt/gsb/runtime kopiert, wenn dort noch keine Konfiguration für die Instanz vorhanden ist.

Schritt 13:

Wenn das Scripts install-instances neue Dateien in /opt/gsb/runtime angelegt hat, müssen diese nun überprüft und gegebenenfalls angepasst werden.

Schritt 14:

Die Coremedia-Lizenzen müssen in /opt/gsb/runtime abgelegt werden.

Schritt 15:

Nun kann mit gsb start der GSB gestartet werden.

Sollen nur einzelne Instanzen gestartet werden, können diese per Argument auf der Kommandozeile übergeben werden. Z.B. gsb start content-server@content-server-preview

Schritt 16:

Der Status des GSB kann mit gsb status abgefragt werden.

Nach einigen Minuten sollten alle Instanzen 'grün' sein.

Schritt 17:

Auf dem Server, der den content-server-preview enthält, sollten sich auch die management-tools befinden ( /opt/gsb/active/management-tools).

Das management-tool cm kann für die einfachere Handhabe in das Script-Verzeichnis verlinkt werden:

Schritt 17:

Schritt 18:

Mit cm serverimport kann jetzt Content importiert werden. Z.B.:

Schritt 18:

Schritt 19:

Mit den management-tools können außerdem Rollen und Rechte eingespielt werden:

Schritt 19:

Schritt 20:

Zum Einspielen der Workflows gibt es zwei Scripte:

Mit dem ersten Script werden die Workflows für die Mandanten vorbereitet:

Schritt 20:

dieses Script übernimmt alle Mandanten als Parameter.
Mit dem zweiten Script werden die Worfklows in den content-server-preview hochgeladen:

Schritt 20:

Schritt 21:

Um einen Mandanten neu zu indizieren, muss für die Instanzen indexer-preview und indexer-master die Datei /space/gsb/data/indexer(preview|master)/var/timestamps/customer_NEW_INDEX.ni angelegt werden und die Indexer neu gestartet werden:

Schritt 21: