Beispiel-Dokumentation: Resource QoS
Ziel
Die QoS-Klassen BestEffort, Burstable und Guaranteed anhand konkreter Pods erkennen.
Was gemacht wird
Drei Pods werden mit unterschiedlichen Ressourcenangaben erstellt. Kubernetes leitet daraus die jeweilige QoS-Klasse ab.
Typische Kommandos
kubectl apply -f manifests/
kubectl get pods -n qos-lab
kubectl get pod besteffort-pod -n qos-lab -o jsonpath='{.status.qosClass}{"\n"}'
kubectl get pod burstable-pod -n qos-lab -o jsonpath='{.status.qosClass}{"\n"}'
kubectl get pod guaranteed-pod -n qos-lab -o jsonpath='{.status.qosClass}{"\n"}'
Erfolg prüfen
besteffort-podistBestEffort.burstable-podistBurstable.guaranteed-podistGuaranteed.
Typische Fehler
- Nur CPU wird gesetzt, Memory aber vergessen.
- Requests und Limits werden als optionaler Stil statt Scheduling-Vertrag behandelt.
- QoS wird mit PriorityClass verwechselt.