kubectl get ·
kubectl describe ·
kubectl apply ·
kubectl delete ·
kubectl logs ·
kubectl exec ·
kubectl config
Kubernetes ist die führende Plattform für die Orchestrierung von containerisierten Anwendungen. Diese Befehle sind essenziell für die tägliche Arbeit mit Pods, Deployments, Services und anderen Ressourcen.
kubectl get listet Kubernetes-Ressourcen wie Pods, Services, Deployments, Nodes, ConfigMaps und vieles mehr auf.
| Ressource | Abkürzung | Beschreibung |
|---|---|---|
| pods | po | Container-Pods |
| services | svc | Netzwerk-Services |
| deployments | deploy | Deployment-Controller |
| nodes | no | Cluster-Knoten |
| namespaces | ns | Namespaces |
| configmaps | cm | Konfigurationsdaten |
| secrets | - | Geheime Daten |
| ingress | ing | Ingress-Ressourcen |
| persistentvolumes | pv | Persistente Volumes |
| Option | Beschreibung |
|---|---|
| -n, --namespace | Namespace angeben (Standard: default) |
| -o wide | Zusätzliche Informationen anzeigen |
| -o yaml | Ausgabe als YAML |
| -o json | Ausgabe als JSON |
| -w, --watch | Änderungen live verfolgen |
| --selector | Nach Labels filtern |
kubectl get all -n mynamespace zeigt die wichtigsten Ressourcen eines Namespaces auf einen Blick. Verwenden Sie --selector für gezielte Abfragen.
kubectl describe zeigt detaillierte Informationen zu einer bestimmten Ressource – inklusive Events, Labels, Selektoren und Status.
kubectl describe ist das erste Werkzeug zur Fehlersuche. Die Events-Sektion zeigt oft die Ursache von Problemen (z.B. ImagePullBackOff, OOMKilled).
kubectl apply erstellt oder aktualisiert Kubernetes-Ressourcen aus YAML- oder JSON-Manifesten. Es ist der deklarative Standard zur Verwaltung von Ressourcen.
kubectl apply verwendet einen "Last Applied"-Annotation, um Änderungen zu verfolgen. Im Gegensatz zu kubectl create kann es Ressourcen aktualisieren, ohne sie zu löschen.
kubectl delete löscht Kubernetes-Ressourcen – entweder nach Name, aus einer Datei oder mit Selektoren.
kubectl delete --dry-run=client, um zu prüfen, was gelöscht wird.
kubectl logs zeigt die Logs eines Pod-Containers an. Bei Pods mit mehreren Containern muss der Container mit -c angegeben werden.
kubectl logs -f pod funktioniert wie tail -f. Mit --previous können Sie Logs des letzten, neu gestarteten Containers anzeigen – nützlich bei CrashLoops.
kubectl exec führt einen Befehl in einem laufenden Container aus. Mit -it öffnen Sie eine interaktive Shell.
kubectl exec -it pod -- /bin/bash ist der Standard-Weg, um in einen laufenden Container zu gelangen. Für Alpine-Images verwenden Sie /bin/sh statt /bin/bash.
kubectl config verwaltet die kubectl-Konfiguration für den Zugriff auf verschiedene Kubernetes-Cluster, Kontexte und Benutzer.
kubectl config set-context --current --namespace=myns, um den Standard-Namespace für den aktuellen Kontext zu ändern – das spart Tipparbeit.
kubectl get
kubectl describe
kubectl apply
kubectl delete
kubectl logs
kubectl exec
kubectl config
kubectl get pods -n namespace ·
kubectl apply -f deployment.yaml ·
kubectl logs -f pod