Mit dem Cluster verbinden
Der Zugriff auf Ihr Cluster erfolgt über den offiziellen Kubernetes-Client kubectl und eine Konfigurationsdatei, die das Authentifizierungstoken für Ihr Cluster enthält.
Voraussetzungen
-
Ein Cluster im Status Running
HinweisSolange das Cluster noch bereitgestellt wird, steht die Konfigurationsdatei nicht zum Download bereit.
-
Installiertes
kubectl, siehe offizielle Installationsanleitung
1. kubectl installieren
Prüfen Sie eine vorhandene Installation:
kubectl version --client
kubectl unterstützt jeweils eine Minor-Version Abweichung nach oben und unten zur Cluster-Version. Bei einem Cluster mit Version 1.33 sind demnach die Client-Versionen 1.32 bis 1.34 geeignet.
2. Konfigurationsdatei herunterladen
Sie haben zwei Wege:
- Tab Overview – Im Abschnitt Configuration über Download Config File
- Actions-Menü – Oben rechts in der Cluster-Detailansicht über Download Config
Die Datei wird unter dem Namen <cluster-name>-kubeconfig.yaml abgelegt.
Die Konfigurationsdatei enthält ein Authentifizierungstoken mit weitreichenden Rechten an Ihrem Cluster. Behandeln Sie sie wie ein Passwort: nicht in Versionsverwaltungen einchecken und nicht über unverschlüsselte Kanäle weitergeben.
Setzen Sie die Dateirechte restriktiv:
chmod 600 /<pfad>/<cluster-name>-kubeconfig.yaml
3. kubectl auf die Datei verweisen
Ersetzen Sie <pfad-zum-verzeichnis> durch den Ablageort der Datei:
kubectl --kubeconfig=/<pfad-zum-verzeichnis>/<cluster-name>-kubeconfig.yaml get nodes
Damit der Pfad nicht bei jedem Aufruf angegeben werden muss, setzen Sie die Umgebungsvariable KUBECONFIG:
export KUBECONFIG=/<pfad-zum-verzeichnis>/<cluster-name>-kubeconfig.yaml
Für dauerhafte Verwendung ergänzen Sie diese Zeile in Ihrer Shell-Konfiguration, etwa ~/.bashrc oder ~/.zshrc.
Alternativ übernehmen Sie den Inhalt in die Standarddatei ~/.kube/config, wenn Sie mehrere Cluster parallel verwalten.
4. Verbindung prüfen
Die folgenden Befehle bestätigen, dass die Verbindung funktioniert:
| Befehl | Zweck |
|---|---|
kubectl config get-contexts | Listet Cluster-Name, Benutzer und Namespaces auf |
kubectl cluster-info | Zeigt die Adressen von Control Plane und Cluster-Diensten |
kubectl version | Zeigt die Version von Client und Server |
kubectl get nodes | Listet alle Nodes des Clusters auf |
kubectl help | Zeigt die verfügbaren Befehle an |
Bei kubectl get nodes sollten alle Nodes den Status Ready aufweisen:
NAME STATUS ROLES AGE VERSION
node-pool-1-abc123 Ready <none> 5m v1.33.1
node-pool-1-def456 Ready <none> 5m v1.33.1
Mehrere Cluster verwalten
Verwenden Sie mehrere Cluster, wechseln Sie zwischen den Kontexten:
# Verfügbare Kontexte auflisten
kubectl config get-contexts
# Kontext wechseln
kubectl config use-context <kontext-name>
# Standard-Namespace für den aktuellen Kontext setzen
kubectl config set-context --current --namespace=<namespace>
Fehlersuche
| Symptom | Mögliche Ursache |
|---|---|
The connection to the server ... was refused | Das Cluster ist noch nicht vollständig bereitgestellt; prüfen Sie den Status in der Übersicht |
error: You must be logged in to the server (Unauthorized) | Die Konfigurationsdatei ist veraltet – laden Sie sie erneut herunter |
Unable to connect to the server: dial tcp ... i/o timeout | Der Zugriff auf den API-Endpunkt wird blockiert – prüfen Sie Ihre Netzwerk- und Firewall-Konfiguration |
Nodes im Status NotReady | Siehe Node Remediation |
| Warnung zur Versionsabweichung | Ihre kubectl-Version weicht um mehr als eine Minor-Version ab |