Metrics server
- Docker & Kubernetes kursu
- İleri seviye
- Ders 41/70
- 4 dk
Metrics server'ın HPA için gerekli olduğunu öğrenirsin.
Metrics server
HPA, CPU ve bellek ölçümlerini metrics-server'dan alır; metrics-server da her node'daki kubelet'ten toplar. Kurulu değilse HPA hiçbir şey yapamaz ve kubectl top çalışmaz:
$ kubectl top pods
error: Metrics API not available
minikube addons enable metrics-server
# ya da
kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
$ kubectl top pods -l app=api
NAME CPU(cores) MEMORY(bytes)
api-7f8c9d6b5-abcde 142m 180MiYük altında sınamak
HPA'yı görmek için yapay yük üretilir ve -w ile izlenir. Ölçüm toplama ve karar aralıkları nedeniyle tepki bir iki dakika sürebilir:
kubectl run yuk --image=busybox:1.36 --restart=Never -- \
sh -c "while true; do wget -q -O- http://api:8000/; done"
kubectl get hpa api -w
NAME TARGETS REPLICAS
api cpu: 38%/70% 2
api cpu: 156%/70% 2
api cpu: 156%/70% 5
api cpu: 64%/70% 5
kubectl delete pod yukUygulama Yük testi
Üç komut yaz: Minikube'de metrics-server eklentisini aç; app=api etiketli pod'ların kaynak kullanımını göster; api HPA'sını canlı izle.
Başlangıç kodu
# buraya yazÖrnek çözüm
minikube addons enable metrics-server
kubectl top pods -l app=api
kubectl get hpa api -wBeklenen çıktı
🌟 The 'metrics-server' addon is enabled NAME CPU(cores) MEMORY(bytes) api-7f8c9d6b5-abcde 312m 190Mi NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS api Deployment/api cpu: 156%/70% 2 10 2 api Deployment/api cpu: 156%/70% 2 10 5
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 İstek sayısı gibi uygulama ölçümlerine göre ölçeklemek için ne gerekir?
- Ölçeklenemez
- Prometheus Adapter ya da KEDA gibi bir özel ölçüm sağlayıcı Doğru cevap
- Yalnızca metrics-server
- Daha büyük node'lar
Açıklama: metrics-server yalnızca CPU ve bellek sağlar.
2 Pod'ların anlık kaynak kullanımını göster.
kubectl ____ pods -l app=api
kubectl top pods -l app=api
Açıklama: kubectl top metrics-server verisini okur.
3 Eşleştir.
| Kavram | Anlamı |
|---|---|
metrics-server |
CPU/bellek ölçümü |
Metrics API not available |
metrics-server yok |
KEDA |
Olay tabanlı ölçekleme |
hpa -w |
Ölçeklemeyi izle |