Replica sayısı
- Docker & Kubernetes kursu
- Orta seviye
- Ders 27/82
- 4 dk
replicas alanı ile Pod kopya sayısını öğrenirsin.
Replica sayısı
Kopya sayısı iki yolla değişir: YAML'daki replicas'ı düzenleyip yeniden uygulamak (bildirimsel) ya da kubectl scale (buyurgan). Bildirimsel yol tercih edilir; aksi hâlde bir sonraki apply elle yaptığın değişikliği geri alır:
kubectl scale deployment web --replicas=5
# web.yaml içinde replicas: 5 yap ve:
kubectl apply -f web.yamlKopya sayısı 0 yapılarak uygulama silinmeden tamamen durdurulabilir.
Ölçeklemeyi izlemek
Ölçekleme sonrası kubectl rollout status tüm kopyalar hazır olana kadar bekler; CI/CD betiklerinde dağıtımın bittiğinden emin olmak için kullanılır:
$ kubectl scale deploy web --replicas=0
$ kubectl get deploy web
NAME READY UP-TO-DATE AVAILABLE
web 0/0 0 0
$ kubectl scale deploy web --replicas=3
$ kubectl rollout status deploy/web
deployment "web" successfully rolled outUygulama Durdur ve geri başlat
Üç komut yaz: web deployment'ını 0 kopyaya indir; ardından 4 kopyaya çıkar; dağıtımın bitmesini bekle.
Başlangıç kodu
# buraya yazÖrnek çözüm
kubectl scale deployment web --replicas=0
kubectl scale deployment web --replicas=4
kubectl rollout status deployment/webBeklenen çıktı
deployment.apps/web scaled deployment.apps/web scaled Waiting for deployment "web" rollout to finish: 2 of 4 updated replicas are available... deployment "web" successfully rolled out
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 kubectl scale ile 5 kopyaya çıkardın, ama web.yaml'da replicas: 3 yazıyor. kubectl apply -f web.yaml sonrası kaç kopya olur?
- 0
- 3 Doğru cevap
- 5
- 8
Açıklama: Dosya istenen durumdur; apply onu yeniden uygular.
2 Tüm kopyalar hazır olana kadar bekle.
kubectl rollout ____ deploy/web
kubectl rollout status deploy/web
Açıklama: rollout status dağıtım bitince çıkar.
3 Eşleştir.
| Kavram | Anlamı |
|---|---|
kubectl scale |
Buyurgan ölçekleme |
replicas: N + apply |
Bildirimsel ölçekleme |
--replicas=0 |
Silmeden durdur |
rollout status |
Bitene kadar bekle |