Aufgabe #1820
offenAufgabe #1817: Update aller Instanzen mit NixOS von 23.05 -> 23.11
NetBox Update Nix-Channel 23.05 -> 23.11
0%
Beschreibung
Gibt es breaking Changes zwischen den Anwendungsversionen?¶
Für PostgreSQL wechselt die Default-Version von 14 auf 15
NetBox selbst hat breaking changes in Version 3.6.0 (https://docs.netbox.dev/en/stable/release-notes/version-3.6/#breaking-changes), welche für uns aber augenscheinlich irrelevant sind.
Lohnt es sich die stateVersion zu updaten?¶
Ja, die Default-Version der NetBox wird sonst auf die 3.5.9 gesetzt, mit state version 23.11 kommt man auf die 3.6.6
Mit stateVersion 23.11 muss `networking.defaultGateway.interface` zusätzlich zur IP-Adresse gesetzt werden, sobald (wie hier der Fall) systemd-networkd verwendet wird.
Nix channel updaten¶
System neu bauen¶
Von SoerenBoxberger vor 12 Monaten aktualisiert
Zum Testen des Upgrades wurde ein neuer Container erstellt: https://10.1.0.31:8006/#v1:0:=lxc%2F123:4:::::::
Darin soll dann die aktuelle Config mit der stateVersion 23.11 auf dem Channel 23.11 gebaut und ein Datenbank-Dump der produktiven Instanz eingespielt werden.
Wenn das funktioniert, wird die Prozedur noch einmal (dann produktiv) neu durchgeführt.
Von SoerenBoxberger vor 12 Monaten aktualisiert
Das Vorgehen bisher ist wie folgt:
- Mit
einen DB-Dump im produktiv container erzeugensudo -u netbox pg_dump --insert netbox > netbox-$(date +%Y-%m-%d).psql
- Auf dem Host mit
mkdir -p temp/etc/nixos pct pull 113 /etc/nixos/configuration.nix temp/etc/nixos/configuration.nix pct pull 113 /etc/nixos/old-configuration.nix temp/etc/nixos/old-configuration.nix pct pull 113 /var/lib/netbox/secretFile temp/secretFile pct pull 113 /root/netbox-2024-01-10.psql temp/netbox-2024-01-10.psql
- Den neuen Container erstellen
- Auf dem Host mit
die Konfigurationen und den DB-Dump in den neuen Container legen.pct push 123 temp/netbox-2024-01-10.psql /root/netbox-2024-01-10.psql pct push 123 temp/etc/nixos/configuration.nix /etc/nixos/configuration.nix pct push 123 temp/etc/nixos/configuration.nix /etc/nixos/old-configuration.nix pct push 123 temp/etc/nixos/old-configuration.nix /etc/nixos/old-old-configuration.nix
- Im neuen Container die StateVersion auf `23.11` setzen
- Beim defaultGateway muss in der neuen stateVersion auf das Interface gesetzt werden,sonst kommt die Fehlermeldung "networking.defaultGateway.interface is not optional when using networkd" beim Bauen
- Ein Diff sollte so aussehen:
diff old-configuration.nix configuration.nix 12c12 < system.stateVersion = "23.05"; --- > system.stateVersion = "23.11"; 45c46,49 < networking.defaultGateway = "10.1.0.1"; --- > networking.defaultGateway = { > address = "10.1.0.1"; > interface = "eth0"; > };
- Im test container:
nix-channel --add https://nixos.org/channels/nixos-23.11 nixos nix-channel --update nixos-rebuild switch
- Auf dem Host mit
in den neuen Container legen (erst jetzt existiert der Pfad)pct push 123 temp/secretFile /var/lib/netbox/secretFile
- Im test container:
systemctl stop netbox-housekeeping.timer netbox-housekeeping netbox netbox-rq sudo -u postgres psql drop database netbox; create database netbox; alter database netbox owner to netbox; \q sudo -u netbox psql netbox < netbox-2024-01-10.psql netbox-manage migrate systemctl start netbox netbox-rq netbox-housekeeping netbox-housekeeping.timer
Dann läuft NetBox in Version 3.6.6 mit PostgreSQL 15.5 auf Nix-Channel 23.11
Von SoerenBoxberger vor 12 Monaten aktualisiert
Für das Bauen sind mindestens 9 GB RAM nötig.
Als ich versucht habe die Prozedur zu wiederholen, schlug das Bauen wegen eines Timeouts in irgendwelchen Tests fehl. Der einzige Unterschied zwischen dem Test und dem jetzigen Versuch ist der Storage: den Test habe ich auf local-zfs gemacht, die neue Instanz wollte ich wieder auf den ceph Storage legen.
Ich habe jetzt den Storage des Containers auf local-zfs migriert und dort erfolgreich neu gebaut.
Nachdem ich die verbleibenden Schritte durchgeführt habe, habe ich den Storage wieder auf Ceph migriert.
Im alten Container gab es ein Interface namens monitoring, das jemand (wahrscheinlich war ich mit beteiligt) mal hinzugefügt, aber nicht konfiguriert hat.
Deshalb habe ich es bei dem neuen Container weggelassen
Von SoerenBoxberger vor 12 Monaten aktualisiert
- Status wurde von Neu zu Feedback geändert
Container-ID ist 117
Von PaulRiegel vor 2 Monaten aktualisiert
- Vorgänger von Aufgabe #1953: Aktualisierung NixOS (von Version 23.11) auf Version 24.05 Instanz Dienst Serververwaltung (Anwendung NetBox) wurde hinzugefügt