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
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 3.5
bearbeitet von Tom Altenbrunn
am 2024/11/04 16:20
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Inhalt
... ... @@ -1,39 +1,154 @@
1 -Die Lösung für dieses Problem unter LD20 wird so sein, 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 +== Ubuntu-Version des LXC anheben ==
22 22  
23 -php::package_prefix: 'php8.1-'
47 +Im **puppeteer **wird in der Konfigurations-Datei des **ldhost **für den **nextcloud-g1**-Container die Ubuntu-Release-Version auf Jammy gesetzt.
24 24  
49 +{{code language="bash"}}
50 +root@puppeteer:~ # cd /etc/logodidact/hiera/custom.d/
51 +root@puppeteer:/etc/logodidact/hiera/custom.d # vi ldhost.yaml
52 +{{/code}}
53 +
54 +{{code language="bash"}}
55 +profile::lxc::host:
56 + guests:
57 + nextcloud-g1:
58 + ensure: running
59 + release: jammy
60 +{{/code}}
61 +
62 +== ==
63 +
64 +== Upgrade Anpassungen ==
65 +
66 +Während der Dauer des Upgrades ist es vonnöten die korrekte PHP-Version statisch per Nextcloud-Konfiguration mitzugeben.
67 +
68 +{{code language="bash"}}
69 +root@puppeteer:~ # cd /etc/logodidact/hiera/custom.d/
70 +root@puppeteer:/etc/logodidact/hiera/custom.d # vi 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'
80 +Alle Änderungen an den Konfigurationen ins GIT commiten.
81 +
82 +{{code language="bash"}}
83 +root@puppeteer:/etc/logodidact/hiera/custom.d # git add .
84 +root@puppeteer:/etc/logodidact/hiera/custom.d # git commit -am "KÜRZEL: Temporäre Anpassungen für Nextcloud Upgrade vorgenommen."
85 +{{/code}}
86 +
87 +
88 +== Re-Installation Nextcloud ==
89 +
90 +Zunächst den jeweiligen LXC-Containerdienst im **ldhost **deaktivieren. Dadurch wird der LXC vollständig heruntergefahren.
91 +
92 +{{code language="bash"}}
93 +root@ldhost:~ # systemctl stop lxc@nextcloud-g1.service
94 +{{/code}}
95 +
96 +Danach den ausgeschalteten und nicht mehr benötigten Nextcloud-Container vom Host-System löschen.
97 +
98 +{{code language="bash"}}
99 +root@ldhost:~ # lxc-destroy -n nextcloud-g1 -f
100 +{{/code}}
101 +
102 +Ein darauf folgender prun baut den Container neu auf unter Berücksichtigung der in den vorangegangen Schritten getätigten Vorgaben.
103 +
104 +{{code language="bash"}}
105 +root@ldhost:~ # prun
106 +{{/code}}
107 +
108 +(% class="box warningmessage" %)
109 +(((
110 +**Gegebenenfalls sind je nach Geschwindigkeit des Servers noch weitere pruns notwendig.**
28 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
112 +
113 +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.
114 +
115 +
116 +{{code language="bash"}}
117 +root@nextcloud-g1:~ # apt install --reinstall ld-nextcloud=27.1.9
118 +
119 +root@nextcloud-g1:~ # prun
120 +
121 +root@nextcloud-g1:~ # apt install --reinstall ld-nextcloud=28.0.5
122 +
123 +root@nextcloud-g1:~ # prun
124 +
125 +root@nextcloud-g1:~ # apt upgrade -y
126 +
127 +root@nextcloud-g1:~ # prun
128 +{{/code}}
129 +
130 +Damit ist der eigentliche Aktualisierungsvorgang abgeschlossen.
131 +
132 +
133 +== Upgrade Anpassungen entfernen ==
134 +
135 +Abschließend die gesetzten Upgrade-Anpassungen wieder entfernen und die Änderungen ins GIT commiten.
136 +
137 +{{code language="bash"}}
138 +root@puppeteer:~ # cd /etc/logodidact/hiera/custom.d/
139 +root@puppeteer:/etc/logodidact/hiera/custom.d # vi nextcloud-g1.yaml
140 +{{/code}}
141 +
142 +{{code language="bash"}}
143 +root@puppeteer:/etc/logodidact/hiera/custom.d # git add .
144 +root@puppeteer:/etc/logodidact/hiera/custom.d # git commit -am "KÜRZEL: Temporäre Anpassungen für Nextcloud Upgrade zurückgesetzt."
145 +{{/code}}
146 +
147 +== Abschluss ==
148 +
149 +Im Nextcloud-Container die Änderungen durch prun übernehmen. Dadurch wird ggf. auch eine neuere PHP-Version installiert.
150 +
151 +{{code language="bash"}}
152 +root@nextcloud-g1:~ # prun;prun
153 +{{/code}}
154 +