kubectl apply
- Docker & Kubernetes kursu
- Orta seviye
- Ders 16/82
- 4 dk
kubectl apply ile YAML dosyası uygulamayı öğrenirsin.
kubectl apply
kubectl apply -f, dosyadaki nesneleri oluşturur ya da var olanları dosyaya uyacak şekilde günceller. Bir klasördeki tüm YAML'lar, hatta bir URL uygulanabilir:
kubectl apply -f web.yaml
kubectl apply -f k8s/ # klasördeki tüm dosyalar
kubectl apply -f https://example.com/kurulum.yamlBir YAML dosyasında birden çok nesne --- ayırıcısıyla yazılabilir.
Önce farkı gör
Değişikliği uygulamadan önce kubectl diff cluster'daki ile dosyadaki arasındaki farkı gösterir; --dry-run=server ise isteği doğrulatır ama kaydetmez. Bir nesnenin YAML iskeletini sıfırdan yazmak yerine --dry-run=client -o yaml ile üretebilirsin:
kubectl diff -f web.yaml
kubectl apply -f web.yaml --dry-run=server
kubectl create deployment web --image=nginx:1.27 --dry-run=client -o yaml > web.yamlUygulama Üret, kontrol et, uygula
Üç komut yaz: nginx:1.27 image'lı web deployment'ının YAML'ını oluşturmadan üretip web.yaml'a yaz; web.yaml için farkı göster; dosyayı uygula.
Başlangıç kodu
# buraya yazÖrnek çözüm
kubectl create deployment web --image=nginx:1.27 --dry-run=client -o yaml > web.yaml
kubectl diff -f web.yaml
kubectl apply -f web.yamlBeklenen çıktı
+ replicas: 1 + selector: + matchLabels: + app: web deployment.apps/web created
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 kubectl create -f ile kubectl apply -f arasındaki fark nedir?
- İkisi aynıdır
- apply yalnızca siler
- create klasör kabul eder, apply etmez
- create nesne varsa hata verir; apply günceller Doğru cevap
Açıklama: apply tekrar tekrar çalıştırılabilir (idempotent).
2 Değişikliği uygulamadan önce farkı göster.
kubectl ____ -f web.yaml
kubectl diff -f web.yaml
Açıklama: diff, apply'ın yapacağı değişikliği gösterir.
3 Eşleştir.
| Kavram | Anlamı |
|---|---|
apply -f |
Oluştur ya da güncelle |
create -f |
Yalnızca oluştur |
diff -f |
Farkı göster |
--dry-run=client -o yaml |
İskelet üret |