Ä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.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,7 +10,7 @@ 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 logosrv durchführen. Danach noch 2 x gprun im ldhost, damit die Updates über alle Container-Instanzen hinweg installiert werden. 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 15 15 {{code language="bash"}} 16 16 root@ldhost:~ # prun;prun ... ... @@ -23,44 +23,123 @@ 23 23 24 24 = Nextcloud-Containeranpassungen = 25 25 30 +== Nextcloud-Instanz zerstören == 26 26 27 -1. root@puppeteer:~~ # puppet-master-remove-client nextcloud-g1 28 -1. Release von nextcloud-g1 auf jammy ändern: 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. 29 29 30 -{{{root@puppeteer:~ # cat /etc/logodidact/hiera/custom.d/ldhost.yaml 31 -}}} 32 - 34 +(% class="box infomessage" %) 33 33 ((( 34 -profile::lxc::host: 35 - 36 - guests: nextcloud-g1: { ensure: running, release: jammy } 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 37 ))) 38 38 39 -1. Um das Upgrade von Version 26 bis auf Version 29 erfolgreich durchführen zu können braucht man für die Dauer des Upgrades folgende Anpassungen für nextcloud-g1: 39 +{{code language="bash"}} 40 +root@puppeteer:~ # puppet-master-remove-client nextcloud-g1 41 +{{/code}} 40 40 41 -{{{ 42 - }}} 43 +== Ubuntu-Version des LXC anheben == 43 43 44 - root@puppeteer:/etc/logodidact#cathiera/custom.d/nextcloud-g1.yaml45 +Im **puppeteer **wird in der Konfigurations-Datei des **ldhost **für den **nextcloud-g1**-Container die Ubuntu-Release-Version auf Jammy gesetzt. 45 45 46 -((( 47 -php::globals::php_version: '8.1' 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}} 48 48 49 -php::package_prefix: 'php8.1-' 52 +{{code language="bash"}} 53 +profile::lxc::host: 54 + guests: 55 + nextcloud-g1: 56 + ensure: running 57 + release: jammy 58 +{{/code}} 50 50 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-' 51 51 ld_base::fixes::php::historic_php_versions: 73 + - '8.3' 74 +{{/code}} 52 52 53 - - '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 +{{/code}} 91 + 92 +Danach den ausgeschalteten und nicht mehr benötigten Nextcloud-Container vom Host-System löschen. 93 + 94 +{{code language="bash"}} 95 +root@ldhost:~ # lxc-destroy -n nextcloud-g1 -f 96 +{{/code}} 97 + 98 +Ein darauf folgender prun baut den Container neu auf unter Berücksichtigung der in den vorangegangen Schritten getätigten Vorgaben. 99 + 100 +{{code language="bash"}} 101 +root@ldhost:~ # prun 102 +{{/code}} 103 + 104 +(% class="box warningmessage" %) 105 +((( 106 +**Gegebenenfalls sind je nach Geschwindigkeit des Servers noch weitere pruns notwendig.** 54 54 ))) 55 55 56 -1. root@ldhost:~~ # systemctl stop lxc@nextcloud-g1.service 57 -1. root@ldhost:~~ # lxc-destroy -n nextcloud-g1 -f 58 -1. root@ldhost:~~ # prun 59 -1. root@nextcloud-g1:~~ # apt install ~-~-reinstall ld-nextcloud=27.1.9 60 -1. root@nextcloud-g1:~~ # prun 61 -1. root@nextcloud-g1:~~ # apt install ~-~-reinstall ld-nextcloud=28.0.5 62 -1. root@nextcloud-g1:~~ # prun 63 -1. root@nextcloud-g1:~~ # apt upgrade -y 64 -1. root@nextcloud-g1:~~ # prun 65 -1. Upgrade Anpassungen für nextcloud-g1 entfernen 66 -1. root@nextcloud-g1:~~ # prun # eventuell 2x notwendig wegen PHP upgrade 109 +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. 110 + 111 + 112 +{{code language="bash"}} 113 +root@nextcloud-g1:~ # apt install --reinstall ld-nextcloud=27.1.9 114 + 115 +root@nextcloud-g1:~ # prun 116 + 117 +root@nextcloud-g1:~ # apt install --reinstall ld-nextcloud=28.0.5 118 + 119 +root@nextcloud-g1:~ # prun 120 + 121 +root@nextcloud-g1:~ # apt upgrade -y 122 + 123 +root@nextcloud-g1:~ # prun 124 +{{/code}} 125 + 126 +Damit ist der eigentliche Aktualisierungsvorgang abgeschlossen. 127 + 128 + 129 +== Upgrade Anpassungen entfernen == 130 + 131 +Abschließend die gesetzten Upgrade-Anpassungen wieder entfernen und die Änderungen ins GIT commiten. 132 + 133 +{{code language="bash"}} 134 +root@puppeteer:~ # cd /etc/logodidact/hiera/custom.d/ 135 +root@puppeteer:/etc/logodidact/hiera/custom.d # vi nextcloud-g1.yaml 136 +{{/code}} 137 + 138 +{{code language="bash"}} 139 +root@puppeteer:/etc/logodidact/hiera/custom.d # git add . 140 +root@puppeteer:/etc/logodidact/hiera/custom.d # git commit -am "KÜRZEL: Temporäre Anpassungen für Nextcloud Upgrade zurückgesetzt." 141 +{{/code}} 142 + 143 +== Abschluss == 144 + 145 +Im Nextcloud-Container die Änderungen durch prun übernehmen. Dadurch wird ggf. auch eine neuere PHP-Version installiert. 146 + 147 +{{code language="bash"}} 148 +root@nextcloud-g1:~ # prun;prun 149 +{{/code}}