invis_server_wiki:upgrade

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste Überarbeitung Beide Seiten der Revision
invis_server_wiki:upgrade [2016/07/26 06:49]
flacco [Zarafa Upgrade von Version 7.2.0 auf 7.2.2]
invis_server_wiki:upgrade [2017/04/29 17:40]
flacco [Kopano Datenbak wiederherstellen]
Zeile 1039: Zeile 1039:
  
 Eine detaillierte Anleitung dafür folgt. Eine detaillierte Anleitung dafür folgt.
 +
 +===== invis-AD 10.x auf invisAD 12.x =====
 +
 +Die beste Möglichkeit eines Upgrades stellt eine Neuinstallation eines aktuellen invis-Servers mit anschließender Datenmigration dar.
 +
 +//​**Hinweis:​** Sie sollten sich auf jeden Fall eine lauffähige Version Ihres bestehenden invis-Server erhalten. Installieren Sie also am besten auf neue Festplatten.//​
 +
 +//​**Hinweis:​** Wenn Sie genau wie ich auf Logical-Volume-Management setzen sollten sie der VolumeGroup der Neuinstallation einen anderen Namen geben als die der alten Installation. Nur auf diese Weise können Sie die Festplatten beider Installationen gleichzeitig in einem Server eingebaut haben und Daten ohne Umweg über eine externe Platte von der alten auf die neue Installation migrieren.//​
 +
 +Die nachfolgenden Anleitungen gehen davon aus, dass Zarafa als Groupware eingesetzt wurde und auf der Neuinstallation dessen Nachfolger Kopano zum Einsatz kommt.
 +==== Vorbereitung ====
 +
 +Im ersten Schritt sind wichtige Dienste in der alten Installation zu stoppen, sie sollten auch aus dem Boot-Konzept des Server entfernt werden. Allem voran "​fetchmail"​
 +
 +**fetchmail**
 +
 +<​code>​
 +invis:~ # systemctl disable fetchmail.service
 +invis:~ # systemctl stop fetchmail.service
 +</​code>​
 +
 +**Samba**
 +
 +<​code>​
 +invis:~ # rcsernet-samba-ad stop
 +invis:~ # chkconfig -d /​etc/​init.d/​sernet-samba-ad
 +</​code>​
 +
 +**Zarafa**
 +
 +<​code>​
 +invis:~ # runzarafa stop
 +invis:~ # chkconfig -d /​etc/​init.d/​zarafa-server
 +</​code>​
 +
 +
 +Sichern Sie zunächst in der alten Installation die das Active-Directory,​ die Zarafa-Datenbank und das gesamte "/​etc"​ Verzeichnis.
 +
 +**Active Directory**
 +
 +<​code>​
 +invis:~ # adbackup
 +</​code>​
 +
 +Die Sicherung finden Sie unter <​file>/​srv/​shares/​archiv/​sicherungen/​ad/</​file>​
 +
 +<​code>​
 +invis:~ # zdbdump
 +</​code>​
 +
 +Die Sicherung der Zarafa-Datenbank ist unter <​file>/​srv/​shares/​archiv/​sicherungen/​datenbanken/</​file>​ zu finden. Für die Zarafa Sicherungen werden dort Unterverzeichnisse benannt nach dem Sicherungsdatum angelegt. ​
 +
 +Packen Sie jetzt noch das /​etc-Verzeichnis in ein Tar-Archiv:
 +
 +<​code>​
 +invis:~ # tar -czf etc.tar.gz /etc
 +</​code>​
 +
 +Kopieren Sie sich alle Sicherungen auf einen USB-Stick oder ähnliches. Jetzt können Sie den Server herunterfahren und fürs erste die Festplatten der alten Installation vom Server trennen. Bauen Sie die neuen ein und installieren Sie den neuen invis-Server entsprechend der Anleitung hier im Wiki.
 +
 +==== Wiederherstellung des Active Directory ====
 +
 +Am besten sichern Sie in der neuen Installation das noch jungfräuliche Active Directory auf die gleiche Weise wie zuvor in der alten Installation,​ wer weiss wozu es gut ist.
 +
 +Zwischen invisAD Version 10.x und 12.x hat sich die verwendete Samba-Version grundlegend geändert. Zum einen kommt statt Version 4.2.x jetzt 4.5.x zum Einsatz und zum anderen setzen wir jetzt statt der Pakete von Sernet jetzt eigene Pakete ein.
 +
 +Stoppen Sie im ersten Schritt Samba und den sssd-Dienst:​
 +
 +<​code>​
 +invis:~ # systemctl stop sssd.service
 +invis:~ # systemctl stop samba.service
 +</​code>​
 +
 +Löschen Sie jetzt den gesamten Inhalt des Verzeichnisses:​ <​file>/​var/​lib/​samba/</​file>​
 +
 +Entpacken Sie jetzt die Sicherung der Active-Directory Sicherung des alten Servers:
 +
 +<​code>​
 +invis:~ # tar -xzf Samba_20170429.tar.gz
 +</​code>​
 +
 +Im Verzeichnis der entpackten Sicherung finden Sie zwei gesicherte Verzeichnisse "​var/​cache/​samba"​ und "​var/​lib/​samba"​. Sie benötigen nur letzteres. Kopieren Sie den Inhalt von "​var/​lib/​samba"​ nach "/​var/​lib/​samba"​ und starten Sie Samba wieder:
 +
 +<​code>​
 +invis:~ # cp -r Samba_20170429/​var/​lib/​samba/​ /​var/​lib/​samba
 +invis:~ # systemctl start samba
 +</​code>​
 +
 +Innherhalb des Active Directory hat sich durch die Aktualisierung der Version strukturell einiges geändert. Diese Teile werden jetzt von Samba als fehlerhaft angesehen und müssen repariert werden:
 +
 +<​code>​
 +invis:~ # samba-tool dbcheck --fix --yes
 +</​code>​
 +
 +Lassen Sie sich nicht von der Menge der Fehler erschrecken,​ das ist vollkommen normal und stellt kein Problem dar.
 +
 +Jetzt müssen Sie aus der Sicherung des /​etc-Verzeichnisses aus der alten Installation die Kerberos-Keytab wiederherstellen. Kopieren Sie einfach die Datei **''​krb5.keytab''​** aus der Sicherung direkt ins /​etc-Verzeichnis der Neuinstallation. Danach können Sie auch den sssd-Dienst wieder starten.
 +
 +<​code>​
 +invis:~ # systemctl start sssd.service
 +</​code>​
 +
 +Prüfen Sie wie folgt, ob dem System alle Benutzer der alten Installation bekannt sind:
 +
 +<​code>​
 +invis:~ # getent passwd
 +</​code>​
 +
 +Ist das nicht der Fall führen Sie folgendes Script aus:
 +
 +<​code>​
 +invis:~ # delssscache
 +</​code>​
 +
 +Jetzt sollten, ggf. nach einer kurzen Wartezeit, alle Benutzer angezeigt werden können.
 +
 +==== invis-Portal Einträge anpassen und Portal wiederherstellen ====
 +
 +Mit der Weiterentwicklung des invis-Servers haben sich auch ein paar Veränderungen im invis-Portal ergeben. Nicht zuletzt die Änderung von "​Zarafa"​ zu "​Kopano"​ hat zur Folge, das der "​Groupware"​ Link im Portal ins Leere zeigt. Gleiches gilt beispielsweise für die Zeiterfassungssoftware Kimai, die erst seit Kurzem in den invis-Server integriert ist.
 +
 +In der Datei <​file>/​var/​lib/​sine/​ldif/​04_iportal-initial.ldif</​file>​ sind alle Portal-Einträge im LDIF-Format enthalten und können einzeln oder zu mehreren importiert werden. Nachfolgend wird beispielhaft der Kopano-Link gezeigt:
 +
 +<​code>​
 +# Groupware KopanoApp
 +dn: cn=KopanoApp,​cn=invis-Portal,​cn=Informationen,​cn=invis-server,​DC=afe-net,​DC=loc
 +objectClass:​ top
 +objectClass:​ iPortEntry
 +iPortEntryName:​ KopanoApp
 +cn: KopanoApp
 +iPortEntrySSL:​ FALSE
 +iPortEntryURL:​ [servername]/​webapp
 +iPortEntryDescription:​ Die moderne Webapp der Groupware "​Kopano"​ bietet Zugriff auf E-Mails, Terminkalender,​ Aufgabenverwaltung und Notizen in frischem "Look & Feel"​. ​
 +iPortEntryActive:​ FALSE
 +iPortEntryPosition:​ Lokal
 +iPortEntryButton:​ Groupware
 +iPortEntryPriv:​ user
 +</​code>​
 +
 +Suchen Sie sich in dieser Datei alle für Ihre Installation fehlenden Links und kopieren Sie diese in eine neue LDIF-Datei.
 +
 +Die auf diese Weise generierte LDIF-Datei kann wie folgt ins Activ-Directory integriert werden:
 +
 +<​code>​
 +invis:~ # ldbadd -v -H /​var/​lib/​samba/​private/​sam.ldb kopano.ldif
 +</​code>​
 +
 +Danach können die gewünschten Portal-Einträge aktiviert, bzw. unerwünschte deaktiviert werden. Hier wieder am Beispiel Zarafa/​Kopano. Zunächst den alten Portaleintrag deaktivieren:​
 +
 +<​code>​
 +invis:~ # swpestat ZarafaApp FALSE
 +</​code>​
 +
 +Jetzt den neuen Kopano-Link aktivieren:
 +
 +<​code>​
 +invis:~ # swpestat KopanoApp TRUE
 +</​code>​
 +
 +Sie können sich den aktuellen Status der Portal-Einträge anzeigen lassen:
 +
 +<​code>​
 +invis:~ # swpestat status
 +</​code>​
 +
 +Das invis-Portal muss sich am LDAP-Dienst des Active Directory anmelden. Durch den Import des alten Active Directory stimmen die Zugangsdaten in der Portal-Konfiguration nicht mehr. Geändert hat sich das Passwort des Benutzers "​ldap.admin"​. Sie finden dessen Passwort aus der alten Installation in der Datei <​file>/​etc/​invis/​invis-pws.conf</​file>​ in der Sicherung des alten /​etc-Verzeichnisses.
 +
 +Tragen Sie das Passwort in die Datei <​file>/​etc/​invis/​portal/​config.php</​file>​ in folgende Zeile ein:
 +
 +<​code>​
 +...
 +$LDAP_BIND_PW = '​iX9inbrgfh';​
 +...
 +</​code>​
 +
 +Jetzt müsste sich das Portal im Browser wieder öffnen lassen.
 +
 +==== LDAP Authentifizierung ====
 +
 +Neben dem Portal müssen sich noch eine Reihe anderer Dienste oder Scripts mit den gleichen Zugangsdaten am LDAP-Dienst des Active Directory anmelden. Nachfolgend die Liste der Dateien, in denen das Passwort angepasst werden muss:
 +
 +  * **''/​etc/​invis/​invis-pws.conf''​**
 +  * **''/​etc/​postfix/​ldap-users.cf''​**
 +  * **''/​etc/​postfix/​ldap-users2.cf''​**
 +  * **''/​etc/​postfix/​groups.cf''​**
 +  * **''/​etc/​postfix/​r-canonical.cf''​**
 +  * **''/​etc/​postfix/​s-canonical.cf''​**
 +  * **''/​etc/​kopano/​ldap.cfg''​** (ldap_bind_passwd = )
 +
 +
 +==== Kopano Datenbak wiederherstellen ====
 +
 +Bei der Neuinstallation des invis-Servers wurde selbstverständlich eine neue Datenbank für Kopano angelegt, Sie können diese entweder mit der Sicherung der Zarafa-Datenbank überschreiben oder eine weitere Datenbank anlegen. Ich gehe den zweiten Weg:
 +
 +Melden Sie sich dafür an der MySQL-Shell an und erzeugen Sie eine neue Datenbank:
 +
 +<​code>​
 +invis:~ # mysql -u root -p
 +Server version: 10.0.29-MariaDB SLE 12 SP1 package
 +
 +Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.
 +
 +Type '​help;'​ or '​\h'​ for help. Type '​\c'​ to clear the current input statement.
 +
 +MariaDB [(none)]>​ create database kopano2017;
 +</​code>​
 +
 +Jetzt müssen Sie noch dem bereits existierenden Datenbank-Benutzer "​kopano"​ alle Rechte daran gewähren und dann die MySQL-Shell wieder verlassen:
 +
 +<​code>​
 +MariaDB [(none)]>​ grant all privileges on kopano2017.* to kopano@localhost;​
 +Query OK, 0 rows affected (0.00 sec)
 +MariaDB [(none)]>​ quit
 +Bye
 +invis:~ #
 +</​code>​
 +
 +Spielen Sie jetzt die Sicherung der alten Zarafa-Datenbank in die neu angelegte Datenbank ein:
 +
 +<​code>​
 +invis:~ # gunzip < zarafa.invisad.20170429.gz | mysql -u root -p kopano2017
 +</​code>​
 +
 +Jetzt ist in der Datei <​file>/​etc/​kopano/​server.cfg</​file>​ der Datenbankname anzupassen:
 +
 +<​code>​
 +...
 +# Database to connect to
 +mysql_database ​         = kopano2017
 +...
 +</​code>​
 +
 +Danach muss der Kopano-Server Dienst neu gestartet werden:
 +
 +<​code>​
 +invis:~ # systemctl restart kopano-server.service
 +</​code>​
 +
 +Wenn jetzt Ihre Festplatte deutliche Aktivität zeigen liegt dies daran, dass der Kopano-Search Dienst die Datenbank indiziert. Dies ist also ein gutes Zeichen.
 +
 +Sie können sich jetzt an der Kopano-Webapp testweise anmelden und nachsehen, ob der Datenbank import funktioniert hat. Bedenken Sie aber, dass wir die Attachements noch nicht wieder hergestellt haben. Diese liegen im Dateisystem und nicht in der Datenbank.
 +
 +==== Daten wiederherstellen ====
 +
  
 ====== invis-Classic -> invis-AD ====== ====== invis-Classic -> invis-AD ======
  • invis_server_wiki/upgrade.txt
  • Zuletzt geändert: 2024/07/05 10:52
  • von flacco