Text size
Ausprobiert & getestet6 Min. Lesezeit

Kubernetes zu Hause: Talos, k3s und ein Heimlabor

Ein kleines Cluster über billige Hardware und was es uns über Produktion lehrt.

Kubernetes at home: Talos, k3s and a homelab
KI-generierte Illustration

Bei der Arbeit ist Kubernetes normalerweise vorgebaut. Ein verwalteter Service, ein Plattformteam, ein paar Klicks oder ein Terraform-Modul, und der Cluster existiert. Das ist großartig für die Produktivität, und schrecklich für das Lernen, wie die Dinge tatsächlich dahinter funktionieren.

Ein Heimlabor kann das beheben. Ein paar kleine Maschinen auf einem Regal, ein Cluster, das du selbst gebaut hast, und niemand außer dir, wenn es kaputt geht. Es ist eine der besten Investitionen in das Lernen, die ich kenne.

Warum ein Heimlabor bauen

  • Sie lernen, welche Ebenen verwaltete Dienste versteckenDie Kommission hat die Kommission aufgefordert, die in den letzten Jahren durchgeführten Maßnahmen zu prüfen.
  • Du kannst Dinge frei brechen. Keine Wechselkarten, keine Kunden.
  • Du kannst Werkzeuge ausprobieren. Vor dem Einsatz bei der Arbeit: GitOps, Service-Meshes, Observability-Stacks, Policy-Engines.
  • Es ist wirklich nützlich. Viele Leute betreiben ihre Heimdienste (Medien, Backups, Heimautomation, Passwortmanager) darauf.
  • Das sieht gut aus auf einem Lebenslauf .Vor allem, wenn du darüber schreibst.

Was für eine Hardware?

Du brauchst nicht viel.

  • Mini-PCs (Intel NUC-Stil oder ähnlich) sind die beliebteste Wahl: leise, effizient, x86, genügend RAM.
  • Raspberry Pi Die Platten funktionieren gut mit leichten Distributionen, aber ARM und SD-Speicherkarten fügen einige Eigenheiten hinzu.
  • Ein alter Laptop oder Desktop Wir haben eine gute Idee, wie wir mit virtuellen Maschinen beginnen können.

Drei Knoten sind ein gutes Ziel: genug, um zu erfahren, wie hoch die Verfügbarkeit ist und was passiert, wenn ein Knoten stirbt. Planen Sie mindestens 8 GB RAM pro Knoten und verwenden Sie SSDs statt SD-Karten für alles, was Ihnen wichtig ist.

Talos gegen K3s

Zwei Distributionen zeichnen sich für Heimlabs aus, und sie haben sehr unterschiedliche Philosophien.

k3s ist eine leichte, voll kompatible Kubernetes-Distribution von Rancher (SUSE). Ein einziges Binärsystem, installiert auf einem normalen Linux-System mit einem Befehl:

curl -sfL https://get.k3s.io | sh -

Es verfügt über sensible, eingebaute Standardeinstellungen: eine Container-Laufzeit, Netzwerkverbindungen, einen lokalen Speicherprovider und einen Eingangskontrollen. Es ist der schnellste Weg zu einem funktionierenden Cluster und sehr vergebend.

Talos Linux ist ein Betriebssystem, das nur für Kubernetes entwickelt wurde. Keine SSH, keine Shell, kein Paketmanager. Alles wird über eine API mit talosctl und eine YAML-Maschinenkonfiguration. Das Betriebssystem ist unveränderlich, also können Knoten nicht abdriften, und Upgrades sind atomar.

talosctl gen config homelab https://192.168.1.10:6443
talosctl apply-config --insecure --nodes 192.168.1.10 --file controlplane.yaml
talosctl bootstrap --nodes 192.168.1.10

Meine Meinung: K3s, wenn Sie Kubernetes schnell lernen wollen, Talos, wenn Sie lernen wollen, wie sich eine Produktions- und unveränderliche Infrastruktur anfühlt- Ich weiß . Talos ist strenger und hat einen steileren Start, aber wenn es einmal klickt, ist es schwer, zu SSH-In-Nodes zurückzukehren.

Weitere Möglichkeiten, die es wert sind, zu kennen: k0s, Mikrok8, und einfach Becken Wenn man alles auf die harte Tour machen will.

Ein Heimlabor lehrt Sie mehr in einem verletzten Wochenende, als ein verwalteter Cluster in einem Jahr.

Ein Stapel , der sich zu bauen lohnt .

Sobald der Cluster läuft, gibt es hier einen Lernpfad, der echte Produktions-Setups widerspiegelt:

  1. GitOps mit Argo CD oder Flux. Alles in Git vom ersten Tag an.
  2. Vernetzung mit Cilium und Die Bank hat oder Ciliums eigene Lastbalancer-Unterstützung, um echte IPs für Dienstleistungen zu Hause zu erhalten.
  3. Gateway-API mit dem Cert-Manager und Let's Encrypt für HTTPS.
  4. Aufbewahrung mit Longhorn oder einem einfachen NFS-Provisioner.
  5. BeobachtbarkeitPrometheus, Grafana, Loki. Das ist ein Schwein.
  6. Geheimnisse mit External Secrets oder SOPS.
  7. Sicherungen mit Velero auf eine externe Festplatte oder Cloud-Speicher.

Jeder Schritt lehrt etwas, das du bei der Arbeit nutzen kannst.

Lehren für die echte Arbeit

Die Dinge, die mir ein Heimlabor gelehrt hat, das verwaltete Cluster nie tat:

  • Die größte Schwierigkeit ist es, sich zu vernetzen. IP-Bereiche, DNS, Lastbalancer, Probleme mit der MTU.
  • Die Aufbewahrung ist der schwierigste Teil der Zuverlässigkeit. Eine Festplatte im Heimlabor zu verlieren, macht Backups sehr real.
  • Upgrades brauchen Übung. Wenn Sie sie regelmäßig auf Ihrem eigenen Cluster machen, macht das Produktionsupgrade viel weniger beängstigend.
  • Eine unveränderliche Infrastruktur ist es wert. Ein Knoten aus der Konfiguration wieder aufzubauen schlägt besser als es von Hand zu reparieren.
  • Schreib alles auf. In Zukunft werden Sie sich nicht mehr daran erinnern, warum diese Einstellung existiert.

Also, ist es das wert?

Wenn Sie mit Kubernetes arbeiten, oder wollen, absolut. Es kostet ein paar hundert Euro, oder gar nichts, wenn man alte Hardware wiederverwendet, und einige Abende. Im Gegenzug erhalten Sie ein tiefes Verständnis für das System, mit dem Sie jeden Tag arbeiten.

Ich sage: Bauen Sie es selbst. Sie werden jeden verwalteten Cluster, den Sie berühren, danach ein wenig besser verstehen.

Desly