Änderungen von Dokument Nextcloud 29 Upgrade unter LogoDIDACT 2.0
Zuletzt geändert von Tom Altenbrunn am 2025/03/26 08:25
Von Version 1.1
bearbeitet von Tom Altenbrunn
am 2024/10/25 15:40
am 2024/10/25 15:40
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Auf Version 3.2
bearbeitet von Tom Altenbrunn
am 2024/11/04 16:09
am 2024/11/04 16:09
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Zusammenfassung
-
Seiteneigenschaften (1 geändert, 0 hinzugefügt, 0 gelöscht)
Details
- Seiteneigenschaften
-
- Inhalt
-
... ... @@ -1,39 +1,139 @@ 1 - Die Lösung für dieses Problem unter LD20 wird sosein, dass das vorhandene nextcloud-g1 Container auf Basis von jammy aktualisiert wird. Hier beschreibe ich grob das Vorgehen, wie man vorhandenen nextcloud-g1 Container neu aufbaut.1 +{{toc/}} 2 2 3 +---- 3 3 4 -1. ldupdate im puppeteer => Update auf ld-puppet10 in Version 1.6.x 5 -1. root@puppeteer:~~ # puppet-master-remove-client nextcloud-g1 6 -1. Release von nextcloud-g1 auf jammy ändern: 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. 7 7 8 -{{{root@puppeteer:~ # cat /etc/logodidact/hiera/custom.d/ldhost.yaml 9 -}}}((( 10 -profile::lxc::host: 11 11 12 - guests: nextcloud-g1: { ensure: running, release: jammy } 8 += Server aktualisieren = 9 + 10 +Zunächst den Server mit den aktuellsten Updates versorgen und die aktuelle Puppet-Version 1.6.X installieren. 11 + 12 +{{code language="bash"}} 13 +root@ldhost:~ # ssh puppeteer 14 +root@puppeteer:~ # ldupdate 15 +{{/code}} 16 + 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. 18 + 19 +{{code language="bash"}} 20 +root@ldhost:~ # prun;prun 21 +root@ldhost:~ # ssh logosrv 22 + 23 +root@logosrv:~ # ldupdate 24 + 25 +root@ldhost:~ # gprun;gprun 26 +{{/code}} 27 + 28 += = 29 + 30 += Nextcloud-Containeranpassungen = 31 + 32 +== Nextcloud-Instanz zerstören == 33 + 34 +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. 35 + 36 +(% class="box infomessage" %) 37 +((( 38 +Die Benutzerdaten bleiben erhalten, da diese im ldhost im Verzeichnis lxc.data vorliegen. 13 13 ))) 14 -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: 15 15 16 -{{{ 17 - }}} 41 +{{code language="bash"}} 42 +root@puppeteer:~ # puppet-master-remove-client nextcloud-g1 43 +{{/code}} 18 18 19 -{{{ 20 - }}}root@puppeteer:/etc/logodidact # cat hiera/custom.d/nextcloud-g1.yaml((( 21 -php::globals::php_version: '8.1' 45 +== == 22 22 23 - php::package_prefix:'php8.1-'47 +== Ubuntu-Version des LXC anheben == 24 24 49 +Im **puppeteer **wird in der Konfigurations-Datei des **ldhost **für den **nextcloud-g1**-Container die Ubuntu-Release-Version auf Jammy gesetzt. 50 + 51 +{{code language="bash"}} 52 +root@puppeteer:~ # vi /etc/logodidact/hiera/custom.d/ldhost.yaml 53 +{{/code}} 54 + 55 +{{code language="bash"}} 56 +profile::lxc::host: 57 + guests: 58 + nextcloud-g1: 59 + ensure: running 60 + release: jammy 61 +{{/code}} 62 + 63 +== == 64 + 65 +== Upgrade Anpassungen == 66 + 67 +Während der Dauer des Upgrades ist es vonnöten die korrekte PHP-Version statisch per Nextcloud-Konfiguration mitzugeben. 68 + 69 +{{code language="bash"}} 70 +root@puppeteer:~ # vi /etc/logodidact/hiera/custom.d/nextcloud-g1.yaml 71 +{{/code}} 72 + 73 +{{code language="bash"}} 74 +php::globals::php_version: '8.1' 75 +php::package_prefix: 'php8.1-' 25 25 ld_base::fixes::php::historic_php_versions: 77 + - '8.3' 78 +{{/code}} 26 26 27 - - '8.3' 28 -))) 29 -1. root@ldhost:~~ # systemctl stop lxc@nextcloud-g1.service 30 -1. root@ldhost:~~ # lxc-destroy -n nextcloud-g1 -f 31 -1. root@ldhost:~~ # prun 32 -1. root@nextcloud-g1:~~ # apt install ~-~-reinstall ld-nextcloud=27.1.9 33 -1. root@nextcloud-g1:~~ # prun 34 -1. root@nextcloud-g1:~~ # apt install ~-~-reinstall ld-nextcloud=28.0.5 35 -1. root@nextcloud-g1:~~ # prun 36 -1. root@nextcloud-g1:~~ # apt upgrade -y 37 -1. root@nextcloud-g1:~~ # prun 38 -1. Upgrade Anpassungen für nextcloud-g1 entfernen 39 -1. root@nextcloud-g1:~~ # prun # eventuell 2x notwendig wegen PHP upgrade 80 +Alle Änderungen an den Konfigurationen ins GIT commiten. 81 + 82 + 83 +== Re-Installation Nextcloud == 84 + 85 +Zunächst den jeweiligen LXC-Containerdienst im ldhost deaktivieren. Dadurch wird der LXC vollständig heruntergefahren. 86 + 87 +{{code language="bash"}} 88 +root@ldhost:~ # systemctl stop lxc@nextcloud-g1.service 89 +{{/code}} 90 + 91 +Danach den ausgeschalteten und nicht mehr benötigten Nextcloud-Container vom Host-System löschen. 92 + 93 +{{code language="bash"}} 94 +root@ldhost:~ # lxc-destroy -n nextcloud-g1 -f 95 +{{/code}} 96 + 97 +Ein darauf folgender prun baut den Container neu auf unter Berücksichtigung der in den vorangegangen Schritten getätigten Vorgaben. 98 + 99 +{{code language="bash"}} 100 +root@ldhost:~ # prun 101 +{{/code}} 102 + 103 +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. 104 + 105 + 106 +{{code language="bash"}} 107 +root@nextcloud-g1:~ # apt install --reinstall ld-nextcloud=27.1.9 108 + 109 +root@nextcloud-g1:~ # prun 110 + 111 +root@nextcloud-g1:~ # apt install --reinstall ld-nextcloud=28.0.5 112 + 113 +root@nextcloud-g1:~ # prun 114 + 115 +root@nextcloud-g1:~ # apt upgrade -y 116 + 117 +root@nextcloud-g1:~ # prun 118 +{{/code}} 119 + 120 +Damit ist der eigentliche Aktualisierungsvorgang abgeschlossen. 121 + 122 +== Upgrade Anpassungen entfernen == 123 + 124 +Abschließend die gesetzten Upgrade-Anpassungen wieder entfernen und die Änderungen ins GIT commiten. 125 + 126 +{{code language="bash"}} 127 +root@puppeteer:~ # vi /etc/logodidact/hiera/custom.d/nextcloud-g1.yaml 128 +{{/code}} 129 + 130 + 131 +== Abschluss == 132 + 133 +Im Nextcloud-Container die Änderungen durch prun übernehmen. Dadurch wird ggf. auch eine neuere PHP-Version installiert. 134 + 135 +{{code language="bash"}} 136 +root@nextcloud-g1:~ # prun;prun 137 +{{/code}} 138 + 139 +