Möchten Sie Kubernetes auf Ubuntu installieren, ohne einen komplizierten Cluster von Grund auf konfigurieren zu müssen? K3s ist eine schlanke Kubernetes-Distribution, die den Vorgang vereinfacht und damit eine praktische Wahl für Entwickler ist, die Kubernetes auf einem VPS kennenlernen möchten.
In dieser Anleitung erfahren Sie, wie Sie Kubernetes mit K3s auf Ubuntu 24.04 installieren, einen Single-Node-Cluster erstellen, eine Nginx-Anwendung bereitstellen und prüfen, ob alles funktioniert.
Sie müssen weder Docker installieren noch eine separate Container-Laufzeitumgebung konfigurieren.
Was ist K3s und warum sollten Sie es verwenden?
K3s ist eine schlanke, CNCF-zertifizierte Kubernetes-Distribution, die die Installation und den Betrieb von Kubernetes vereinfacht.
Sie bündelt wesentliche Komponenten, darunter eine Container-Laufzeitumgebung und die Cluster-Netzwerkfunktionen, in einer vereinfachten Installation.
Anders als bei einer herkömmlichen Kubernetes-Installation mit kubeadm übernimmt K3s einen Großteil der Erstkonfiguration automatisch.
Eine K3s-Installation auf einem einzelnen Node ist ein funktionsfähiger Kubernetes-Cluster und eignet sich damit für Entwicklung, Tests und zum Lernen.
Wenn Sie mit Kubernetes-Konzepten wie Pods und Deployments noch nicht vertraut sind, lesen Sie zuerst unseren Leitfaden Was ist Kubernetes?.

Voraussetzungen
Bevor Sie beginnen, benötigen Sie:
- Einen Server mit Ubuntu 24.04 LTS.
- SSH-Zugriff mit sudo-Berechtigungen.
- Mindestens 2 CPU-Kerne und 2 GB RAM.
- Vorzugsweise 4 GB RAM oder mehr für eine angenehme Lernumgebung.
- Ausreichend SSD-Speicherplatz und Internetzugang zum Herunterladen von Container-Images.
K3s nennt offiziell 2 CPU-Kerne und 2 GB RAM als Mindestanforderungen für einen Server-Node. Die Anforderungen der tatsächlichen Workloads können höher sein.
Sicherheitshinweis: Stellen Sie sicher, dass SSH erreichbar bleibt, und beschränken Sie den Zugriff auf die Kubernetes-API an Port 6443. Für diese Anleitung müssen Sie den Port nicht öffentlich öffnen. Wenn Sie UFW oder eine andere Firewall verwenden, prüfen Sie vor der Installation die offiziellen Netzwerkanforderungen von K3s.
Schritt 1: Ihren Ubuntu-Server aktualisieren
Verbinden Sie sich über SSH mit Ihrem Ubuntu-Server und aktualisieren Sie die Paketinformationen:
sudo apt update
sudo apt upgrade -y
Prüfen Sie die Ubuntu-Version:
lsb_release -a
Ubuntu 24.04 LTS sollte angezeigt werden.
Starten Sie den Server neu, falls Systemupdates dies erfordern, und verbinden Sie sich anschließend erneut über SSH.
K3s installiert seine eigene Container-Laufzeitumgebung. Docker Engine ist daher nicht erforderlich.
Schritt 2: Kubernetes mit K3s auf Ubuntu installieren
K3s stellt ein offizielles Installationsskript bereit.
Der Standardbefehl für die Installation lautet:
curl -sfL https://get.k3s.io | sh -
Damit wird das K3s-Installationsprogramm heruntergeladen und ausgeführt. Lesen Sie vor der Ausführung die offizielle Installationsanleitung und prüfen Sie das Installationsprogramm, insbesondere auf einem Produktionsserver.
Bei der Installation wird K3s als systemd-Dienst eingerichtet. Außerdem werden Verwaltungswerkzeuge für Kubernetes installiert.
Prüfen Sie nach Abschluss des Vorgangs den Dienst:
sudo systemctl status k3s
Achten Sie auf:
Active: active (running)
Drücken Sie q, um die Statusanzeige zu verlassen.
Wenn der Dienst läuft, wurde Ihre Kubernetes-Installation erfolgreich gestartet.
Schritt 3: Ihren Kubernetes-Cluster überprüfen
K3s enthält das Kommandozeilenwerkzeug kubectl zur Verwaltung von Kubernetes-Ressourcen.
Führen Sie Folgendes aus:
sudo k3s kubectl get nodes
Nach der Initialisierung des Clusters sehen Sie eine Ausgabe ähnlich der folgenden:
NAME STATUS ROLES AGE VERSION
ubuntu-vps Ready control-plane,master 2m v1.xx.x+k3s1
Ihr Hostname und Ihre Kubernetes-Version werden abweichen.
Entscheidend ist der Wert Ready. Er zeigt an, dass Kubernetes den Node als bereit für Workloads betrachtet.
Prüfen Sie als Nächstes die System-Pods:
sudo k3s kubectl get pods -A
Damit werden Pods aus allen Namespaces aufgeführt, einschließlich der Kubernetes-Systemdienste.
Die Initialisierung einiger Komponenten kann etwas dauern. Prüfen Sie sie erneut, falls sie noch starten.
Nachdem Sie Kubernetes mit K3s auf Ubuntu installiert haben, kann Ihr Cluster containerisierte Anwendungen ausführen. Stellen wir Nginx bereit, um zu prüfen, ob alles funktioniert.
Schritt 4: Ihre erste Anwendung bereitstellen
Da der Cluster nun läuft, stellen wir einen einfachen Nginx-Webserver bereit.
Erstellen Sie ein Deployment:
sudo k3s kubectl create deployment demo-nginx --image=nginx:stable
Kubernetes erstellt ein Deployment, das einen Nginx-Container verwaltet.
Prüfen Sie den Fortschritt:
sudo k3s kubectl get deployments
Warten Sie, bis für das Deployment eine verfügbare Replik angezeigt wird.
Sie können auch den zugehörigen Pod prüfen:
sudo k3s kubectl get pods
Der Pod sollte schließlich den Status Running anzeigen und sein Container bereit sein.
Wenn ContainerCreating angezeigt wird, wird das Container-Image möglicherweise noch heruntergeladen.
Schritt 5: Einen Kubernetes-Service erstellen
Ein Kubernetes-Service stellt einen stabilen Netzwerkendpunkt für den Zugriff auf eine Anwendung bereit, selbst wenn ihre Pods ersetzt werden.
Machen Sie das Nginx-Deployment innerhalb des Clusters zugänglich:
sudo k3s kubectl expose deployment demo-nginx --type=ClusterIP --port=80
Prüfen Sie den Service:
sudo k3s kubectl get services
Sie sollten einen Service namens demo-nginx mit einer ClusterIP-Adresse und Port 80 sehen.
Der Typ ClusterIP macht die Anwendung innerhalb des Kubernetes-Clusters erreichbar. Nginx wird dadurch nicht direkt im öffentlichen Internet zugänglich.
Schritt 6: Ihre Nginx-Anwendung testen
Wir verwenden Kubernetes-Portweiterleitung, um die Anwendung ohne Konfiguration eines öffentlichen Load Balancers zu testen.
Führen Sie Folgendes aus:
sudo k3s kubectl port-forward service/demo-nginx 8080:80
Lassen Sie diese SSH-Sitzung geöffnet.
Der Befehl leitet Port 8080 der Loopback-Schnittstelle des Servers an Port 80 des Nginx-Service weiter.
Öffnen Sie eine zweite SSH-Verbindung zum selben Server und führen Sie Folgendes aus:
curl http://127.0.0.1:8080
Sie sollten HTML mit der standardmäßigen Nginx-Willkommensseite erhalten.
Geschafft! Sie haben Kubernetes mit K3s auf Ubuntu installiert, eine containerisierte Anwendung bereitgestellt und über einen Kubernetes-Service darauf zugegriffen.
Drücken Sie in der ersten Sitzung Ctrl+C, um die Portweiterleitung zu beenden.
Dieser Test überprüft nur den lokalen Zugriff. Um eine Anwendung öffentlich zugänglich zu machen, sind zusätzliche Konfigurationen für Netzwerk, DNS, TLS und Sicherheit erforderlich.
Häufige Probleme bei der K3s-Installation
Der K3s-Dienst startet nicht
Prüfen Sie die Dienstprotokolle:
sudo journalctl -u k3s -n 50
Achten Sie auf Berechtigungsprobleme, Netzwerkprobleme oder ausgefallene Komponenten.
Der Kubernetes-Node zeigt NotReady an
Prüfen Sie die Node-Details:
sudo k3s kubectl describe node
Untersuchen Sie die gemeldeten Zustände, die Auslastung der Systemressourcen und die Netzwerkverbindungen.
Der Nginx-Pod läuft nicht
Prüfen Sie den Pod:
sudo k3s kubectl get pods
Sehen Sie sich anschließend die Ereignisse des Deployments an:
sudo k3s kubectl describe deployment demo-nginx
Fehlgeschlagene Image-Downloads, unzureichende Ressourcen oder Probleme mit dem Cluster-Netzwerk können den Start von Pods verhindern.
Die Portweiterleitung funktioniert nicht
Stellen Sie sicher, dass der Nginx-Pod bereit ist und der Service existiert.
Beachten Sie, dass der Portweiterleitungsbefehl weiterlaufen muss, während Sie die Anwendung über die zweite SSH-Sitzung testen.
Benötigen Sie Docker, um K3s auszuführen?
Nein. K3s enthält containerd, eine Container-Laufzeitumgebung zur Ausführung von Kubernetes-Workloads.
Sie können kompatible Container-Images bereitstellen, darunter auch mit Docker erstellte Images, ohne Docker Engine auf dem K3s-Server zu installieren.
Wenn Containerisierung für Sie neu ist, erklärt unser Docker-Leitfaden für Einsteiger, wie Container und Images funktionieren.
Wie geht es weiter?
Ihr Single-Node-Cluster eignet sich zum Experimentieren mit Kubernetes-Konzepten, ist aber nicht automatisch eine produktionsreife, hochverfügbare Umgebung.
Bevor Sie geschäftskritische Anwendungen bereitstellen, sollten Sie Folgendes planen:
- Zugriffskontrolle für den Cluster und Sicherheitsupdates.
- Persistenten Speicher und Backup-Verfahren.
- Monitoring und Ressourcenlimits.
- Eine sichere Bereitstellung der Anwendung über HTTPS.
- Die Wiederherstellung nach einem Node- oder Serverausfall.
Denken Sie daran, dass ein Single-Node-Cluster weiterhin von einer einzigen physischen oder virtuellen Maschine abhängt. Kubernetes kann diesen einzelnen Ausfallpunkt nicht beseitigen.
Häufig gestellte Fragen
K3s ist eine zertifizierte Kubernetes-Distribution. Sie bietet Kubernetes-Funktionen, vereinfacht aber die Installation und reduziert den Verwaltungsaufwand.
Ja. Sie können K3s auf einem Linux-VPS mit ausreichend CPU-Leistung, RAM, Speicherplatz und administrativem Zugriff ausführen.
K3s kann im Produktivbetrieb eingesetzt werden. Die Zuverlässigkeit hängt jedoch von der Cluster-Architektur, der Kapazität, dem Netzwerk sowie der Sicherheits- und Backup-Konfiguration ab.
Ja. K3s stellt ein Deinstallationsskript bereit. Bei der Deinstallation können jedoch Cluster-Ressourcen und lokale Workload-Daten gelöscht werden. Sichern Sie wichtige Daten, bevor Sie K3s deinstallieren.
Fazit
Sie wissen nun, wie Sie Kubernetes auf Ubuntu installieren, indem Sie K3s verwenden, Ihren Single-Node-Cluster überprüfen und eine Nginx-Anwendung bereitstellen.
Mit K3s haben Sie eine funktionsfähige Single-Node-Kubernetes-Umgebung erstellt, Nginx bereitgestellt, die Anwendung über einen Service zugänglich gemacht und sie mithilfe der Portweiterleitung überprüft.
Mit wachsender Erfahrung können Sie sich nun näher mit Deployments, Skalierung, Konfiguration und Cluster-Verwaltung befassen.