Wiki-Quellcode von Nextcloud Upgrade

Version 2.16 von Tom Altenbrunn am 2024/11/04 15:41

Zeige letzte Bearbeiter
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.
2
3
4 = Server aktualisieren =
5
6 Zunächst den Server mit den aktuellsten Updates versorgen und die aktuelle Puppet-Version 1.6.X installieren.
7
8 {{code language="bash"}}
9 root@ldhost:~ # ssh puppeteer
10 root@puppeteer:~ # ldupdate
11 {{/code}}
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.
14
15 {{code language="bash"}}
16 root@ldhost:~ # prun;prun
17 root@ldhost:~ # ssh logosrv
18
19 root@logosrv:~ # ldupdate
20
21 root@ldhost:~ # gprun;gprun
22 {{/code}}
23
24 = Nextcloud-Containeranpassungen =
25
26 == Nextcloud-Instanz zerstören ==
27
28 Nun wird die alte nextcloud-g1 Instanz unter der alten Ubuntu-Basis zerstört, damit diese im Anschluss mit der neuen Ubuntu-Version wieder aufgebaut werden kann.
29
30 (% class="box infomessage" %)
31 (((
32 Die Benutzerdaten bleiben erhalten, da diese im ldhost im Verzeichnis lxc.data vorliegen.
33 )))
34
35 {{code language="bash"}}
36 root@puppeteer:~ # puppet-master-remove-client nextcloud-g1
37 {{/code}}
38
39 == Ubuntu-Version des LXC anheben ==
40
41 Im puppeteer wird in der Konfigurations-Datei des ldhost für den nextcloud-g1-Container die Ubuntu-Release-Version auf Jammy gesetzt.
42
43 {{code language="bash"}}
44 root@puppeteer:~ # vi /etc/logodidact/hiera/custom.d/ldhost.yaml
45 {{/code}}
46
47 {{code language="bash"}}
48 profile::lxc::host:
49 guests:
50 nextcloud-g1:
51 ensure: running
52 release: jammy
53 {{/code}}
54
55 Während der Dauer des Upgrades ist es vonnöten noch die korrekte PHP-Version statisch per Nextcloud-Konfiguration mitzugeben.
56
57 {{code language="bash"}}
58 root@puppeteer:~ # vi /etc/logodidact/hiera/custom.d/nextcloud-g1.yaml
59 {{/code}}
60
61 {{code language="bash"}}
62 php::globals::php_version: '8.1'
63 php::package_prefix: 'php8.1-'
64 ld_base::fixes::php::historic_php_versions:
65 - '8.3'
66 {{/code}}
67
68 Alle Änderungen an den Konfigurationen ins GIT commiten.
69
70
71
72
73
74 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:
75
76 {{{
77 }}}
78
79 root@puppeteer:/etc/logodidact # cat hiera/custom.d/nextcloud-g1.yaml
80
81 (((
82 php::globals::php_version: '8.1'
83
84 php::package_prefix: 'php8.1-'
85
86 ld_base::fixes::php::historic_php_versions:
87
88 - '8.3'
89 )))
90
91 1. root@ldhost:~~ # systemctl stop lxc@nextcloud-g1.service
92 1. root@ldhost:~~ # lxc-destroy -n nextcloud-g1 -f
93 1. root@ldhost:~~ # prun
94 1. root@nextcloud-g1:~~ # apt install ~-~-reinstall ld-nextcloud=27.1.9
95 1. root@nextcloud-g1:~~ # prun
96 1. root@nextcloud-g1:~~ # apt install ~-~-reinstall ld-nextcloud=28.0.5
97 1. root@nextcloud-g1:~~ # prun
98 1. root@nextcloud-g1:~~ # apt upgrade -y
99 1. root@nextcloud-g1:~~ # prun
100 1. Upgrade Anpassungen für nextcloud-g1 entfernen
101 1. root@nextcloud-g1:~~ # prun # eventuell 2x notwendig wegen PHP upgrade