Wer ein schlankes, stabiles und ressourcenschonendes Kubernetes in der Cloud oder im Home-Lab betreibt, landet schnell bei K3s. Die von Rancher entwickelte Distribution läuft extrem performant auf virtuellen Servern (VPS). Ein genialer Pluspunkt von K3s: Das Verwalten von Updates ist erstaunlich unkompliziert.
Egal, ob du auf die neueste stabile Version wechseln oder gezielt auf eine ältere Version zurückrollen willst – mit nur einem Befehl ist die Arbeit meist erledigt. In dieser Anleitung zeigen wir dir, wie das Upgrade und Downgrade funktionieren und worauf du beim Thema Backup unbedingt achten solltest.
1. K3s auf die neueste Stable-Version upgraden
Wenn du dein K3s-Cluster einfach auf den aktuellen, stabilen Stand bringen willst, musst du im Grunde nur das offizielle Installationsskript erneut ausführen. K3s erkennt die bestehende Konfiguration und aktualisiert die Binaries im laufenden Betrieb.
Nutze dafür einfach deinen ursprünglichen Installationsbefehl. Wenn du beispielsweise Traefik und den integrierten ServiceLB deaktiviert hast (weil du einen eigenen Ingress-Controller wie Nginx nutzt), sieht der Befehl wie folgt aus:
curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="--disable traefik --disable servicelb" K3S_KUBECONFIG_MODE="644" sh -s -
Hinweis: Deine bestehenden Flags (wie --disable) und die Kubeconfig-Rechte bleiben dadurch exakt so gesetzt, wie du sie brauchst.
2. Gezieltes Upgrade oder Downgrade auf eine bestimmte Version
Manchmal verlangt ein Projekt oder eine GitOps-Pipeline (z. B. mit ArgoCD) nach einer ganz bestimmten Kubernetes-Minor-Version. Wenn du gezielt auf eine Version wie v1.29.0 wechseln möchtest, kannst du die Umgebungsvariable INSTALL_S3S_VERSION mitschicken:
curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION="v1.29.0+k3s1" INSTALL_K3S_EXEC="--disable traefik --disable servicelb" K3S_KUBECONFIG_MODE="644" sh -s -
Funktioniert das K3s-Downgrade wirklich so einfach?
Ja! Falls du versehentlich auf eine zu neue Version (z. B. v1.30.x) gesprungen bist, kannst du denselben Befehl einfach mit der gewünschten älteren Versionsnummer (v1.29.0+k3s1) erneut ausführen. K3s ersetzt die Binärdateien und startet die Control Plane neu.
Wichtig bei Downgrades: Auch wenn das Ersetzen der K3s-Binaries nahtlos funktioniert, solltest du immer prüfen, ob deine im Cluster laufenden Workloads und deren Custom Resource Definitions (CRDs) mit der älteren Kubernetes-API-Version kompatibel sind.
3. Die Lebensversicherung: Backups vor dem Versionswechsel
Auch wenn K3s-Updates in der Praxis extrem robust sind: Kein Versionswechsel ohne Backup. Wenn sich beim Upgrade die Datenbank-Schemata ändern oder ein Downgrade fehlschlägt, rettet dir ein Snapshot den Tag.
Je nachdem, wie dein K3s-Setup aufgebaut ist, solltest du folgende Schritte durchführen:
VPS / VM-Snapshots
Wenn dein K3s auf einer virtuellen Maschine (z. B. unter Proxmox oder bei einem Cloud-Anbieter) läuft, ist ein vollständiger VM-Snapshot der schnellste Weg zurück. Schlägt etwas fehl, setzt du die VM einfach im Ganzen zurück.
Integriertes Etcd-Backup (falls genutzt)
Falls dein Cluster mit dem integrierten etcd als Datastore läuft, bringt K3s automatisierte Snapshot-Funktionen mit. Du kannst vor dem Update manuell einen Snapshot triggern:
k3s etcd-snapshot save --name vor-upgrade-backup
Die Snapshots liegen standardmäßig unter /var/lib/rancher/k3s/server/db/snapshots/ und können im Ernstfall über das Argument --cluster-reset beim Systemstart wieder eingespielt werden.
Externe SQLite / MariaDB sichern
Nutzt du K3s im Single-Node-Betrieb mit der Standard-SQLite-Datenbank oder extern über eine MariaDB/PostgreSQL (Kine)? Sichere die entsprechende Datenbank-Datei bzw. erstelle einen SQL-Dump, bevor du das Skript ausführst.
Fazit
K3s beweist, dass Kubernetes-Administration nicht kompliziert sein muss. Durch das flexible Installationsskript lassen sich Versionssprünge in Sekundenschnelle vollziehen – und selbst ein versehentliches Upgrade ist dank der unkomplizierten Downgrade-Möglichkeit kein Weltuntergang. Mit einem frischen Backup in der Hinterhand bist du für das nächste Wartungsfenster perfekt vorbereitet.







