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

Von Version 2.8
bearbeitet von Tom Altenbrunn
am 2024/11/04 15:11
Änderungskommentar: (Autosaved)
Auf Version 7.1
bearbeitet von Jonas Mayer
am 2024/11/05 09:19
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Dokument-Autor
... ... @@ -1,1 +1,1 @@
1 -XWiki.TomAltenbrunn@sbede
1 +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,48 +23,123 @@
23 23  
24 24  = Nextcloud-Containeranpassungen =
25 25  
30 +== Nextcloud-Instanz zerstören ==
26 26  
27 -== Ubuntu-Version des LXC anheben ==
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.
28 28  
29 -In der
34 +(% class="box infomessage" %)
35 +(((
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 -1. root@puppeteer:~~ # puppet-master-remove-client nextcloud-g1
32 -1. Release von nextcloud-g1 auf jammy ändern:
39 +{{code language="bash"}}
40 +root@puppeteer:~ # puppet-master-remove-client nextcloud-g1
41 +{{/code}}
33 33  
34 -{{{root@puppeteer:~ # cat /etc/logodidact/hiera/custom.d/ldhost.yaml
35 -}}}
43 +== Ubuntu-Version des LXC anheben ==
36 36  
37 -(((
38 -profile::lxc::host:
45 +Im **puppeteer **wird in der Konfigurations-Datei des **ldhost **für den **nextcloud-g1**-Container die Ubuntu-Release-Version auf Jammy gesetzt.
39 39  
40 - guests: nextcloud-g1: { ensure: running, release: jammy }
41 -)))
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}}
42 42  
43 -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:
52 +{{code language="bash"}}
53 +profile::lxc::host:
54 + guests:
55 + nextcloud-g1:
56 + ensure: running
57 + release: jammy
58 +{{/code}}
44 44  
45 -{{{
46 - }}}
60 +== Upgrade Anpassungen ==
47 47  
48 -root@puppeteer:/etc/logodidact # cat hiera/custom.d/nextcloud-g1.yaml
62 +Während der Dauer des Upgrades ist es vonnöten die korrekte PHP-Version statisch per Nextcloud-Konfiguration mitzugeben.
49 49  
50 -(((
51 -php::globals::php_version: '8.1'
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}}
52 52  
69 +{{code language="bash"}}
70 +php::globals::php_version: '8.1'
53 53  php::package_prefix: 'php8.1-'
54 -
55 55  ld_base::fixes::php::historic_php_versions:
73 + - '8.3'
74 +{{/code}}
56 56  
57 - - '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.**
58 58  )))
59 59  
60 -1. root@ldhost:~~ # systemctl stop lxc@nextcloud-g1.service
61 -1. root@ldhost:~~ # lxc-destroy -n nextcloud-g1 -f
62 -1. root@ldhost:~~ # prun
63 -1. root@nextcloud-g1:~~ # apt install ~-~-reinstall ld-nextcloud=27.1.9
64 -1. root@nextcloud-g1:~~ # prun
65 -1. root@nextcloud-g1:~~ # apt install ~-~-reinstall ld-nextcloud=28.0.5
66 -1. root@nextcloud-g1:~~ # prun
67 -1. root@nextcloud-g1:~~ # apt upgrade -y
68 -1. root@nextcloud-g1:~~ # prun
69 -1. Upgrade Anpassungen für nextcloud-g1 entfernen
70 -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}}