CodeBlanks Logo Icon CodeBlanks

ReplicaSet nedir?

ReplicaSet'in Pod kopyalarını sağladığını öğrenirsin.

ReplicaSet nedir?

ReplicaSet'in tek görevi, selector'ıyla eşleşen pod'lardan her an tam olarak replicas kadar bulunmasını sağlamaktır. Eksikse şablondan yenisini oluşturur, fazlaysa siler. Sürüm geçişi ve geri alma bilmez; bunları Deployment ekler.

$ kubectl get rs
NAME            DESIRED   CURRENT   READY   AGE
web-7c5b9f6d8   3         3         3       2h
web-6b4d8c7f5   0         0         0       3h     # eski sürüm, geri alma için

Bu yüzden ReplicaSet'ler doğrudan değil, Deployment aracılığıyla kullanılır.

Doğrudan ReplicaSet'in sorunu

Doğrudan oluşturulmuş bir ReplicaSet'in şablonundaki image'ı değiştirirsen mevcut pod'lar güncellenmez; yalnızca bundan sonra oluşacak pod'lar yeni image'ı alır. Deployment ise bu durumda yeni bir ReplicaSet açarak tüm pod'ları düzenli şekilde değiştirir.

kubectl set image rs/api api=api:2.0
kubectl get pods -l app=api -o jsonpath='{.items[*].spec.containers[0].image}'
# api:1.0 api:1.0 api:1.0   <- hâlâ eski

Uygulama ReplicaSet'leri incele

İki komut yaz: app=web etiketli ReplicaSet'leri listele; ardından web deployment'ının geçmişini göster.

Başlangıç kodu

terminal
# buraya yaz

Örnek çözüm

terminal
kubectl get rs -l app=web
kubectl rollout history deployment/web

Beklenen çıktı

NAME            DESIRED   CURRENT   READY   AGE
web-7c5b9f6d8   3         3         3       2h
web-6b4d8c7f5   0         0         0       3h
REVISION  CHANGE-CAUSE
1         <none>
2         nginx 1.27.3

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 DESIRED 0 olan eski ReplicaSet neden silinmez?

  • Silinemez
  • Hata sonucu kalmıştır
  • Yeni pod'lar oluşturur
  • Geri alma için Deployment geçmişinde saklanır Doğru cevap

Açıklama: revisionHistoryLimit kaç tanesinin saklanacağını belirler.

2 ReplicaSet'leri listele.

Soru
kubectl get ____
Cevap
kubectl get rs

Açıklama: rs replicasets'in kısaltmasıdır.

3 Eşleştir.

Kavram Anlamı
DESIRED İstenen kopya
CURRENT Var olan kopya
READY Hazır kopya
DESIRED 0 Eski sürüm

Orta seviye bölümündeki tüm dersler