Änderungen von Dokument Nextcloud 29 Upgrade unter LogoDIDACT 2.0
Zuletzt geändert von Tom Altenbrunn am 2025/03/26 08:25
Auf Version 6.1
bearbeitet von Jonas Mayer
am 2024/11/05 09:19
am 2024/11/05 09:19
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Zusammenfassung
-
Seiteneigenschaften (2 geändert, 0 hinzugefügt, 0 gelöscht)
Details
- Seiteneigenschaften
-
- Dokument-Autor
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. TomAltenbrunn@sbede1 +XWiki.jonasmayer@sbede - Inhalt
-
... ... @@ -1,6 +1,10 @@ 1 - Die Ubuntu-Basis der Nextcloud unter LD2.0 benötigt eine aktuellere Version als die derzeit genutzte Version 16.0.4 (Xenial Xerus), damit neuere Nextcloud-und PHP-Versionen installiert werden können. Im Nachfolgenden wird zunächst die Basis des nextcloud-g1 Containers auf Version 22.04.5 (Jammy) angehoben und anschließend die Komponenten Nextcloud, sowie PHP aktualisiert.1 +{{toc/}} 2 2 3 +---- 3 3 5 +Die Ubuntu-Basis der Nextcloud unter LD2.0 benötigt eine aktuellere Version als die derzeit genutzte Version **16.0.4** (Xenial Xerus), damit neuere Nextcloud-und PHP-Versionen installiert werden können. Im Nachfolgenden wird zunächst die Basis des **nextcloud-g1** Containers auf Version **22.04.5** (Jammy) angehoben und anschließend die Komponenten Nextcloud, sowie PHP aktualisiert. 6 + 7 + 4 4 = Server aktualisieren = 5 5 6 6 Zunächst den Server mit den aktuellsten Updates versorgen und die aktuelle Puppet-Version 1.6.X installieren. ... ... @@ -10,47 +10,138 @@ 10 10 root@puppeteer:~ # ldupdate 11 11 {{/code}} 12 12 13 -Im Anschluss wie gewohnt mehrere pruns im ldhost durchlaufen lassen und ein ldupdate im 17 +Im Anschluss wie gewohnt mehrere pruns im **ldhost **durchlaufen lassen und ein ldupdate im **logosrv **durchführen. Danach noch 2 x gprun im **ldhost**, damit die Updates über alle Container-Instanzen hinweg installiert werden. 14 14 19 +{{code language="bash"}} 20 +root@ldhost:~ # prun;prun 21 +root@ldhost:~ # ssh logosrv 15 15 16 -1. ldupdate im puppeteer => Update auf ld-puppet10 in Version 1.6.x 17 -1. root@puppeteer:~~ # puppet-master-remove-client nextcloud-g1 18 -1. Release von nextcloud-g1 auf jammy ändern: 23 +root@logosrv:~ # ldupdate 19 19 20 - {{{root@puppeteer:~ #cat /etc/logodidact/hiera/custom.d/ldhost.yaml21 -}} }25 +root@ldhost:~ # gprun;gprun 26 +{{/code}} 22 22 28 += Nextcloud-Containeranpassungen = 29 + 30 +== Nextcloud-Instanz zerstören == 31 + 32 +Nun wird die alte **nextcloud-g1** Instanz unter der alten Ubuntu-Basis zerstört, damit diese später mit der neuen Ubuntu-Version wieder aufgebaut werden kann. 33 + 34 +(% class="box infomessage" %) 23 23 ((( 36 +Die Nextcloud-Benutzerdaten bleiben erhalten, da diese im ldhost im Verzeichnis lxc.data des Containers vorliegen bzw. als externe SMB-Shares eingebunden sind. 37 +))) 38 + 39 +{{code language="bash"}} 40 +root@puppeteer:~ # puppet-master-remove-client nextcloud-g1 41 +{{/code}} 42 + 43 +== Ubuntu-Version des LXC anheben == 44 + 45 +Im **puppeteer **wird in der Konfigurations-Datei des **ldhost **für den **nextcloud-g1**-Container die Ubuntu-Release-Version auf Jammy gesetzt. 46 + 47 +{{code language="bash"}} 48 +root@puppeteer:~ # cd /etc/logodidact/hiera/custom.d/ 49 +root@puppeteer:/etc/logodidact/hiera/custom.d # vi ldhost.yaml 50 +{{/code}} 51 + 52 +{{code language="bash"}} 24 24 profile::lxc::host: 54 + guests: 55 + nextcloud-g1: 56 + ensure: running 57 + release: jammy 58 +{{/code}} 25 25 26 - guests: nextcloud-g1: { ensure: running, release: jammy } 27 -))) 60 +== == 28 28 29 - 1.Um das Upgradevon Version 26 bis auf Version 29 erfolgreich durchführen zu können braucht man für die Dauer des Upgrades folgendeAnpassungenfür nextcloud-g1:62 +== Upgrade Anpassungen == 30 30 31 -{{{ 32 - }}} 64 +Während der Dauer des Upgrades ist es vonnöten die korrekte PHP-Version statisch per Nextcloud-Konfiguration mitzugeben. 33 33 34 -root@puppeteer:/etc/logodidact # cat hiera/custom.d/nextcloud-g1.yaml 66 +{{code language="bash"}} 67 +root@puppeteer:~ # cd /etc/logodidact/hiera/custom.d/ 68 +root@puppeteer:/etc/logodidact/hiera/custom.d # vi nextcloud-g1.yaml 69 +{{/code}} 35 35 36 - (((71 +{{code language="bash"}} 37 37 php::globals::php_version: '8.1' 38 - 39 39 php::package_prefix: 'php8.1-' 40 - 41 41 ld_base::fixes::php::historic_php_versions: 75 + - '8.3' 76 +{{/code}} 42 42 43 - - '8.3' 78 +Alle Änderungen an den Konfigurationen ins GIT commiten. 79 + 80 +{{code language="bash"}} 81 +root@puppeteer:/etc/logodidact/hiera/custom.d # git add . 82 +root@puppeteer:/etc/logodidact/hiera/custom.d # git commit -am "KÜRZEL: Temporäre Anpassungen für Nextcloud Upgrade vorgenommen." 83 +{{/code}} 84 + 85 + 86 +== Re-Installation Nextcloud == 87 + 88 +Zunächst den jeweiligen LXC-Containerdienst im **ldhost **deaktivieren. Dadurch wird der LXC vollständig heruntergefahren. 89 + 90 +{{code language="bash"}} 91 +root@ldhost:~ # systemctl stop lxc@nextcloud-g1.service 92 +{{/code}} 93 + 94 +Danach den ausgeschalteten und nicht mehr benötigten Nextcloud-Container vom Host-System löschen. 95 + 96 +{{code language="bash"}} 97 +root@ldhost:~ # lxc-destroy -n nextcloud-g1 -f 98 +{{/code}} 99 + 100 +Ein darauf folgender prun baut den Container neu auf unter Berücksichtigung der in den vorangegangen Schritten getätigten Vorgaben. 101 + 102 +{{code language="bash"}} 103 +root@ldhost:~ # prun 104 +{{/code}} 105 + 106 +(% class="box warningmessage" %) 107 +((( 108 +**Gegebenenfalls sind je nach Geschwindigkeit des Servers noch weitere pruns notwendig.** 44 44 ))) 45 45 46 -1. root@ldhost:~~ # systemctl stop lxc@nextcloud-g1.service 47 -1. root@ldhost:~~ # lxc-destroy -n nextcloud-g1 -f 48 -1. root@ldhost:~~ # prun 49 -1. root@nextcloud-g1:~~ # apt install ~-~-reinstall ld-nextcloud=27.1.9 50 -1. root@nextcloud-g1:~~ # prun 51 -1. root@nextcloud-g1:~~ # apt install ~-~-reinstall ld-nextcloud=28.0.5 52 -1. root@nextcloud-g1:~~ # prun 53 -1. root@nextcloud-g1:~~ # apt upgrade -y 54 -1. root@nextcloud-g1:~~ # prun 55 -1. Upgrade Anpassungen für nextcloud-g1 entfernen 56 -1. root@nextcloud-g1:~~ # prun # eventuell 2x notwendig wegen PHP upgrade 111 +Nachdem der Container vollständig aufgebaut ist, die Nextcloud-Version nach und nach auf die nächsthöheren Versionen 27 und 28 aktualisieren. Ein Upgrade der Anwendung über mehrere Versionen hinweg ist nicht möglich. 112 + 113 + 114 +{{code language="bash"}} 115 +root@nextcloud-g1:~ # apt install --reinstall ld-nextcloud=27.1.9 116 + 117 +root@nextcloud-g1:~ # prun 118 + 119 +root@nextcloud-g1:~ # apt install --reinstall ld-nextcloud=28.0.5 120 + 121 +root@nextcloud-g1:~ # prun 122 + 123 +root@nextcloud-g1:~ # apt upgrade -y 124 + 125 +root@nextcloud-g1:~ # prun 126 +{{/code}} 127 + 128 +Damit ist der eigentliche Aktualisierungsvorgang abgeschlossen. 129 + 130 + 131 +== Upgrade Anpassungen entfernen == 132 + 133 +Abschließend die gesetzten Upgrade-Anpassungen wieder entfernen und die Änderungen ins GIT commiten. 134 + 135 +{{code language="bash"}} 136 +root@puppeteer:~ # cd /etc/logodidact/hiera/custom.d/ 137 +root@puppeteer:/etc/logodidact/hiera/custom.d # vi nextcloud-g1.yaml 138 +{{/code}} 139 + 140 +{{code language="bash"}} 141 +root@puppeteer:/etc/logodidact/hiera/custom.d # git add . 142 +root@puppeteer:/etc/logodidact/hiera/custom.d # git commit -am "KÜRZEL: Temporäre Anpassungen für Nextcloud Upgrade zurückgesetzt." 143 +{{/code}} 144 + 145 +== Abschluss == 146 + 147 +Im Nextcloud-Container die Änderungen durch prun übernehmen. Dadurch wird ggf. auch eine neuere PHP-Version installiert. 148 + 149 +{{code language="bash"}} 150 +root@nextcloud-g1:~ # prun;prun 151 +{{/code}}