Zuletzt geändert von Tom Altenbrunn am 2025/03/26 08:25

Von Version 2.2
bearbeitet von Tom Altenbrunn
am 2024/11/04 14:41
Änderungskommentar: (Autosaved)
Auf Version 3.1
bearbeitet von Tom Altenbrunn
am 2024/11/04 16:05
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Inhalt
... ... @@ -1,48 +1,133 @@
1 +{{toc/}}
2 +
3 +----
4 +
1 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 2  
3 3  
4 -Server
8 += Server aktualisieren =
5 5  
10 +Zunächst den Server mit den aktuellsten Updates versorgen und die aktuelle Puppet-Version 1.6.X installieren.
6 6  
12 +{{code language="bash"}}
13 +root@ldhost:~ # ssh puppeteer
14 +root@puppeteer:~ # ldupdate
15 +{{/code}}
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:
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.
11 11  
12 -{{{root@puppeteer:~ # cat /etc/logodidact/hiera/custom.d/ldhost.yaml
13 -}}}
19 +{{code language="bash"}}
20 +root@ldhost:~ # prun;prun
21 +root@ldhost:~ # ssh logosrv
14 14  
15 -(((
16 -profile::lxc::host:
23 +root@logosrv:~ # ldupdate
17 17  
18 - guests: nextcloud-g1: { ensure: running, release: jammy }
19 -)))
25 +root@ldhost:~ # gprun;gprun
26 +{{/code}}
20 20  
21 -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:
28 += Nextcloud-Containeranpassungen =
22 22  
23 -{{{
24 - }}}
30 +== Nextcloud-Instanz zerstören ==
25 25  
26 -root@puppeteer:/etc/logodidact # cat hiera/custom.d/nextcloud-g1.yaml
32 +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.
27 27  
34 +(% class="box infomessage" %)
28 28  (((
29 -php::globals::php_version: '8.1'
36 +Die Benutzerdaten bleiben erhalten, da diese im ldhost im Verzeichnis lxc.data vorliegen.
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:~ # vi /etc/logodidact/hiera/custom.d/ldhost.yaml
49 +{{/code}}
50 +
51 +{{code language="bash"}}
52 +profile::lxc::host:
53 + guests:
54 + nextcloud-g1:
55 + ensure: running
56 + release: jammy
57 +{{/code}}
58 +
59 +== Upgrade Anpassungen ==
60 +
61 +Während der Dauer des Upgrades ist es vonnöten noch die korrekte PHP-Version statisch per Nextcloud-Konfiguration mitzugeben.
62 +
63 +{{code language="bash"}}
64 +root@puppeteer:~ # vi /etc/logodidact/hiera/custom.d/nextcloud-g1.yaml
65 +{{/code}}
66 +
67 +{{code language="bash"}}
68 +php::globals::php_version: '8.1'
69 +php::package_prefix: 'php8.1-'
33 33  ld_base::fixes::php::historic_php_versions:
71 + - '8.3'
72 +{{/code}}
34 34  
35 - - '8.3'
36 -)))
74 +Alle Änderungen an den Konfigurationen ins GIT commiten.
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
76 +
77 +== Re-Installation Nextcloud ==
78 +
79 +Zunächst den jeweiligen LXC-Containerdienst im ldhost deaktivieren. Dadurch wird der LXC vollständig heruntergefahren.
80 +
81 +{{code language="bash"}}
82 +root@ldhost:~ # systemctl stop lxc@nextcloud-g1.service
83 +{{/code}}
84 +
85 +Danach den ausgeschalteten und nicht mehr benötigten Nextcloud-Container vom Host-System löschen.
86 +
87 +{{code language="bash"}}
88 +root@ldhost:~ # lxc-destroy -n nextcloud-g1 -f
89 +{{/code}}
90 +
91 +Ein darauf folgender prun baut den Container neu auf unter Berücksichtigung der in den vorangegangen Schritten getätigten Vorgaben.
92 +
93 +{{code language="bash"}}
94 +root@ldhost:~ # prun
95 +{{/code}}
96 +
97 +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.
98 +
99 +
100 +{{code language="bash"}}
101 +root@nextcloud-g1:~ # apt install --reinstall ld-nextcloud=27.1.9
102 +
103 +root@nextcloud-g1:~ # prun
104 +
105 +root@nextcloud-g1:~ # apt install --reinstall ld-nextcloud=28.0.5
106 +
107 +root@nextcloud-g1:~ # prun
108 +
109 +root@nextcloud-g1:~ # apt upgrade -y
110 +
111 +root@nextcloud-g1:~ # prun
112 +{{/code}}
113 +
114 +Damit ist der eigentliche Aktualisierungsvorgang abgeschlossen.
115 +
116 +== Upgrade Anpassungen entfernen ==
117 +
118 +Abschließend die gesetzten Upgrade-Anpassungen wieder entfernen und die Änderungen ins GIT commiten.
119 +
120 +{{code language="bash"}}
121 +root@puppeteer:~ # vi /etc/logodidact/hiera/custom.d/nextcloud-g1.yaml
122 +{{/code}}
123 +
124 +
125 +== Abschluss ==
126 +
127 +Im Nextcloud-Container die Änderungen durch prun übernehmen. Dadurch wird ggf. auch eine neuere PHP-Version installiert.
128 +
129 +{{code language="bash"}}
130 +root@nextcloud-g1:~ # prun;prun
131 +{{/code}}
132 +
133 +