Migration 1.3 -> 1.5 unter CentOS 7

Fragen zum WAPT-Server / Anfragen und Hilfe im Zusammenhang mit dem WAPT-Server
Forumregeln
Community-Forumregeln
* Englischer Support auf www.reddit.com/r/wapt
* Französischer Community-Support ist in diesem Forum verfügbar.
* Bitte kennzeichnen Sie gelöste Themen mit [GELÖST].
* Bitte bearbeiten Sie keine Themen, die mit [GELÖST] markiert sind. Erstellen Sie stattdessen ein neues Thema und verweisen Sie auf das alte.
* Geben Sie die installierte WAPT-Version, die vollständige Versionsnummer und die Build-Nummer (2.2.1.11957 / 2.2.2.12337 / usw.) sowie die Enterprise-/Discovery-Edition an.
* Versionen 1.8.2 und älter werden nicht mehr unterstützt. Fragen zu Version 1.8.2 werden nur beantwortet, wenn sie sich auf ein Upgrade auf eine unterstützte Version (2.1, 2.2 usw.) beziehen.
* Geben Sie das Server-Betriebssystem (Linux/Windows) und die Version (Debian Buster/Bullseye – CentOS 7 – Windows Server 2012/2016/2019) an.
* Geben Sie gegebenenfalls das Betriebssystem des Administrations-/Paketerstellungsrechners und des Rechners mit dem problematischen Agenten an (Windows 7/10/11/Debian 11/etc.).
* Vermeiden Sie es, mehrere Fragen in einem Thema zu stellen, da diese sonst möglicherweise ignoriert werden. Falls mehrere Themen relevant sind, erstellen Sie bitte separate Themen, vorzugsweise nacheinander und nicht gleichzeitig (d. h. vermeiden Sie Spam im Forum).
* Fügen Sie Code-Snippets, Screenshots und andere Bilder direkt in Ihren Beitrag ein. Links zu Pastebin, Bitly und anderen Drittanbieterseiten werden systematisch entfernt.
* Wie in jedem Community-Forum erfolgt die Unterstützung freiwillig durch die Mitglieder. Für kommerziellen Support kontaktieren Sie bitte den Vertrieb von Tranquil IT unter +44 2 40 97 57 55.
Gesperrt
MUSCHEL
Nachrichten: 1
Anmeldung: 30. März 2018 – 14:31 Uhr

30. März 2018 – 14:54 Uhr

Guten Morgen,

Ich bin der auf Seite [Seite einfügen] beschriebenen Vorgehensweise gefolgt. https://www.wapt.fr/fr/doc/waptserver_u ... entos.html Ich bin jedoch während des Vorgangs auf einige Fehler gestoßen.

Falls dies für andere hilfreich sein sollte, hier die Änderungen, die ich vornehmen musste, um die Migration erfolgreich abzuschließen:

So deinstallieren Sie wapt 1.3:

Code: Alle auswählen

yum remove tis-waptrepo tis-waptsetup tis-waptserver
systemctl stop apache2
systemctl disable apache2
wird zu:

Code: Alle auswählen

yum remove tis-waptrepo tis-waptsetup tis-waptserver
systemctl stop httpd
systemctl disable httpd


Im Abschnitt Aktualisieren Sie den CentOS-/Red Hat-Server :

Code: Alle auswählen

yum install postgresql94-server postgresql94-contrib
wird zu:

Code: Alle auswählen

yum install postgresql94-server postgresql94-contrib mongodb
(Unter CentOS ist MongoDB in zwei Pakete aufgeteilt: mongodb-server und mongodb. Das Paket mongodb enthält mongoexport, das vom Migrationsskript verwendet wird.)

Ich habe außerdem den folgenden Befehl ausgeführt, damit das Migrationsskript das Vorhandensein der Sperrdatei überprüfen konnte:

Code: Alle auswählen

chmod 755 /var/lib/mongodb
Ich habe die Datei /opt/wapt/waptserver/waptserver_upgrade.py gepatcht (ich habe nur (current_distrib != "centos linux" verwendet, da ich keine RHEL7-Maschine zur Hand habe, um zu testen, ob das ursprüngliche Skript ebenfalls angepasst werden muss, damit es funktioniert):

Code: Alle auswählen

--- /opt/wapt/waptserver/waptserver_upgrade.py.orig	2018-03-29 15:00:58.908069144 +0200
+++ /opt/wapt/waptserver/waptserver_upgrade.py	2018-03-29 15:12:00.480088326 +0200
@@ -67,7 +67,10 @@
     """Connect to a mongo instance and write all wapt.hosts collection as json into a file"""
     if platform.system()=='Linux':
         mongo_datadir = '/var/lib/mongodb/'
-        if 'dbpath' in subprocess.check_output('mongoexport --help',shell=True):
+	distrib_tuple = platform.linux_distribution()
+	current_distrib = distrib_tuple[0].lower()
+	print ('detected distrib : %s ' % current_distrib)
+        if ('dbpath' in subprocess.check_output('mongoexport --help',shell=True)) and (current_distrib != "centos linux"):
             data = subprocess.check_output('mongoexport -d wapt -c hosts --jsonArray --dbpath=%s' % mongo_datadir,shell=True)
         else:
             data = subprocess.check_output('mongoexport -c hosts --jsonArray --db wapt',shell=True)
Ich habe außerdem die Datei /opt/wapt/waptserver/scripts/postconf.py angepasst, da der Daemon unter CentOS nicht mongodb, sondern mongod heißt:

Code: Alle auswählen

--- /opt/wapt/waptserver/scripts/postconf.py.orig	2018-03-29 15:51:46.261262372 +0200
+++ /opt/wapt/waptserver/scripts/postconf.py	2018-03-29 15:52:12.043380391 +0200
@@ -234,8 +234,12 @@
 def upgrade2postgres(configfilename):
     print ("mongodb process running, need to migrate")
     run_verbose('sudo -u wapt PYTHONPATH=/opt/wapt PYTHONHOME=/opt/wapt /opt/wapt/bin/python /opt/wapt/waptserver/waptserver_upgrade.py upgrade2postgres -c "%s"' % configfilename)
-    run_verbose("systemctl stop mongodb")
-    run_verbose("systemctl disable mongodb")
+    if type_redhat():
+        run_verbose("systemctl stop mongod")
+        run_verbose("systemctl disable mongod")
+    else:
+        run_verbose("systemctl stop mongodb")
+        run_verbose("systemctl disable mongodb")
 
 def nginx_set_worker_limit(nginx_conf):
     already_set=False
Um Pakete aus dem Repository zu entfernen, ändern Sie die auf der Seite angegebenen Befehle. https://www.wapt.fr/fr/doc/waptserver_u ... regenerieren durch Ändern von /var/www/wapt/... in /var/www/html/wapt/...

Code: Alle auswählen

PYTHONPATH=/opt/wapt PYTHONHOME=/opt/wapt python /opt/wapt/wapt-signpackages.py -i -s --message-digest=sha256,sha1 -c /root/wapt-private-20180312-1522.crt /var/www/html/wapt/*.wapt

PYTHONPATH=/opt/wapt PYTHONHOME=/opt/wapt python /opt/wapt/wapt-signpackages.py -i -s --message-digest=sha256,sha1 -c /root/wapt-private-20180312-1522.crt /var/www/html/wapt-host/*.wapt
Gesperrt