Website-Suche

So installieren Sie MicroK8s auf Ubuntu 26.04


MicroK8s ist eine leichtgewichtige, produktionsreife Kubernetes-Distribution, die von Canonical entwickelt wurde und vollständig als Snap-Paket ausgeführt wird. Egal, ob Sie sich mit Container-Orchestrierung beschäftigen oder ein lokales Entwicklungs-Cluster einrichten, eine K8s-Installation auf Ubuntu 26.04 mit MicroK8s ist einer der schnellsten Wege zu einer voll funktionsfähigen Kubernetes-Umgebung. Diese Anleitung führt Sie durch jeden Schritt, von der Installation und Gruppenkonfiguration bis hin zur Aktivierung der Kern-Add-ons und der Überprüfung Ihres Clusters.

In diesem Tutorial lernen Sie:

  • Wie man MicroK8s auf Ubuntu 26.04 mit Snap installiert
  • Wie man Benutzergruppenberechtigungen für den kubectl-Zugriff konfiguriert
  • Wie man überprüft, dass der MicroK8s-Cluster korrekt läuft
  • So aktivieren Sie wichtige Add-Ons wie Speicher, Dashboard, Ingress und Registry
  • Wie man ein kubectl-Alias für eine vereinfachte Cluster-Verwaltung erstellt
  • So starten, stoppen und den Status von MicroK8s prüfen

Softwareanforderungen

Zusammenfassung des Artikels: Um eine k8s-Installation auf Ubuntu 26.04 durchzuführen, installieren Sie MicroK8s über Snap, fügen Sie Ihren Benutzer der microk8s-Gruppe hinzu und überprüfen Sie dann den Status des Clusters.

SchrittBefehl/Aktion
1. Installiere MicroK8s
sudo snap install microk8s --classic
2. Benutzer zur Gruppe hinzufügen
sudo usermod -aG microk8s $USER && newgrp microk8s
3. Warten Sie, bis der Cluster bereit ist
microk8s status --wait-ready
4. Knoten überprüfen
microk8s kubectl get nodes

Installiere MicroK8s auf Ubuntu 26.04

MicroK8s wird ausschließlich als Snap-Paket verteilt, und da snapd auf Ubuntu 26.04 vorinstalliert ist, können Sie die k8s-Installation auf Ubuntu 26.04 sofort ohne zusätzliche Vorbereitung starten. Das --classic-Flag gewährt MicroK8s den Systemzugriff, den es benötigt, um Container und Netzwerkverwaltung durchzuführen.

Installieren Sie MicroK8s mit dem folgenden Befehl:

$ sudo snap install microk8s --classic

Snap wird die neueste stabile MicroK8s-Version herunterladen und installieren. Der Vorgang dauert in der Regel ein oder zwei Minuten, abhängig von Ihrer Verbindungsgeschwindigkeit. Sobald der Befehl abgeschlossen ist, startet der MicroK8s-Dienst automatisch im Hintergrund.

Um eine bestimmte Kubernetes-Version anstelle der neuesten stabilen Version zu installieren, können Sie ein Channel-Flag übergeben:

$ sudo snap install microk8s --classic --channel=1.33/stable

Dies ist in Umgebungen nützlich, die aus Kompatibilitätsgründen eine feste Kubernetes-Version erfordern. Sie können verfügbare Kanäle auf der MicroK8s Snap-Store-Seite durchsuchen.

Benutzergruppen-Zugriff konfigurieren

Nach der Installation hat Ihr Benutzerkonto noch keine Berechtigung, ohne sudo mit MicroK8s zu interagieren. Um dies zu beheben, fügen Sie Ihren Benutzer der microk8s-Gruppe hinzu:

$ sudo usermod -aG microk8s $USER

Stellen Sie außerdem sicher, dass Ihr Benutzer Eigentümer des Verzeichnisses ~/.kube ist, falls es existiert:

$ mkdir -p ~/.kube
$ sudo chown -R $USER ~/.kube

Damit die Gruppenmitgliedschaft in Ihrer aktuellen Shell-Sitzung wirksam wird, verwenden Sie newgrp:

$ newgrp microk8s

WICHTIG
Unter Ubuntu 26.04 erfordert der Befehl newgrp das Paket util-linux-extra. Wenn newgrp nicht gefunden wird, installieren Sie es zuerst mit sudo apt install util-linux-extra und führen Sie dann newgrp microk8s erneut aus.

Alternativ können Sie sich abmelden und wieder anmelden, um die Gruppenänderung systemweit in allen Sitzungen anzuwenden.

Den Cluster überprüfen

Mit konfiguriertem Gruppen-Zugriff können Sie nun überprüfen, ob die k8s-Installation auf Ubuntu 26.04 erfolgreich abgeschlossen wurde. Warten Sie zunächst, bis MicroK8s seine interne Initialisierung abgeschlossen hat:

$ microk8s status --wait-ready

Dieser Befehl blockiert, bis MicroK8s meldet, dass der Cluster bereit ist. Sie werden eine Ausgabe sehen, die den aktuellen Status und alle aktivierten oder deaktivierten Add-ons auflistet. Ein gesunder Cluster meldet microk8s is running.

Bestätigen Sie als Nächstes, dass der Knoten sichtbar und im Status Bereit ist:

$ microk8s kubectl get nodes

Erwartete Ausgabe:

NAME       STATUS   ROLES    AGE   VERSION
hostname   Ready    <none>   2m    v1.35.x

Sie können auch alle laufenden System-Pods überprüfen, um zu bestätigen, dass die Kernkomponenten von Kubernetes funktionieren:

$ microk8s kubectl get pods -A

Core-Add-ons aktivieren

MicroK8s wird mit einer Bibliothek von Add-ons geliefert, die die Cluster-Funktionalität erweitern. Mehrere sind standardmäßig direkt nach der Installation aktiviert. Sie können dies jederzeit überprüfen, indem Sie Folgendes ausführen:

$ microk8s status

Die folgenden Add-ons sind bei einer frischen MicroK8s-Installation standardmäßig aktiviert:

Die unten aufgeführten Add-ons sind standardmäßig nicht aktiviert und werden für die meisten Arbeitslasten häufig benötigt. Aktivieren Sie sie nach Bedarf:

  1. Hostpath-Speicher aktivieren: Dieses Add-on stellt eine Standard-StorageClass bereit, die vom Host-Dateisystem unterstützt wird, was für Entwicklung und Einzelknoten-Bereitstellungen ausreichend ist:

    $ microk8s enable hostpath-storage

    Nach der Aktivierung steht eine StorageClass mit dem Namen microk8s-hostpath für PersistentVolumeClaim-Anfragen zur Verfügung.

    WARNUNG
    Hostpath-Speicher ist für Produktionsumgebungen nicht geeignet. Ein Hostpath-Volume kann über das im Volume-Claim-Manifest festgelegte Größenlimit hinaus wachsen. Verwenden Sie einen geeigneten Speicheranbieter für Produktions-Workloads.

  2. Aktivieren Sie das Kubernetes-Dashboard: Für eine browserbasierte Cluster-Übersicht aktivieren Sie das Dashboard-Add-on. Beachten Sie, dass durch die Aktivierung des Dashboards auch automatisch metrics-server aktiviert wird, wenn dieser nicht bereits aktiv ist:

    $ microk8s enable dashboard

    WICHTIG
    Der Bequemlichkeitsbefehl microk8s dashboard-proxy funktioniert derzeit nicht wegen einer defekten Helm-Chart-Repository-URL im enthaltenen Snap. Um auf das Dashboard zuzugreifen, verwenden Sie microk8s kubectl proxy und navigieren Sie manuell zur Dashboard-URL.

  3. Ingress aktivieren: Das Ingress-Add-on stellt einen NGINX-Ingress-Controller bereit, der für das Routing von externem HTTP- und HTTPS-Verkehr zu Diensten innerhalb des Clusters erforderlich ist:

    $ microk8s enable ingress

    Nach der Aktivierung können Sie in Ihren Manifests Ingress-Ressourcen definieren, um Dienste nach außen zu exponieren.

  4. Privates Registry aktivieren: Das Registry-Add-on startet ein privates Container-Image-Registry, das unter localhost:32000 zugänglich ist. Dies ist besonders in Entwicklungs-Workflows nützlich, um wiederholte Pulls von Docker Hub zu vermeiden:

    $ microk8s enable registry

    Sobald aktiviert, taggen und pushen Sie Images zu localhost:32000/your-image:tag und referenzieren Sie sie direkt in Ihren Pod-Manifests.

kubectl-Alias einrichten

MicroK8s stellt sein eigenes gebündeltes kubectl als microk8s kubectl bereit. Dieses Präfix bei jedem Befehl einzugeben ist umständlich, daher vereinfacht das Erstellen eines Shell-Alias die tägliche Clusterverwaltung. Fügen Sie den Alias zu Ihrer Shell-Konfigurationsdatei hinzu:

$ echo "alias kubectl='microk8s kubectl'" >> ~/.bashrc
$ source ~/.bashrc

Wenn Sie Zsh verwenden, zielen Sie stattdessen auf ~/.zshrc. Nachdem Sie die Datei geladen haben, können Sie standardmäßige kubectl-Befehle direkt ausführen:

$ kubectl get nodes
$ kubectl get pods -A

WICHTIG
Wenn Sie eine eigenständige kubectl-Binärdatei auf demselben System installiert haben, wird diese durch das Alias überschattet. Verwenden Sie die vollständige Form microk8s kubectl, wann immer Sie einen anderen Cluster ansprechen müssen.

Verwalten Sie den MicroK8s-Dienst

MicroK8s bietet eigene Start-, Stopp- und Inspektionsbefehle, anstatt direkt auf systemd zuzugreifen. Diese Befehle bieten eine bequeme Möglichkeit, den Lebenszyklus des Clusters zu verwalten:

Der Befehl microk8s inspect dient zur Fehlerbehebung – er sammelt diagnostische Informationen über den Cluster und erstellt ein Bericht-Tarball.

WICHTIG
Der Befehl microk8s inspect weist in der aktuellen Snap-Version (8596/v1.33.7) bekannte Probleme auf. Interne Skriptfunktionen fehlen, was zu unzuverlässigen Ausgaben führt. Zusätzlich sind die gemeldeten FEHLER für daemon-flanneld, daemon-etcd und daemon-apiserver-proxy bei einer Einzelknoteninstallation zu erwarten und weisen nicht auf ein Problem hin. Wenn Sie Cluster-Probleme diagnostizieren müssen, verwenden Sie stattdessen journalctl -u snap.microk8s.daemon-kubelite und microk8s kubectl get pods -A.

WICHTIG
Das Ausführen von microk8s reset entfernt alle bereitgestellten Workloads, Add-Ons und Konfigurationen aus dem Cluster. Verwenden Sie es nur, wenn Sie von vorne beginnen möchten.

Fazit

Sie haben erfolgreich eine MicroK8s-Kubernetes-Installation auf Ubuntu 26.04 abgeschlossen. Ihr Cluster läuft, Ihr Benutzer verfügt über die notwendigen Gruppenberechtigungen, und die Kern-Add-ons sind aktiviert und einsatzbereit. MicroK8s bietet eine eigenständige Kubernetes-Umgebung, die sich gut für lokale Entwicklung, CI-Pipelines und leichte Produktionsbereitstellungen auf Einzel- oder Multi-Node-Setups eignet. Als nächsten Schritt können Sie das Multi-Node-Clustering mit microk8s add-node erkunden oder eine Beispielanwendung bereitstellen, um die End-to-End-Workload-Planung in Ihrem neuen Cluster zu überprüfen.

Häufig gestellte Fragen

  1. Was ist der Unterschied zwischen MicroK8s und einem vollständigen Kubernetes-Cluster? MicroK8s ist eine einzelne Binärdatei, snap-verpackte Kubernetes-Distribution, die auf Einfachheit und geringen Ressourcenverbrauch ausgelegt ist. Es laufen alle Kubernetes-Komponenten innerhalb einer abgeschlossenen Snap-Umgebung und nicht als separate Systemdienste. Folglich ist es einfacher auf einer einzelnen Maschine zu installieren und zu verwalten, verwendet jedoch die gleiche Upstream-Kubernetes-API wie jeder Produktions-Cluster, wodurch es vollständig mit Standard-Tools und Manifests kompatibel ist.
  2. Warum benötige ich beim Installieren von MicroK8s die --classic-Option? Der --classic-Einschränkungsmodus gewährt MicroK8s Zugriff auf Systemressourcen, die außerhalb des strikten Snap-Sandbox-Bereichs liegen, wie Netzwerkschnittstellen, Kernel-Module und das Host-Dateisystem. Ohne diese Option kann MicroK8s nicht korrekt funktionieren, da Kubernetes eine tiefe Integration mit dem zugrunde liegenden Betriebssystem benötigt, um Container und Netzwerkverbindungen zu verwalten.
  3. Wie aktualisiere ich MicroK8s auf eine neuere Kubernetes-Version unter Ubuntu 26.04? Sie können MicroK8s auf einen neuen Kanal aktualisieren, indem Sie den Befehl snap refresh verwenden. Zum Beispiel, um auf den stabilen Kanal 1.34 zu wechseln: sudo snap refresh microk8s --channel=1.34/stable. MicroK8s führt ein Upgrade vor Ort durch und bewahrt vorhandene Arbeitslasten nach Möglichkeit. Es wird empfohlen, vor dem Upgrade wichtige Konfigurationen zu sichern.
  4. Was soll ich tun, wenn microk8s status anzeigt, dass der Cluster nicht läuft? Versuchen Sie zunächst, den Cluster manuell mit microk8s start zu starten. Wenn der Cluster immer noch nicht startet, führen Sie microk8s inspect aus, um Diagnoseinformationen zu sammeln. Häufige Ursachen sind unzureichende Systemressourcen (MicroK8s empfiehlt mindestens 2 CPU-Kerne und 4 GB RAM), Fehler im Snap-Dienst oder fehlende Kernel-Module. Überprüfen Sie den Inspektionsbericht und prüfen Sie journalctl -xe auf zusätzliche Systemfehler.
  5. Kann ich MicroK8s zusammen mit Docker auf Ubuntu 26.04 ausführen? Ja. MicroK8s verwendet seine eigene Container-Laufzeit (containerd), die unabhängig vom Docker-Daemon arbeitet. Beide können gleichzeitig auf demselben System ohne Konflikte existieren. Beachten Sie, dass das offizielle Docker-Repository Ubuntu 26.04 noch nicht unterstützt, daher sollte Docker bei Bedarf neben MicroK8s aus dem Ubuntu-Repository mit sudo apt install docker.io installiert werden.