Änderungen von Dokument Nexus H2 Datenbank-Migration

Zuletzt geändert von Jonas Mayer am 2025/04/13 09:19

Von Version 15.1
bearbeitet von Jonas Mayer
am 2025/04/13 09:07
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 8.1
bearbeitet von Jonas Mayer
am 2024/12/09 14:55
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Inhalt
... ... @@ -2,7 +2,7 @@
2 2  
3 3  ----
4 4  
5 -Bedingt durch mehrere herstellerseitige Änderungen des Nexus werden die Nexus-Komponenten weg von OrientDB-Datenbank auf H2 umgezogen und JavaDeploymenKit (JDK) 11 zu Version 17. Aufgrund der Komplexität entfällt ein voll automatisiertes Upgrade und es ist erforderlich in Logodidact-Umgebungen (Puppetversion ab 7.1.X) diese beiden Komponenten manuell zu aktualisieren.
5 +Bedingt durch mehrere herstellerseitige Änderungen des Nexus werden die Nexus-Komponenten weg von OrientDB-Datenbank auf H2 umgezogen und JavaDeploymenKit (JDK) 11 zu Version 17. Aufgrund der Komplexität entfällt ein voll automatisiertes Upgrade und es ist erforderlich in Logodidact-Umgebungen diese beiden Komponenten manuell zu aktualisieren.
6 6  
7 7  
8 8  = __Vorgehen__ =
... ... @@ -9,14 +9,10 @@
9 9  
10 10  == Downgrade auf Version 3.70.2 ==
11 11  
12 -Wechseln Sie sich vom **ldhost **in den Container **nexus-g1**. Dort wird per **apt install** ein Downgrade der Nexus-Version von 3.74.0 auf Version 3.70.2 durchgeführt.
12 +Wechseln Sie sich vom **ldhost **in den Container **nexus-g1**. Dort wird per **apt install** ein Downgrade der Nexus-Version von 3.72.0 auf Version 3.70.2 durchgeführt.
13 13  
14 14  {{code language="bash"}}
15 15  root@ldhost:~ # ssh nexus-g1
16 -#puppet-agent temporär deaktivieren und openjdk auf Version 11 downgraden
17 -root@nexus-g1:~ # pdis
18 -root@nexus-g1:~ # apt install openjdk-11-jre-headless
19 -root@nexus-g1:~ # apt purge openjdk-17-jre-headless
20 20  root@nexus-g1:~ # apt install --reinstall ld-nexus=3.70.2.01+3
21 21  {{/code}}
22 22  
... ... @@ -68,13 +68,9 @@
68 68  
69 69  Danach das Backupverzeichnis im Container **nexus-g1** anlegen. Damit der Ordner die korrekten Berechtigungen erhält wird dieser mit dem Benutzer "nexus" erstellt.
70 70  
71 -{{code language="bash"}}
72 -root@nexus-g1:~ # sudo -u nexus mkdir /data/sonatype-work/backup
73 -{{/code}}
74 -
75 75  [[image:deep-dive_nexus_05_nexus-g1-new-backup-folder.png||class="img-thumbnail"]]
76 76  
77 -Speichern Sie nun den Backup-Task über** Create task**.
69 +Speichern Sie nun den Backup-Task über "Create task".
78 78  
79 79  Nun im Anschluss den Task ausführen, wodurch ein Backup der Repos in das soeben erstellte Verzeichnis im **nexus-g1** Container vollzogen wird. Je nach Größe kann diese Aufgabe entsprechend viel Zeit in Anspruch nehmen.
80 80  
... ... @@ -100,7 +100,6 @@
100 100  {{code language="bash"}}
101 101  root@ldhost:~ # screen
102 102  root@ldhost:~ # ssh nexus-g1
103 -root@nexus-g1:~ # cd /data/sonatype-work/backup
104 104  root@nexus-g1:/data/sonatype-work/backup # systemctl stop nexus.service
105 105  
106 106  {{/code}}
... ... @@ -131,54 +131,30 @@
131 131  )))
132 132  
133 133  
134 -Das Versionsupgrade des Nexus von 3.70.2 auf 3.74.0durchführen.
125 +== OpenJDK-Version setzen ==
135 135  
136 -{{code language="bash"}}
137 -root@nexus-g1:~ # apt upgrade -y
138 -root@nexus-g1:~ # pena
139 -root@nexus-g1:~ # prun
140 -#Hier wird openjdk17 reinstalliert passend zur neuesten Nexus-Version
141 -{{/code}}
127 +Damit der Nexus auf die neuere JDK-Version 17 zurückgreift wird diese in der nexus-g1.yaml im **puppeteer-g3** definiert.
142 142  
143 -Am Ende kann noch aufgeräumt und das **/data/sonatype-work/nexus3/legacy** Verzeichnis entfernt werden.
144 -
145 145  {{code language="bash"}}
146 -root@nexus-g1:~ # rm -rf /data/sonatype-work/nexus3/legacy
130 +root@ldhost:~ # ssh puppeteer-g3
131 +root@puppeteer-g3:~ # cd /etc/logodidact/
132 +root@puppeteer-g3:~ # echo "ld_openjdk::package: 'openjdk-17-jre-headless'" >> /etc/logodidact/hiera/custom.d/nexus-g1.yaml
133 +root@puppeteer-g3:~ # git add .
134 +root@puppeteer-g3:~ # git commit -a -m "nexus-g1 Datenbank von OrientDB auf H2 migriert und auf OpenJDK-17 Runtime festgelegt"
147 147  {{/code}}
148 148  
149 -Damit ist das Update abgeschlossen.
137 +Im Anschluss wieder in den Container **nexus-g1** wechseln und das Versionsupgrade des Nexus von 3.70.2 auf 3.72.0. durchführen.
150 150  
151 -
152 -= __Besondere Schritte nach einem Server-Upgrade auf LogoDIDACT 4.0__ =
153 -
154 -Beim Ausführen eines LogoDIDACT 4.0 Upgrades über das Kommando {{box}}ld40-upgrade{{/box}} werden die Bestandsdaten vom nexus-g1 LXC-Container in einen ungenutzten Ordner verschoben und der LXC-Container im Laufe des Upgradevorgangs mit **leeren Daten** und einem Ubuntu 22.04 "Jammy" OS neu aufgebaut. Um die früheren Nexus Repository-Daten (Treiberarchive, Softwarepakete, usw.) wiederherzustellen, können unmittelbar nach dem LD4.0 Upgrade folgende Extra-Schritte ausgeführt werden.
155 -
156 -== Nexus-Verzeichnis mit Bestandsdaten verschieben ==
157 -
158 -Zunächst vom **ldhost** aus den LXC-Container nexus-g1 stoppen, danach die früheren Repository-Daten zurückverschieben in den Pfad, der tatsächlich eingehängt & verwendet wird und dann den LXC-Container wieder starten.
159 -
160 160  {{code language="bash"}}
161 -root@ldhost:~ # systemctl stop lxc@nexus-g1; lxc-stop -n nexus-g1
162 -root@ldhost:~ # mv /var/lib/lxc.data/nexus-g1 /var/lib/lxc.data/nexus-g1.postld40upgrade.empty
163 -root@ldhost:~ # mv /var/lib/lxc.data/nexus-g1.ld20 /var/lib/lxc.data/nexus-g1
164 -root@ldhost:~ # systemctl start lxc@nexus-g1
140 +root@nexus-g1:~ # apt upgrade -y
141 +root@nexus-g1:~ # prun
165 165  {{/code}}
166 166  
144 +Am Ende kann noch aufgeräumt und das **/data/sonatype-work/nexus3/legacy** Verzeichnis entfernt werden.
167 167  
168 -== Nexus H2 Datenbank-Migration durchführen ==
169 -
170 -Jetzt die Schritte zur Migration der Nexus-Datenbank ins H2-Format abarbeiten, so wie im oberen Bereich dieses Artikels unter „[[Vorgehen>>verffentlichtld40:Main.LD Deploy.Allgemein.Nexus H2 Datenbank-Migration.Vorgehen.WebHome]]“ beschrieben.
171 -
172 -
173 -== Vorausgelieferte Softwarepakete im Nexus-Container reimportieren (neueste Version) ==
174 -
175 175  {{code language="bash"}}
176 -root@nexus-g1:~ # apt install --reinstall ld-choco-install ld-console ld-control-agent ld-lgpo ld-nexus-tools ld-nexus-upload ld-nircmd ld-openssh ld-sysinternals ld-vc-redist ld-win-tools
147 +root@nexus-g1:~ # rm -rf /data/sonatype-work/nexus3/legacy
177 177  {{/code}}
178 178  
179 179  
180 -(% class="box successmessage" %)
181 -(((
182 -**HINWEIS:**
183 -Sollte der Ordner **/var/lib/lxc.data/nexus-g1.ld20/** im ldhost nicht existieren, wurde entweder die Wiederherstellung der Nexus-Repositories bereits durchgeführt oder das LogoDIDACT 4.0 Upgrade wurde zu einem früheren Zeitpunkt in der Vergangenheit ausgeführt, als diese besonderen Schritte noch nicht notwendig waren.
184 -)))
151 +Damit ist das Update abgeschlossen.