Änderungen von Dokument Nextcloud 29 Upgrade unter LogoDIDACT 2.0
Zuletzt geändert von Tom Altenbrunn am 2025/03/26 08:25
Auf Version 7.2
bearbeitet von Tom Altenbrunn
am 2024/11/05 15:00
am 2024/11/05 15:00
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Zusammenfassung
-
Seiteneigenschaften (1 geändert, 0 hinzugefügt, 0 gelöscht)
Details
- Seiteneigenschaften
-
- Inhalt
-
... ... @@ -1,48 +1,151 @@ 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 4 - Server5 +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. 5 5 6 6 8 += Server aktualisieren = 7 7 8 -1. ldupdate im puppeteer => Update auf ld-puppet10 in Version 1.6.x 9 -1. root@puppeteer:~~ # puppet-master-remove-client nextcloud-g1 10 -1. Release von nextcloud-g1 auf jammy ändern: 10 +Zunächst den Server mit den aktuellsten Updates versorgen und die aktuelle Puppet-Version 1.6.X installieren. 11 11 12 -{{{root@puppeteer:~ # cat /etc/logodidact/hiera/custom.d/ldhost.yaml 13 -}}} 12 +{{code language="bash"}} 13 +root@ldhost:~ # ssh puppeteer 14 +root@puppeteer:~ # ldupdate 15 +{{/code}} 14 14 15 -((( 16 -profile::lxc::host: 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. 17 17 18 - guests: nextcloud-g1: { ensure: running, release: jammy } 19 -))) 19 +{{code language="bash"}} 20 +root@ldhost:~ # prun;prun 21 +root@ldhost:~ # ssh logosrv 20 20 21 - 1. Um das Upgrade von Version 26 bisauf Version29erfolgreichdurchführen zu können braucht man für die Dauer des Upgrades folgende Anpassungen für nextcloud-g1:23 +root@logosrv:~ # ldupdate 22 22 23 - {{{24 - }25 +root@ldhost:~ # gprun;gprun 26 +{{/code}} 25 25 26 - root@puppeteer:/etc/logodidact# cat hiera/custom.d/nextcloud-g1.yaml28 += Nextcloud-Containeranpassungen = 27 27 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" %) 28 28 ((( 29 -php::globals::php_version: '8.1' 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 +))) 30 30 31 -php::package_prefix: 'php8.1-' 39 +{{code language="bash"}} 40 +root@puppeteer:~ # puppet-master-remove-client nextcloud-g1 41 +{{/code}} 32 32 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"}} 53 +profile::lxc::host: 54 + guests: 55 + nextcloud-g1: 56 + ensure: running 57 + release: jammy 58 +{{/code}} 59 + 60 +== Upgrade Anpassungen == 61 + 62 +Während der Dauer des Upgrades ist es vonnöten die korrekte PHP-Version statisch per Nextcloud-Konfiguration mitzugeben. 63 + 64 +{{code language="bash"}} 65 +root@puppeteer:~ # cd /etc/logodidact/hiera/custom.d/ 66 +root@puppeteer:/etc/logodidact/hiera/custom.d # vi nextcloud-g1.yaml 67 +{{/code}} 68 + 69 +{{code language="bash"}} 70 +php::globals::php_version: '8.1' 71 +php::package_prefix: 'php8.1-' 33 33 ld_base::fixes::php::historic_php_versions: 73 + - '8.3' 74 +{{/code}} 34 34 35 - - '8.3' 76 +Alle Änderungen an den Konfigurationen ins GIT commiten. 77 + 78 +{{code language="bash"}} 79 +root@puppeteer:/etc/logodidact/hiera/custom.d # git add . 80 +root@puppeteer:/etc/logodidact/hiera/custom.d # git commit -am "KÜRZEL: Temporäre Anpassungen für Nextcloud Upgrade vorgenommen." 81 +{{/code}} 82 + 83 + 84 +== Re-Installation Nextcloud == 85 + 86 +Zunächst den jeweiligen LXC-Containerdienst im **ldhost **deaktivieren. Dadurch wird der LXC vollständig heruntergefahren. 87 + 88 +{{code language="bash"}} 89 +root@ldhost:~ # systemctl stop lxc@nextcloud-g1.service 90 +root@ldhost:~ # lxc-stop -n nextcloud-g1 91 + 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.** 36 36 ))) 37 37 38 -1. root@ldhost:~~ # systemctl stop lxc@nextcloud-g1.service 39 -1. root@ldhost:~~ # lxc-destroy -n nextcloud-g1 -f 40 -1. root@ldhost:~~ # prun 41 -1. root@nextcloud-g1:~~ # apt install ~-~-reinstall ld-nextcloud=27.1.9 42 -1. root@nextcloud-g1:~~ # prun 43 -1. root@nextcloud-g1:~~ # apt install ~-~-reinstall ld-nextcloud=28.0.5 44 -1. root@nextcloud-g1:~~ # prun 45 -1. root@nextcloud-g1:~~ # apt upgrade -y 46 -1. root@nextcloud-g1:~~ # prun 47 -1. Upgrade Anpassungen für nextcloud-g1 entfernen 48 -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}}